Skip to content

WenLopes/bank-transactions-api

Repository files navigation

Bank transactions Api

API execução de transações bancárias

Tecnologias utilizadas no projeto

Instalação

Após baixar o projeto, crie o arquivo .env com base no .env.example.

Obs: Se desejar alterar a porta padrão da API, certifique-se de usar a mesma porta nas collections do postman (se caso desejar utiliza-la).

cp .env.example .env

Suba a aplicação, executando o comando

make up

Rotas

No diretório docs, adicionei a collection para importação no API client Postman.

Reset

(POST) localhost:{API_PORT}/reset

curl --location --request POST 'localhost:{API_PORT}/reset' \
--data-raw ''

Balance

(GET) localhost:{API_PORT}/balance?account_id=18

curl --location --request GET 'localhost:{API_PORT}/balance?account_id=18' \
--data-raw ''

Event: Deposit

(POST) localhost:{API_PORT}/event

curl --location --request POST 'localhost:{API_PORT}/event' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "deposit",
    "destination": "18",
    "amount": 1
}'

Event: Withdraw

(POST) localhost:{API_PORT}/event

curl --location --request POST 'localhost:{API_PORT}/event' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "withdraw",
    "origin": "18",
    "amount": 800
}'

Event: Transfer

(POST) localhost:{API_PORT}/event

curl --location --request POST 'localhost:{API_PORT}/event' \
--header 'Content-Type: application/json' \
--data-raw '{
    "type": "transfer",
    "origin": "17",
    "amount": 50,
    "destination": "18"
}'

Próximos passos

Considerando que o projeto evoluisse para notas etapas, observabilidade e documentação certamente seriam pontos primordiais para o bom funcionamento da aplicação. Sendo assim, seguem abaixo sugestões de ferramentas que em meu ponto de vista, atenderiam essa necessidade.

Referências

About

Api (golang) for bank transactions

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages