Skip to content

This API consists of the user being able to withdraw their money from the wallet and transfer it to their bank.

Notifications You must be signed in to change notification settings

daylanbueno/wallet-bank-transfer-api

Repository files navigation

wallet-bank-transfer-api

This API consists of the user being able to withdraw their money from the wallet and transfer it to their bank.

To do this, we have to use the provided APIs (see the attached mocks) which include:

  • Wallet transactions API that is used to update the wallet balance through top ups and withdraws operations. (The mock will not actually update the balance because it’s a mock)
  • Payments is an external provider API that is used to execute the transfer between Ontop’s bank account and the users’ bank account, but it doesn’t update the wallet balance.Ontop’s bank account will always be the same but different depending on the environment.
  • Wallet balance API that is used to fetch the user’s balance. (The mock will always return the same balance)

The transaction must have:

  • A fee of 10% is applied when the transaction is carried out.
  • A status (we leave the decision of which statuses to use up to you).

This project was developed using hexagonal architecture.

image

Technologies

  • Java 17
  • Spring boot 3.1.5
  • Maven
  • Lombok
  • ModelMapper
  • Postgres
  • H2 database
  • JUnit
  • Git
  • Docker
  • docker-compose

Requirements for execution

  • Java

  • Docker

  • docker-compose

    How to run

    Once you have cloned the project

    • install mvn install
    • docker-compose docker-compose-up
    • import collections import collections

To use Postman, you should configure the baseUrl environment variable to http://localhost:8080.

call API

how works

About

This API consists of the user being able to withdraw their money from the wallet and transfer it to their bank.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published