Skip to main content

Visão Geral

As Cobranças representam transações de pagamento únicas. São o núcleo do processamento de pagamentos da plataforma, suportando os métodos:
MétodoDescrição
CreditCardCartão de crédito (parcelado ou à vista)
PIXPagamento instantâneo via PIX
PayPalRedirecionamento para checkout do PayPal

Header obrigatório

Todas as rotas de cobranças exigem o header account com o código da conta:
account: acc_abc123xyz

Formato de resposta padrão

A maioria das rotas retorna respostas no formato padrão da API (exceto a listagem paginada):
{
  "mensagem": "Mensagem descritiva",
  "erro": false,
  "mensagenserro": [],
  "codigoretorno": 200,
  "id": "00000000-0000-0000-0000-000000000000",
  "data": { ... }
}
CampoTipoDescrição
mensagemstringMensagem descritiva da operação
errobooleanfalse em caso de sucesso, true em caso de erro
mensagenserroarrayLista de mensagens de erro (vazia em caso de sucesso)
codigoretornointegerCódigo HTTP de retorno
idstringID do recurso criado/afetado ou GUID vazio
datamixedDados retornados (objeto, array ou vazio)

Fluxo de uma cobrança

POST /v1/charge → HTTP 201

    ├─ Validação de dados (422 se inválido)
    ├─ Verificação de fraude (bloqueio de IP/email/CPF/BIN)
    ├─ Rate limiting por cliente

    ├─ [PIX] → QR Code gerado → aguardar pagamento (status: Pending)
    ├─ [PayPal] → URL de redirecionamento gerada (status: Pending)
    └─ [CreditCard] → Autorização no gateway

              ├─ Approved → Pedido aprovado (HTTP 201)
              ├─ Declined → Pedido recusado (HTTP 400)
              └─ Challenged → Verificação adicional requerida (HTTP 202)

Campos do cliente

CampoTipoReq.Descrição
client.namestringSimNome completo do cliente (máx. 255)
client.emailstringSimE-mail do cliente
client.phone.ddistringSimCódigo do país (DDI)
client.phone.dddstringSimCódigo de área (DDD)
client.phone.numberstringSimNúmero do telefone
client.document.typestringNãoTipo: CPF, CNPJ, passport, undefined
client.document.numberstringNãoNúmero do documento
client.genderstringNãoMale, Female, Other, Undefined
client.birthdatedateNãoData de nascimento (YYYY-MM-DD)
client.address.*objectNão*Endereço (* todos os campos obrigatórios entre si)

Campos do pagamento

CampoTipoReq.Descrição
payment.typestringSimCreditCard, PIX ou PayPal
payment.pix_expirationintegerNãoExpiração em segundos (mín. 1)
payment.card.numberstringCreditCardNúmero do cartão (mín. 13 dígitos)
payment.card.namestringCreditCardNome no cartão
payment.card.monthstringCreditCardMês de validade (MM)
payment.card.yearstringCreditCardAno de validade (YY)
payment.card.security_codestringCreditCardCVV
payment.card.installmentsintegerCreditCardNúmero de parcelas
payment.card.card_idstringNãoID de cartão salvo (substitui demais)
payment.card.soft_descriptorstringNãoTexto na fatura (3-50 chars)
payment.conveniencefeenumberNãoTaxa de conveniência (%)
payment.conveniencefeeamountnumberNãoTaxa de conveniência (valor fixo)

Campos adicionais

CampoTipoReq.Descrição
typestringNãoPurchaseOrder, PlannedPurchaseOrder, GeneralPurchaseOrder, ContractualPurchaseOrder
cycletypestringNãoOnly, MonthlyRecurring, QuarterlyRecurring, SemiannualRecurring, AnnualRecurring
payment_sourceobjectNãoDados de origem do pagamento (usado para PayPal, no nível raiz do body)

Exemplo: Pagamento PIX

Request
{
  "client": {
    "name": "Maria Santos",
    "email": "maria@exemplo.com.br",
    "phone": { "ddi": "55", "ddd": "21", "number": "988887777" }
  },
  "payment": {
    "type": "PIX",
    "pix_expiration": 3600
  },
  "items": [
    { "id": "curso_001", "description": "Curso Online", "amount": 297.00, "quantity": 1 }
  ]
}
Resposta PIX (HTTP 201)
{
  "mensagem": "Aguardando Pagamento",
  "erro": false,
  "mensagenserro": [],
  "codigoretorno": 201,
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "data": {
    "charge_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "code": "pur_abc123xyz",
    "status": "Pending",
    "value": 297.00,
    "orders": [
      {
        "code": "ord_abc123xyz",
        "status": "Pending",
        "charges": [
          {
            "code": "chg_abc123",
            "status": "Pending",
            "payment": {
              "code": "pix_code_123",
              "copy_paste": "00020126580014br.gov.bcb.pix...",
              "expiration": "2026-03-11T11:00:00.000000Z",
              "payment_type": "PIX"
            }
          }
        ]
      }
    ]
  }
}
Para pagamentos PIX, o status inicial será Pending. Use webhooks para ser notificado quando o pagamento for confirmado.
A criação de cobranças passa por verificações de fraude. Clientes com IP, e-mail, CPF ou BIN do cartão bloqueados terão a cobrança rejeitada com status 400.

Estorno de cobranças

O endpoint de estorno aceita um campo value opcional do tipo inteiro (em centavos). Se omitido, o estorno é total.
Estorno parcial de R$ 50,00
{
  "value": 5000
}
O prazo e as condições para estorno dependem do gateway de pagamento utilizado. Cobranças já estornadas por completo não podem ser estornadas novamente.