Skip to main content
A Cobrança com Vencimento é o modelo Pix para cobranças que precisam de uma data limite de pagamento, com a possibilidade de aplicar encargos após o vencimento (juros e multa) e incentivos para antecipar (desconto e abatimento). É o substituto natural do boleto: preserva os mesmos conceitos — vencimento, multa por atraso, juros diários, desconto para pagamento antecipado — mas com a liquidação instantânea do Pix.
Se você está migrando de boleto para Pix, este é o modelo. Os campos taxes mapeiam diretamente para o que você já configura no boleto hoje.

Quando usar

Faturas e mensalidades

Planos de assinatura, condomínios, mensalidades escolares — qualquer cobrança recorrente com data de vencimento definida.

Substituição de boleto

Migre cobranças que hoje geram boleto para Pix com vencimento, mantendo multa e juros por atraso e desconto por antecipação.
Se você precisa de um código de uso imediato sem vencimento, use a Cobrança Imediata (QR Dinâmico) em vez desta.

Passo a passo

1

Crie a cobrança com vencimento

Os campos obrigatórios são correlationId, amount, dueDate, e os objetos payer e address com seus dados completos.
curl --location 'https://apisandbox.delbank.com.br/baas/api/v2/pix/qrcode/due-date' \
--header 'Content-Type: application/json' \
--header 'x-delbank-api-key: {{apiKey}}' \
--header 'x-delfinance-account-id: {{accountId}}' \
--data '{
    "correlationId": "{{$guid}}",
    "amount": 150.00,
    "dueDate": "2025-12-30",
    "formatResponse": "PAYLOAD_AND_QRCODE",
    "payer": {
        "name": "João Alves",
        "document": "07034346593"
    },
    "address": {
        "cityName": "ARACAJU",
        "zipCode": "49000000",
        "state": "SE",
        "street": "LOGRADOURO"
    }
}'
{
    "correlationId": "ac7a235a-1a91-47b0-8da5-0eb75abf3617",
    "transactionId": "wcharge0aac4378c3cf4c37b0ec16c7c",
    "amount": 150.00,
    "originalAmount": 150.00,
    "dueDate": "2025-12-30",
    "status": "ACTIVE",
    "revision": 0,
    "payer": {
        "name": "JOAO ALVES",
        "document": "***343465**"
    },
    "address": {
        "cityName": "ARACAJU",
        "zipCode": "49000000",
        "uf": "SE",
        "state": "SE",
        "street": "LOGRADOURO"
    },
    "createdAt": "2024-12-17T12:22:02.757Z",
    "updatedAt": "2024-12-17T12:22:02.757Z",
    "expiresAt": "2026-01-29T23:59:59.000Z",
    "payloadPix": "00020101021226830014br.gov.bcb.pix2561pix-h.delbank.com.br/v2/cobv/wcharge0aac4378c3cf4c37b0ec16c7c5204000053039865802BR5907DELBANK6007ARACAJU62070503***63040F7B"
}
Note que o expiresAt é calculado automaticamente com base no dueDate e no maxDaysOverdue (padrão de 30 dias após o vencimento). O pagamento ainda será aceito após o dueDate, mas com acréscimo de juros e multa, se configurados.
2

Configure encargos e descontos (opcional)

O objeto taxes é onde você define o comportamento financeiro da cobrança. Todos os campos são opcionais entre si — use apenas os que fazem sentido para o seu caso.
{
    "correlationId": "{{$guid}}",
    "amount": 150.00,
    "dueDate": "2025-12-30",
    "payer": { "name": "João Alves", "document": "07034346593" },
    "address": { "cityName": "ARACAJU", "zipCode": "49000000", "state": "SE", "street": "LOGRADOURO" },
    "taxes": {
        "rebateType": "FIXED_AMOUNT",
        "rebateAmount": 5.00,
        "discountType": "FIXED_AMOUNT",
        "discountAmount": 10.00,
        "interestType": "PERCENTAGE_PER_MONTH_CALENDAR_DAY",
        "interestAmount": 1,
        "fineType": "PERCENTAGE",
        "fineAmount": 2
    }
}
CampoQuando é aplicadoTipos aceitos
rebate (abatimento)Sempre, independente da dataFIXED_AMOUNT, PERCENTAGE
discount (desconto)Apenas se pago antes do vencimentoFIXED_AMOUNT, PERCENTAGE
interest (juros)Por dia/mês/ano após o vencimentoFIXED_AMOUNT_CALENDAR_DAY, PERCENTAGE_PER_DAY_CALENDAR_DAY, PERCENTAGE_PER_MONTH_CALENDAR_DAY, PERCENTAGE_PER_YEAR_CALENDAR_DAY
fine (multa)Aplicada uma vez, após o vencimentoFIXED_AMOUNT, PERCENTAGE
rebateAmount reduz o valor base da cobrança independentemente de quando o pagamento ocorre. discountAmount só é aplicado se o pagamento vier antes do dueDate.
3

Exiba o QR Code para o pagador

A resposta inclui tudo que você precisa para apresentar a cobrança:
  • payloadPix — o “Pix Copia e Cola”.
  • qrCodeImageBase64 — imagem pronta do QR Code, quando formatResponse é PAYLOAD_AND_QRCODE.
  • dueDate e expiresAt — exiba o vencimento para o pagador deixar claro o prazo sem encargos.
Deixe o dueDate visível na tela de pagamento. Pagadores precisam saber até quando pagam sem multa.
4

Receba a confirmação via Webhook

O fluxo é idêntico aos outros modelos: quando o pagamento é liquidado, a API dispara o evento PIX_RECEIVED com o correlationId da cobrança.Veja Processando a confirmação via Webhook para o passo a passo completo.
5

Consulte o status quando necessário

Consulte o estado da cobrança pelo correlationId ou transactionId:
cURL
curl --location 'https://apisandbox.delbank.com.br/baas/api/v2/pix/qrcode/due-date/{{transactionIdentifier}}' \
--header 'x-delbank-api-key: {{apiKey}}' \
--header 'x-delfinance-account-id: {{accountId}}'
6

Cancele se necessário

Se a cobrança não deve mais ser paga (pedido cancelado, acordo externo, etc.), cancele o QR Code:
cURL
curl -X 'PATCH' \
  'https://apisandbox.delbank.com.br/baas/api/v2/pix/qrcode/due-date/{{transactionIdentifier}}/cancel' \
  --header 'x-delbank-api-key: {{apiKey}}' \
  --header 'x-delfinance-account-id: {{accountId}}'
Retorna HTTP 202 sem corpo.

Desconto escalonado por data

Em vez de um desconto único, você pode oferecer até 3 faixas de desconto com datas diferentes, incentivando o pagamento cada vez mais antecipado. Nesse caso, use discountsDueDate no lugar de discountAmount — os dois campos são mutuamente exclusivos.
{
    "correlationId": "{{$guid}}",
    "amount": 200.00,
    "dueDate": "2025-12-30",
    "payer": { "name": "João Alves", "document": "07034346593" },
    "address": { "cityName": "ARACAJU", "zipCode": "49000000", "state": "SE", "street": "LOGRADOURO" },
    "taxes": {
        "interestType": "PERCENTAGE_PER_DAY_CALENDAR_DAY",
        "interestAmount": 0.033,
        "fineType": "PERCENTAGE",
        "fineAmount": 2,
        "discountType": "FIXED_AMOUNT",
        "discountsDueDate": [
            { "dueDate": "2025-11-30", "amount": 30.00 },
            { "dueDate": "2025-12-15", "amount": 15.00 },
            { "dueDate": "2025-12-25", "amount": 5.00 }
        ]
    }
}
Neste exemplo: quem paga até 30/11 ganha R30dedesconto,ateˊ15/12ganhaR 30 de desconto, até 15/12 ganha R 15, até 25/12 ganha R$ 5. Após 30/12 (o dueDate), incidem juros e multa.

Referência da API

Criar

POST /pix/qrcode/due-date

Consultar

GET /pix/qrcode/due-date/:id

Cancelar

PATCH /pix/qrcode/due-date/:id/cancel