python-payment-gateway

💳 Payment Gateway API

Python FastAPI Uvicorn Pydantic

Este microsserviço simula um Gateway de Pagamento de alta disponibilidade e baixo acoplamento. Desenvolvido sob a ótica da Engenharia de Software moderna e inspirado nos desafios arquiteturais do ecossistema , o projeto utiliza FastAPI para garantir processamento assíncrono, validação estrita de contratos de dados e escalabilidade horizontal.


🏗️ Arquitetura e Decisões de Design

A aplicação foi estruturada focando em Separação de Preocupações (SoC) e performance de I/O:


🚀 Funcionalidades

Core Financeiro

Infraestrutura e Segurança (Roadmap)


📂 Contrato de API (Endpoints)

A documentação interativa completa (OpenAPI/Swagger) está disponível em /docs ao rodar a aplicação.

Método Endpoint Descrição Técnica Status Esperado
POST /processar Ingestão de payload, validação de regras e efetivação do pagamento. 201 Created
GET /historico Recupera a coleção completa do log de operações transacionais. 200 OK
GET /transacao/{id} Busca granular por chave primária (UUID) de uma transação específica. 200 OK / 404 Not Found

⚙️ Guia de Desenvolvimento

Pré-requisitos

Setup do Ambiente

  1. Clonagem do Repositório:
    git clone [https://github.com/MarcosSoftwareEngineering/python-payment-gateway.git](https://github.com/MarcosSoftwareEngineering/python-payment-gateway.git)
    cd python-payment-gateway
    
  2. Isolamento de Ambiente (Virtualenv):
    python -m venv venv
       
    # Ativação (Windows)
    .\venv\Scripts\activate
       
    # Ativação (Linux/macOS)
    source venv/bin/activate
    
  3. Instalação de Dependências:
    pip install fastapi uvicorn pydantic
    

Execução Local

Para subir o servidor ASGI com hot-reload ativo (ideal para desenvolvimento):

uvicorn main:app --reload

Acesse a interface visual para testes de chamadas HTTP: 👉 http://127.0.0.1:8000/docs


👨‍💻 Autor

Marcos Vinicius Estudante de Engenharia de Software | Desenvolvedor full stack

GitHub Portfolio