API
One POST. One payment.
REST, JSON, API Key authentication. Sandbox available with no prior approval.
Authentication
Every request uses an API Key in the Authorization: Bearer header — sk_test_... in sandbox, sk_live_... in production.
bash
curl https://api.tamino.com.br/v1/payments \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json"Create payment
A payment starts as pending and changes status as the provider confirms.
Request
POST /v1/payments
{
"amount": 15000,
"currency": "BRL",
"method": "pix"
}Response
200 OK
{
"id": "pay_xxxxxxxxx",
"status": "pending"
}Get payment
The same resource, queried anytime by its id.
json
GET /v1/payments/pay_xxxxxxxxx
{
"id": "pay_xxxxxxxxx",
"status": "approved",
"amount": 15000,
"currency": "BRL",
"method": "pix"
}Idempotency
Send Idempotency-Key on any mutable request — resending with the same key returns the already computed response, never duplicates the operation.
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" }'Errors
Every error follows the same envelope, with a correlationId to trace with support.
json
{
"error": {
"code": "VALIDATION_ERROR",
"message": "amount must be a positive integer.",
"correlationId": "c7a1..."
}
}