Skip to main content
The payer receives the OUT event and the payee receives the IN event. A failed transaction does not generate the payee-side IN delivery.

Events


Delivery Models

The transaction body does not contain a top-level event_type. Determine the event from txn_type and flow_direction together with the callback configuration that targets the endpoint.

Serialization Rules

  • Field names use snake_case.
  • Unset and default-valued fields are omitted.
  • Enum values are JSON strings such as TXN_STATUS_COMPLETED.
  • int64 timestamp fields are decimal JSON strings, such as "1710000000000".
  • Money values are decimal strings. Do not parse them as floating-point numbers.
  • Top-level credit_fee and debit_fee are removed before delivery.
  • payer.document_id and payee.document_id may be masked.
  • Ignore unknown fields so additive payload changes do not break your receiver.

Common Fields

GroupFields
Partiespayer, payee
Identifierstxn_id, settlement_txn_id, merchant_order_id
Statetxn_status, rejection_reason, error, result
Moneyamount, currency, refunded_amount, refundable_amount
Classificationtxn_type, payment_method, payment_variant, source_type, flow_type, flow_direction
Contextmemo, request_memo, request_merchant_order_id, pix_details
Timecreated_at, completed_at
Refund onlyrefund_reason_code, refund_reason, original_txn

Party Object (Payer / Payee)

A payer or payee object may contain:
FieldType
namestring
document_idstring
document_typeenum string
bank_accountstring
bank_account_typeenum string
bank_branchstring
bank_codestring
bank_namestring

Direction-Specific Order IDs

EventCurrent Behavior
PIX_PAYMENT_INmerchant_order_id is populated from request_merchant_order_id.
PIX_REFUND_INThe top-level refund merchant_order_id is omitted. original_txn.merchant_order_id keeps the original payment merchant order ID. original_txn.qr_code_merchant_order_id is omitted.
PIX_REFUND_OUTThe top-level refund merchant_order_id is retained. original_txn.merchant_order_id receives the original QR-code merchant order ID when available. original_txn.qr_code_merchant_order_id is omitted.

Payload Example


Idempotency

  • When delivery_id is present, use it as the primary idempotency key.
  • For ACCOUNT delivery, use txn_id together with the configured event type.
  • A duplicate event must return HTTP 200 after confirming that the original event was already accepted.