Criar Cobrança

Cash-in routes

Nesta sessão você encontrará todos os endpoints necessários para criar, consultar, cancelar e gerenciar cobranças PIX utilizando a API PixToPay.

Endpoints Disponíveis

  • Sandbox: https://sandbox.pixtopay.com.br/v2/cashin
  • Produção: https://api.pixtopay.com.br/v2/cashin

Criar cobrança PIX com expiração

Route

POST /v2/pix

Headers

{
  "Authorization": "YOUR_API_KEY",
  "Content-Type": "application/json", // opcional, padrão é application/json
  ...
}

Body

ParâmetroTipoObrigatórioDescrição
transaction_idstringSimIdentificador único da transação na sua plataforma (UUID v4 recomendado)
currencystringSimMoeda da transação (apenas "BRL" é suportado)
amountnumberSimValor da cobrança em reais (ex: 150.75)
duestring (ISO 8601)SimData e hora de expiração da cobrança (ex: "2024-12-31T23:59:59") enviar sempre no timezone UTC-0
namestringSimNome completo do pagador
document_typestringSimTipo de documento do pagador ("CPF" ou "CNPJ")
document_numberstringSimNúmero do documento do pagador (apenas números)
webhookstringSimURL para receber notificações de status da cobrança via webhook
phone_numberstringNãoNúmero de telefone do pagador no formato internacional (ex: "5547999999999")
emailstringNãoEndereço de email do pagador
external_idstringNãoIdentificador externo para agrupar cobranças ou identificar usuário (ex: "group_1" ou "user_12345")

Exemplo de requisição:

curl --location 'https://sandbox.pixtopay.com.br/v2/pix' \
--header 'Authorization: API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "transaction_id": "5fe8e512-fa13-44e4-86b4-c557dd76e68d",
    "currency": "BRL",
    "amount": 1.02,
    "due" : "2024-12-30T14:00:00",
    "name": "NOME E SOBRENOME",
    "document_type": "CPF",
    "document_number": "08965726921",
    "webhook": "https://webhook.site/1729bf83-5b8e-46fe-b125-1ef5932f4fef",
    "phone_number": "5547999999999",
    "email": "sandbox@pixtopay.com.br",
    "external_id": "group_1",
    "base64image": true
}'

Modelo de resposta [2xx]

ParâmetroTipoDescrição
idintegerIdentificador único da cobrança PIX gerada
transaction_idstringIdentificador único da transação na sua plataforma
statusintegerStatus atual da cobrança PIX (ver tabela de status abaixo)
currencystringMoeda da transação (sempre "BRL")
amountnumberValor da cobrança em reais
duestring (ISO 8601)Data e hora de expiração da cobrança
qrcodestringCódigo QR da cobrança PIX para pagamento
qrcode_imagestring(Opcional) Imagem do código QR em formato base64 (presente apenas se base64image for true no body)

Modelo de respostas [4xx]

ParâmetroTipoDescrição
typestringTipo do erro ocorrido
messagestringMensagem detalhando o erro ocorrido

Modelos de respostas [5xx]

ParâmetroTipoDescrição
messagestringMensagem detalhando o erro ocorrido

Resposta 200:

{
  "id": 59366,
  "transaction_id": "12345678942",
  "status": 0,
  "currency": "BRL",
  "amount": 145,
  "due": "2021-11-30T19:00:00.000Z",
  "qrcode": "00020101021226890014br.gov.bcb.pix2567invoice-h.sandbox.starkbank.com/v2/7998213473f84059983768a2b646ce6b5204000053039865802BR5925Pay42 Intermediacao De Ne6010Porto Belo62070503***6304F572"
}

Resposta 200 com base64image:

{
  "id": 23592,
  "transaction_id": "074b88a1-58ae-47b4-80c5-856ad88d2ac2",
  "status": 0,
  "currency": "BRL",
  "amount": 1.02,
  "due": "2024-12-30T17:00:00.000Z",
  "qrcode": "00020101021226890014br.gov.bcb.pix2567brcode-h.sandbox.starkinfra.com/v2/4e093f699bf746e3824bf61abb6a9d855204000053039865802BR5925Bpay Solucoes de Pagament6015Balneario Cambo62070503***6304A308",
  "qrcode_image": "data:image/png;base64,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"
}

Resposta 400 transaction_id duplicado:

{
  "type": "ValidationError",
  "message": "body.transaction_id already exists"
}

Resposta 400 expiração inválida:

{
  "type": "ValidationError",
  "message": "body.due must be greater or equal to now"
}

Resposta 5xx erro interno:

{
  "message": "Internal server error!"
}

Lista de status de cobranças PIX

Os status de cobranças PIX são representados por números inteiros. A baixo estão os possíveis status de uma cobrança PIX:

StatusDescrição
0Cobrança criada, aguardando pagamento
1Cobrança paga
2Cobrança cancelada
3Cobrança expirada
4Cobrança devolvida

Fluxo de status

O fluxo de status de uma cobrança PIX segue a sequência abaixo:

0 (Criada) → 1 (Paga)
0 (Criada) → 2 (Cancelada)
0 (Criada) → 3 (Expirada)
0 (Criada) → 4 (Devolvida)*
0 (Criada) → 1 (Paga) → 4 (Devolvida)

*Obs: no caso da troca de status 0 (criada) diretamente para 4: (devolvida), isso ocorre quando o pagador realiza o pagamento, mas o valor é devolvido por algum motivo (ex: tentativa de pagamento por terceiros, lista restritiva, etc).