Skip to main content
POST
/
transactions
curl -X POST https://api.thalbank.com/transactions \
  -H "x-api-key: sua_api_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
  -d '{
    "amount": 5000,
    "method": "PIX",
    "customer": {
      "name": "Maria Silva",
      "email": "[email protected]",
      "phone": "11999999999",
      "documentType": "CPF",
      "document": "12345678901"
    },
    "items": [
      {
        "title": "Assinatura Mensal",
        "amount": 5000,
        "quantity": 1,
        "tangible": false
      }
    ],
    "metadata": { "planId": "premium" }
  }'
{
  "status": true,
  "data": {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "amount": 5000,
    "method": "PIX",
    "status": "PENDING",
    "pixQrCode": "00020126580014br.gov.bcb.pix...",
    "pixQrCodeBase64": "data:image/png;base64,iVBORw0KGgo...",
    "expiresAt": "2026-03-10T01:00:00.000Z",
    "customer": {
      "name": "Maria Silva",
      "email": "[email protected]"
    },
    "metadata": { "planId": "premium" },
    "createdAt": "2026-03-10T00:00:00.000Z"
  }
}

Descricao

Cria uma transacao de pagamento. Para PIX, retorna QR Code. Para Boleto, retorna codigo de barras. Para Cartao, processa a cobranca imediatamente.
Requer header Idempotency-Key com UUID v4 unico. Veja o guia de idempotencia.

Request

Headers

Idempotency-Key
string
required
UUID v4 unico para garantir idempotencia. Exemplo: 550e8400-e29b-41d4-a716-446655440000

Body

amount
integer
required
Valor total em centavos. Minimo: 100 (R1,00).Exemplo:R 1,00). Exemplo: R 15,00 = 1500
method
string
required
Metodo de pagamento. Valores: PIX, BOLETO, CREDIT_CARD
customer
object
required
Dados do comprador.
items
array
required
Lista de itens da transacao.
card
object
Dados do cartao. Obrigatorio quando method = CREDIT_CARD.
installments
integer
Numero de parcelas (1-12). Obrigatorio para CREDIT_CARD.
metadata
object
JSON com dados customizados (max 10 chaves). Exemplo: {"orderId": "ORD-001"}
description
string
Descricao da transacao.
postbackUrl
string
URL alternativa para receber webhook desta transacao (HTTPS).
expiration
integer
Tempo de expiracao em segundos (para PIX e Boleto).
curl -X POST https://api.thalbank.com/transactions \
  -H "x-api-key: sua_api_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
  -d '{
    "amount": 5000,
    "method": "PIX",
    "customer": {
      "name": "Maria Silva",
      "email": "[email protected]",
      "phone": "11999999999",
      "documentType": "CPF",
      "document": "12345678901"
    },
    "items": [
      {
        "title": "Assinatura Mensal",
        "amount": 5000,
        "quantity": 1,
        "tangible": false
      }
    ],
    "metadata": { "planId": "premium" }
  }'
{
  "status": true,
  "data": {
    "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "amount": 5000,
    "method": "PIX",
    "status": "PENDING",
    "pixQrCode": "00020126580014br.gov.bcb.pix...",
    "pixQrCodeBase64": "data:image/png;base64,iVBORw0KGgo...",
    "expiresAt": "2026-03-10T01:00:00.000Z",
    "customer": {
      "name": "Maria Silva",
      "email": "[email protected]"
    },
    "metadata": { "planId": "premium" },
    "createdAt": "2026-03-10T00:00:00.000Z"
  }
}