Skip to main content

Webhooks - BNPL Issuance

Summary

After a successful issuance response, you will receive webhooks notifying you about the events in the operation lifecycle: contract signature, disbursement, and eventually cancellation.

Attention!

Webhooks should not be strictly mapped. New fields may be added to the payload without prior notice.

Signature Webhook

This webhook is sent when the contract (CCB) is successfully signed.

WEBHOOK_TYPE
debt
STATUS
signature_finished
Webhook Body
{
"key": "1ebd4a90-2721-4c39-a399-427fa16bca65",
"status": "signature_finished",
"webhook_type": "debt",
"event_datetime": "2025-10-27T17:09:33Z",
"signed_contract_url": "https://storage.googleapis.com/sandbox-doc-api/documents/c8b191cb-7b90-4e37-9280-397a597babc1/CCB-TIK11267101212-20251027170925_signed.pdf"
}

Signature Webhook Fields

FieldTypeDescription
keystringUnique debt key (DEBT-KEY)
statusstringEvent status: signature_finished
webhook_typestringWebhook type: debt
event_datetimestringEvent date and time
signed_contract_urlstringURL of the signed contract (PDF)

Disbursement Webhook

This webhook confirms that the disbursement was successfully completed.

WEBHOOK_TYPE
debt
STATUS
disbursed
Webhook Body
{
"key": "1ebd4a90-2721-4c39-a399-427fa16bca65",
"data": {
"installments": [
{
"due_date": "2025-11-27",
"total_amount": 87.43,
"installment_key": "e25fb146-0a61-4319-a722-d01b2213d0f9",
"pre_fixed_amount": 29.26477451,
"installment_number": 1,
"principal_amortization_amount": 58.16522549
},
{
"due_date": "2025-12-27",
"total_amount": 87.43,
"installment_key": "2557de2b-6df1-4a8a-b46a-59206ece157f",
"pre_fixed_amount": 20.11446867,
"installment_number": 2,
"principal_amortization_amount": 67.31553133
},
{
"due_date": "2026-01-27",
"total_amount": 87.43,
"installment_key": "cc503d1d-6387-4a1f-bd78-62b248d02ec8",
"pre_fixed_amount": 11.07075682,
"installment_number": 3,
"principal_amortization_amount": 76.35924318
}
],
"ted_receipt_list": [],
"requester_identifier_key": null
},
"status": "disbursed",
"webhook_type": "debt",
"event_datetime": "2025-10-27T17:10:21Z"
}

Disbursement Webhook Fields

FieldTypeDescription
keystringUnique debt key (DEBT-KEY)
statusstringEvent status: disbursed
webhook_typestringWebhook type: debt
event_datetimestringEvent date and time
data.installmentsarrayList of installments with their keys and amounts
data.ted_receipt_listarrayList of TED receipts (when applicable)

Cancellation Webhook

If the debt fails to disburse, or is returned, you will receive a cancellation webhook.

WEBHOOK_TYPE
debt
STATUS
canceled
Webhook Body
{
"webhook_type": "debt",
"key": "1ebd4a90-2721-4c39-a399-427fa16bca65",
"event_datetime": "2025-10-27T16:38:59Z",
"data": {
"cancel_reason": "Operacao cancelada manualmente",
"cancel_reason_enumerator": "manual"
},
"status": "canceled"
}

Cancellation Webhook Fields

FieldTypeDescription
keystringUnique debt key (DEBT-KEY)
statusstringEvent status: canceled
webhook_typestringWebhook type: debt
event_datetimestringEvent date and time
data.cancel_reasonstringTextual description of the cancellation reason
data.cancel_reason_enumeratorstringCancellation reason enumerator

Cancellation Enumerators

EnumeratorDescription
disbursing_errorOperation canceled due to an error during disbursement
waiting_signatureOperation canceled due to missing signature
pix_max_retryOperation canceled because the receiving bank could not process the disbursement
manualOperation canceled manually
agencia_conta_invalidaInvalid agency or recipient account number
invalid_accountThe destination account number is nonexistent or invalid
invalid_document_numberThe CPF/CNPJ of the destination account is incorrect
unsupported_transactionThe destination account does not support this type of transaction
invalid_ispbThe ISPB number is invalid or nonexistent
rejected_paymentPayment order was rejected by the receiving bank
refund_after_payee_requestRefund requested by the payee
blocked_accountThe destination account is blocked
amount_too_greatPayment/refund amount exceeds the limit for the credited destination account
receiver_errorTransaction interrupted due to error on the receiver's PSP
closed_accountThe destination account is closed
disbursing_hour_closedDisbursement occurred outside of the allowed time frame
unregistered_pix_keyThe Pix key is not registered
spi_timeoutTimeout control in SPI