Este projeto foi desenvolvido como parte de um desafio para uma vaga de desenvolvedor backend na PicPay. O PicPay Simplificado é uma plataforma de pagamentos que permite o depósito e a realização de transferências de dinheiro entre usuários e lojistas. O sistema foi implementado para seguir as diretrizes e requisitos fornecidos, e simula operações de pagamento e notificações.
-
Transferências: Usuários podem enviar dinheiro para outros usuários e lojistas. Lojistas apenas recebem transferências.
-
Validação de Saldo: Verificação do saldo do usuário antes da transferência.
-
Consultas Externas: Simulação de consultas a serviços autorizadores externos para validar transferências.
-
Notificações: Envio de notificações via e-mail ou SMS após a transferência utilizando um serviço de terceiros.
-
Transações: Garantia de consistência com rollback em caso de falhas durante as transferências.
-
Consultas externas:
- Autorizador: Mock de Autorizador (GET)
- Notificações: Mock de Notificações (POST)
- Java (Linguagem de programação)
- Spring Boot (Framework para construção de aplicações Java)
- Maven (Gerenciamento de dependências e construção)
- H2 Database (Banco de dados em memória para desenvolvimento)
Para rodar o projeto localmente, siga os seguintes passos:
- Clone este repositório:
git clone https://github.com/seu-usuario/picpay-simplificado.git
- Acesse a pasta do projeto:
cd picpay-simplificado
- Compile o projeto e execute o aplicativo:
mvn clean install mvn spring-boot:run
- O aplicativo estará disponível em http://localhost:8080.