Payment Status Updated Event
Sent when the status of a payment changes. Subscribe to the PAYMENT STATUS event type to receive these updates at your designated endpoint.
Implement idempotent processing and store each event keyed by event_id and payment_id to handle retries and out-of-order delivery.
Status flows and reference
Status Flows & Transitions
Payment status updates follow different flows depending on whether currency conversion (FX) is required:
Flow 1: Payments with FX Conversion (Different Currencies)
Flow 2: Same Currency Payments (No FX Conversion)
Status Reference:
All envelope fields (
event_id,event_type,version,event_timestamp) are always present. Business fields (payment_id,status,customer_id, etc.) are inside thedataobject.
PAYOUT_CREDITED vs PAYMENT_COMPLETED:
For single-recipient payments, both events are delivered and are functionally equivalent. For multi-recipient payments, PAYOUT_CREDITED fires per recipient; PAYMENT_COMPLETED fires once when all recipients are credited. Treat PAYMENT_COMPLETED as the definitive settlement signal.
Field Availability Reference
Payment types explained:
- Third Party Payment (Session-Based): Payments created via Hosted payment sessions API
- API Payment (Third Party): Payments created via Payment API with
is_third_party_payment: true- API Payment (Non Third Party): Payments created via Payment API with
is_third_party_payment: false
See the example payloads below for the specific data object schema associated with each status value.
Glossary
Example payloads
Each status below shows payloads for all three payment types. The envelope (event_id, event_type, version, event_timestamp) is identical across types; only the data fields differ.
AWAITING_FUNDS
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
RECEIVED_FUNDS
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
FX_COMPLETED
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
PAYOUT_INITIATED
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
PAYOUT_CREDITED
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
CANCELLED
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
PROCESSING
Note: This status is used for same-currency payments (no FX conversion required). It is sent immediately after the Payment v3 call. The payload contains base fields only; no status-specific data fields are included.
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
PAYMENT_COMPLETED
Note: This status indicates that all payouts in a transaction are in PAYOUT_CREDITED state. This is the final status for all payments (both FX conversion and same-currency payments).
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
BOUNCED_BACK
Third Party Payment (Session-Based)
API Payment (Third Party)
API Payment (Non Third Party)
Payload
Timestamp of the event in ISO 8601 format (YYYY-MM-DDTHH:MM:SSZ).