Primeiros passos em 3 minutos

3 min de leitura

Do zero ao primeiro pagamento aprovado. Siga os 3 passos abaixo — sem configuração de gateway real.

Pré-requisito: Docker instalado. Nenhuma credencial de Stripe/MercadoPago/PayPal necessária — usaremos o gateway MOCK.

Passo 1 — Subir o servidor

git clone https://github.com/vitinh0z/orquestraio.git cd orquestraio docker-compose up -d # API disponível em: http://localhost:8080 # Swagger UI: http://localhost:8080/swagger-ui/index.html # API key de dev: orquestraio-livre-123

Passo 2 — Fazer o primeiro pagamento

curl -X POST http://localhost:8080/v1/payments \ -H "x-api-key: orquestraio-livre-123" \ -H "Content-Type: application/json" \ -d '{ "idempotencyKey": "primeiro-pagamento-001", "amount": 50.00, "currency": "BRL", "paymentMethodRequest": { "type": "pix", "token": null }, "customer": { "id": "u1", "email": "[email protected]", "document": "000.000.000-00" }, "metadata": { "gateway": "MOCK" } }'
const res = await fetch('http://localhost:8080/v1/payments', { method: 'POST', headers: { 'x-api-key': 'orquestraio-livre-123', 'Content-Type': 'application/json' }, body: JSON.stringify({ idempotencyKey: 'primeiro-pagamento-001', amount: 50.00, currency: 'BRL', paymentMethodRequest: { type: 'pix', token: null }, customer: { id: 'u1', email: '[email protected]', document: '000.000.000-00' }, metadata: { gateway: 'MOCK' } }) }); const data = await res.json(); console.log(data.status); // "APPROVED"
import requests, uuid res = requests.post( "http://localhost:8080/v1/payments", headers={"x-api-key": "orquestraio-livre-123"}, json={ "idempotencyKey": str(uuid.uuid4()), "amount": 50.00, "currency": "BRL", "paymentMethodRequest": { "type": "pix", "token": None }, "customer": { "id": "u1", "email": "[email protected]" }, "metadata": { "gateway": "MOCK" } } ) print(res.json()["status"]) # "APPROVED"

Passo 3 — Interpretar a resposta

{ "paymentId": "550e8400-e29b-41d4-a716-446655440000", "status": "APPROVED", "amount": 50.00, "currency": "BRL", "details": { "provider": "MOCK" }, "createdAt": "2026-06-06T15:30:00Z" }
Próximo passo: Configure um webhook para receber notificações quando o status mudar. Ver seção Webhooks.