Payment webhooks
The Payment WebHook endpoint receives terminal payment status notifications from EFundPay. Merchants should handle both SUCCEEDED and FAILED idempotently.
POST{notification_url}
This endpoint requires the
webhooks.payment scope.Headers
timestampstringrequired
UNIX timestamp
Examples:
"20240117193352"timezonestringrequired
Timezone
Examples:
"Asia/Shanghai"signaturestringrequired
RSA signature of the body object
Examples:
"base64_rsa_signature_example"Body
application/jsonll_transaction_idstringrequired
EFundPay payment order ID
merchant_transaction_idstringrequired
external_identifier,Merchant payment order ID,
payment_dataobjectrequired
Payment data
Response
application/json
Successful Response
codestringrequired
response code.
Examples:
"200"messagestringrequired
response message.
Examples:
"SUCCESS"curl --request POST \--url {notification_url} \--header 'timestamp: "20240117193352"' \--header 'timezone: "Asia/Shanghai"' \--header 'signature: "ovTdLBu+BN8...Bvkw=="' \--header 'Content-Type: application/json' \--data '{"ll_transaction_id": "2022012601122644","merchant_transaction_id": "693100628120965120","payment_data": {"account_date": "20220126","exchange_rate": "1.00000000","payment_amount": "1.20","payment_currency_code": "EUR","payment_status": "SUCCEEDED","payment_time": "20220126141430","settlement_amount": "1.20","settlement_currency_code": "EUR"}}'
{"code": "200","message": "SUCCESS"}