API backend que simula um sistema bancário simplificado com autenticação de usuários, controle de saldo e registro de transações financeiras.
- Cadastro de usuário com criação automática de conta
- Autenticação via JWT
- Consulta de saldo
- Transferência entre contas (cash in / cash out)
- Histórico de transações
- Busca de transações por data
- Validação para impedir saldo negativo
A documentação completa com exemplos de requisição e resposta está disponível:
👉 Postman
Clone o repositório: git clone
Instale dependências: npm install
Crie um arquivo .env na raiz:
DB_USERNAME=
DB_DATABASE=
DB_HOSTNAME=
DB_PASSWORD=
DB_PORT=5432
JWT_KEY=Crie as tabelas utilizando o arquivo: queries.sql
Inicie o servidor: npm run dev
O projeto foi estruturado em camadas:
- Controller → entrada e saída HTTP
- Business → regras de negócio
- Data → acesso ao banco
- Services → autenticação e criptografia
- Error → tratamento de erros
- Testes automatizados
- Paginação de transações
- Deploy em cloud
- Logs estruturados
- Versionamento da API