Este repositório contém a minha solução para o desafio de back-end do PicPay, um dos maiores players do setor de pagamentos no mundo. Neste desafio, desenvolvi uma aplicação que atende aos requisitos especificados para transferência de dinheiro entre usuários comuns e lojistas. A seguir, você encontrará informações sobre a estrutura da aplicação, os requisitos atendidos e as escolhas de tecnologia feitas durante o desenvolvimento.
A aplicação desenvolvida para o desafio do PicPay é uma API RESTful que permite a transferência de dinheiro entre dois tipos de usuários: comuns e lojistas. Ambos os tipos de usuários têm informações essenciais como Nome Completo, CPF, e-mail e senha. O sistema garante que CPF/CNPJ e e-mails sejam únicos, evitando múltiplos cadastros com os mesmos dados.
- Cadastro de usuários comuns e lojistas.
- Transferência de dinheiro entre usuários comuns e lojistas.
- Validação de saldo antes da transferência.
- Consulta a um serviço autorizador externo antes de finalizar a transferência.
- Tratamento de notificações de pagamento enviado por um serviço de terceiros (simulado).
- Requisitos Atendidos
- Cadastro de usuários com validação de CPF/CNPJ e e-mail únicos.
- Transferência de dinheiro entre usuários, com validação de saldo.
- Consulta a um serviço autorizador externo antes de finalizar a transferência. (O serviço está offine, por esse motivo ele sempre vai retornar TRUE)
Neste projeto, optei por utilizar Java com Spring Boot Para praticar e desenvolver minhas habilidades na linguagem e framework.
A estrutura da aplicação segue uma arquitetura MVC, que permite um desenvolvimento organizado e escalável. O código segue padrões de qualidade e boas práticas, como PSRs, design patterns e SOLID.
- Certifica-se de ter o Java instalado na maquina.
- Clone o meu repositorio
- execute o projeto
Se você tiver alguma dúvida ou precisar de mais informações sobre esta solução, sinta-se à vontade para entrar em contato comigo pelos links abaixo.