2 KiB
2 KiB
Backend API - Documentação Técnica
Visão Geral
API de alta performance em Go para o marketplace SaveInMed. Implementa Clean Architecture com foco em operações críticas de negócio.
Arquitetura
cmd/api/ → Ponto de entrada
internal/
├── config/ → Configurações e env vars
├── domain/ → Entidades e regras de negócio
├── http/
│ ├── handler/ → HTTP handlers (controllers)
│ └── middleware/→ Auth JWT, CORS, logging
├── payments/ → Gateways: Stripe, MercadoPago, Mock
├── repository/ → Camada de persistência (PostgreSQL)
├── server/ → Setup do servidor HTTP
└── usecase/ → Casos de uso (serviços)
Taxa Invisível do Marketplace
O sistema implementa uma taxa invisível de 12% para compradores:
Vendedor cadastra: R$ 10,00
Comprador vê: R$ 11,20 (+12%)
Marketplace recebe: R$ 1,20
Vendedor recebe: R$ 10,00
Configuração: BUYER_FEE_RATE=0.12
Gateways de Pagamento
| Gateway | Arquivo | Descrição |
|---|---|---|
| Stripe | stripe.go |
Cartões internacionais |
| MercadoPago | mercadopago.go |
Pix, boleto, cartões |
| Mock | mock.go |
Testes (auto-aprova) |
Endpoints Principais
Autenticação
POST /api/v1/auth/register- CadastroPOST /api/v1/auth/login- LoginPOST /api/v1/auth/refresh-token- Renovar token
Produtos
GET /api/v1/products- Listar (12% inflado para buyers)GET /api/v1/products/search- Busca avançadaPOST /api/v1/products- Cadastrar
Pedidos
GET /api/v1/orders- ListarPOST /api/v1/orders- Criar
Variáveis de Ambiente
DATABASE_URL=postgres://...
JWT_SECRET=your-secret
BUYER_FEE_RATE=0.12
MARKETPLACE_COMMISSION=2.5
BACKEND_PORT=8080
Executar
cd backend
go run ./cmd/api
Testes
go test ./... -cover
Para matriz completa (com/sem banco e Playwright), veja: docs/TESTES.md