Callback

After every successful transaction, a callback will be sent to the URL you provided through the callback_url parameter. Instead of plain text, Payright uses an encoded JWT message for these callbacks. You'll need to decode the message using a hash key to access its content. You may get your hash key from

Account > API Keys > View API Key > Hash Key

Sample of JWT encoded callback response

{"data": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnZvaWNlX25vIjoiUEFZT1VUMTc0MDU0ODQwMjRaZjN0UUNnIiwiZXJyb3JfZGVzY3JpcHRpb24iOltdLCJpbnZvaWNlX3N0YXR1c19pZCI6MiwiaW52b2ljZV9zdGF0dXMiOiJTVUNDRVNTIiwiYW1vdW50IjoiMTMuMDAiLCJwYXltZW50X3N3aXRjaF9jaGFyZ2VfcmF0ZSI6IjAuNTAiLCJwYXlvdXRfc2VydmljZV9pZCI6MzksInJlc3BvbnNlX2NvZGUiOjIxMDAsImJhbmtfcmVzcG9uc2Vfc3VjY2VzcyI6dHJ1ZSwib3Jnbl9mcm9tX2FjY291bnRfY3VycmVuY3kiOiJNWVIiLCJvcmduX3RoaXJkX3BhcnR5X2FjY291bnRfbm8iOiIxMjM0NTY3ODkwMSIsIm9yZ25fcGF5bWVudF9kZXNjcmlwdGlvbiI6IjY3OTg4ZDU3NTE2NWEiLCJiaXpfbXNnX2lkIjoiMjAyNTAxMjhPQ0JDTVlLTDAxME9DQjU0MTA4MDIzIiwiZGlzcGxheV9uYW1lIjoiU0FOREJPWCBVU0VSIiwiYmFua19yZWZlcmVuY2Vfbm8iOiIyMDI1MDEyODE1NTUwMzY0Nzg5MiIsIm9yZ25fdHJhbnNhY3Rpb25fYW1vdW50IjoiNDM3IiwiZnJvbV9hY2NvdW50X25vIjoiNzkwMTExMTI0OCJ9.6bH_Zwob_5mr8i4xd9U5vdVf1osCy5pQY_3lbEjgJfE", "response_code": 2100}

Sample callback response after JWT decode

{
  "invoice_no": "PAYOUT17405484024Zf3tQCg",
  "error_description": [],
  "invoice_status_id": 2,
  "invoice_status": "SUCCESS",
  "amount": "13.00",
  "payment_switch_charge_rate": "0.50",
  "payout_service_id": 39,
  "response_code": 2100,
  "bank_response_success": true,
  "orgn_from_account_currency": "MYR",
  "orgn_third_party_account_no": "12345678901",
  "orgn_payment_description": "67988d575165a",
  "biz_msg_id": "20250128OCBCMYKL010OCB54108023",
  "display_name": "SANDBOX USER",
  "bank_reference_no": "20250128155503647892",
  "orgn_transaction_amount": "437",
  "from_account_no": "7901111248"
}

Last updated