event field in the JSON body to route each payload to the correct handler.
Money In — transaction_notif_url
SingaPay delivers these money-in events to the same transaction_notif_url:
Subscription Cycle uses a dedicated
subscription_cycle_notif_url, not transaction_notif_url.Routing example
PHP
Money Out — disbursement_notif_url
SingaPay delivers these money-out events to the same disbursement_notif_url:
You can also distinguish payloads using nested fields such as
data.bank, data.ewallet, or data.qr_data when present.
Routing example
PHP
Dedicated URLs (not shared)
Validate and acknowledge all webhooks using Security and signature validation.
