Executando

Desenvolvimento de Microserviço de Pagamentos em Java com Integração ao Gateway de Pagamentos

Publicado em 15 de Outubro de 2024 dias na TI e Programação

Sobre este projeto

Aberto

Desenvolver um microserviço responsável por gerenciar pagamentos, integrando-se com gateway de pagamento parceiro através de APIs. O microserviço deve contemplar as seguintes entidades e funcionalidades:
    - Sellers: Implementado como "carteira digital" dentro da aplicação.
    - Products: Itens vinculados a um seller, que podem ou não ter valor definido, e que estarão disponíveis para pedidos de pagamento.
    - Customers: Clientes que se cadastrarão para efetuar pagamentos.
    - Tokens: Representações seguras dos meios de pagamento cadastrados pelos clientes (por exemplo, cartões de crédito).
    - Orders: Pedidos de pagamento gerados pelos customers para os products.
    - Transactions: Movimentações financeiras decorrentes do processamento dos orders.

Implementação das Entidades:
    - Modelar e implementar as entidades mencionadas acima no microserviço.
    - Garantir relacionamentos adequados entre as entidades (por exemplo, um Product pertence a um Seller).
    - Desenvolver endpoints para operações CRUD (Create, Read, Update, Delete) das entidades.
    - Seguir boas práticas de design de APIs RESTful.
    - Integrar o microserviço com o gateway de pagamento parceiro utilizando as APIs fornecidas.
    - Implementar funcionalidades para processar pagamentos, gerenciar tokens e lidar com callbacks/webhooks.
    - Implementar segurança nas APIs utilizando JWT.
    - Garantir que apenas usuários autenticados e autorizados possam acessar os recursos apropriados.
    - Documentar todas as APIs utilizando Swagger/OpenAPI para facilitar o entendimento e consumo dos serviços.
    - Escrever testes unitários abrangentes para as principais funcionalidades e serviços.
    - Utilizar frameworks como JUnit ou Mockito.
    - Seguir princípios SOLID e padrões de projeto quando aplicável.
    - Escrever código limpo, legível e bem estruturado.
    - Documentar o código e fornecer comentários quando necessário.

Tecnologias:
    - Linguagem: Java
    - Framework: Spring Boot
    - Banco de Dados: MongoDB
    - Controle de Versão: Git
    - Integração Contínua/Entrega Contínua (CI/CD): GitHub Actions (pipeline já existente)

Contexto Geral do Projeto

Estamos em busca de um desenvolvedor Java para criar um microserviço de pagamentos (payment-ms) que fará parte do módulo de gestão financeira do nosso SaaS voltado para igrejas evangélicas.

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Bug ou alteração pequena
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho especificações
Disponibilidade requerida Conforme necessário
Integrações de API Payment Processor (Paypal, Stripe, etc)
Funções necessárias Desenvolvedor

Prazo de Entrega: 15 de Novembro de 2024

Habilidades necessárias