Scheduled maintenanceScheduled maintenance: PayWise infrastructure maintenance is planned from Friday, October 9 at 7:00 p.m. ET through Monday, October 12 at 8:00 a.m. ET. Sandbox and Production services may experience intermittent interruptions during this period. Existing PayWise service URLs and SFTP hostnames will remain unchanged.
Skip to main content

Payment notify events

Use notify events for lightweight lifecycle signals during a Checkout payment flow.

Notify events are not the same as request-level callbacks:

  • notify = event-style lifecycle updates
  • callback = full request-level transaction snapshot

What a notify event represents​

A notify event carries a specific lifecycle signal such as:

  • payment_initiated
  • payment_completed
  • payee_payment_completed

The current docs contract is intentionally lighter and more permissive than the callback contract because exact provider edge variants are still being expanded in retained fixtures.

Event envelope​

Current notify events require:

  • event_type
  • transaction_id
  • status
  • timestamp
  • description

Each notify event must also include at least one of:

  • payer
  • payee

Payment initiated example​

{
"event_type": "payment_initiated",
"transaction_id": "merchant-order-a8Q3x",
"status": "INITIATED",
"payer": {
"name": "John Doe",
"mobile_number": "+1XXXXXXXXXX",
"amount": 25,
"currency": "TTD"
},
"timestamp": "2026-08-01T14:00:00Z",
"description": "Payment links issued to a Payer[x]"
}

Payment completed example​

{
"event_type": "payment_completed",
"transaction_id": "merchant-order-w9J2m",
"status": "PAID",
"payer": {
"mobile_number": "+1XXXXXXXXXX",
"amount": 25,
"payment_method": "wallet",
"currency": "TTD"
},
"timestamp": "2026-08-01T14:05:30Z",
"description": "Payer[x] has paid"
}

How to use notify events safely​

  • Treat notify as informational event delivery
  • Make your receiver idempotent
  • Do not finalize ledger state from notify alone
  • Reconcile against GET /payments/status when state matters

Notify is useful for:

  • driving UI progress
  • triggering merchant-side workflow steps
  • recording milestones in your audit trail

Notify is not the best source for:

  • reconstructing full fee breakdowns
  • final payer/payee arrays
  • authoritative request-level terminal state

Notify vs callback vs status​

  • Notify: event-oriented, lightweight
  • Callback: request snapshot, richer payload
  • Status lookup: current normalized state from PayWise

Recommended approach:

  1. receive notify events for workflow responsiveness
  2. receive callbacks for request-level state snapshots
  3. poll GET /payments/status for reconciliation, support, and final confirmation