- Immediate (COB) —
cobrança imediata: a short-lived charge for a fixed amount. Use it for checkout and one-time payments. - Due-date (COBV) —
cobrança com vencimento: a boleto-like charge with a due date and optional fine, interest, discount, and abatement. Use it for bills, installments, and B2B invoicing.
Lifecycle
Both collection types share the same status model:
A collection moves from
ACTIVE to COMPLETED when the payer pays it. It moves to REMOVED_BY_PSP when it expires, or to REMOVED_BY_RECEIVER when the merchant deletes it. Each type has its own validity window:
- Immediate (COB): the charge expires after
expirationSeconds. - Due-date (COBV): the charge expires at
dueDateplusvalidAfterDuedays.
COMPLETED, the payer can no longer pay it. The plugin also rejects any attempt to delete or update a COMPLETED collection (PIX-0704).
Key fields
For COBV, the final value depends on payment timing. Early payment applies discounts. On-time payment uses the original amount. Late payment adds fine and interest, minus any abatement.
Creating, retrieving, updating, deleting
All requests require the
X-Account-Id header. You can update or delete a collection only while it is ACTIVE.
Payment flow
The payer settles a collection with an incoming Pix (cash-in) that carries the collection’s
txId:
- The merchant creates a collection and presents its QR Code (or
txId) to the payer. - The payer settles the charge. BTG notifies the plugin of the inbound cash-in.
- The plugin links the cash-in to the collection by matching the payment’s
txIdagainst the collection’stxIdand the receiver document. (FindByTxID(txID, receiverDocument).) - On a match, the collection moves to
COMPLETEDand the plugin posts the cash-in to Midaz as a ledger transaction. - The plugin emits a collection-paid webhook to notify your system in real time.
When you set a
debtor on the collection, the charge records the expected payer’s CPF/CNPJ. The plugin does not block a different payer at settlement.Webhook event when paid
After a payment settles a collection, the plugin queues an outbound webhook. The webhook describes the payment and the new
COMPLETED status. The outbound webhook worker delivers it asynchronously. Configure the destination through the cash-in webhook URLs (WEBHOOK_TRANSFER_CASHIN_URL, with WEBHOOK_DEFAULT_URL as the fallback). For event types, payloads, retries, and URL resolution, see the Webhooks guide.
Error cases
Reference
Immediate (COB): Create · List · Retrieve · Update · Delete Due-date (COBV): Create · List · Retrieve · Update
Next steps
- QR Codes — QR Code types and the decoder
- Intra-PSP transfers — Internal settlement when payer and payee share your ISPB
- Webhooks — Payment and status notifications

