API
Um POST. Um pagamento.
REST, JSON, autenticação por API Key. Sandbox liberado sem aprovação prévia.
Autenticação
Toda requisição usa uma API Key no header Authorization: Bearer — sk_test_... em sandbox, sk_live_... em produção.
bash
curl https://api.tamino.com.br/v1/payments \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json"Criar pagamento
Um pagamento nasce pending e muda de status conforme o provedor confirma.
Request
POST /v1/payments
{
"amount": 15000,
"currency": "BRL",
"method": "pix"
}Response
200 OK
{
"id": "pay_xxxxxxxxx",
"status": "pending"
}Consultar pagamento
O mesmo recurso, consultado a qualquer momento pelo id.
json
GET /v1/payments/pay_xxxxxxxxx
{
"id": "pay_xxxxxxxxx",
"status": "approved",
"amount": 15000,
"currency": "BRL",
"method": "pix"
}Idempotência
Envie Idempotency-Key em qualquer requisição mutável — reenviar com a mesma chave devolve a resposta já computada, nunca duplica a operação.
bash
curl -X POST https://api.tamino.com.br/v1/payments \
-H "Authorization: Bearer sk_test_..." \
-H "Idempotency-Key: 8f14e45f-ceea-..." \
-d '{ "amount": 15000, "currency": "BRL", "method": "pix" }'Erros
Todo erro segue o mesmo envelope, com um correlationId pra rastrear no suporte.
json
{
"error": {
"code": "VALIDATION_ERROR",
"message": "amount must be a positive integer.",
"correlationId": "c7a1..."
}
}