paycools-my
Languages
Languages
  • 简体中文
  • English
Languages
Languages
  • 简体中文
  • English
  1. 3. QR Code
  • Merchant Unified API Param
  • API Code Collection
  • Unified API Param
  • 1. Account
    • 1.1 Balance Inquiry
      POST
  • 2. Disbursement
    • Disburse API Supported Types
    • Account Verification Related Enum List
    • 2.1 Account Validation
      POST
    • 2.2 Check Account Validation Order Status
      POST
    • 2.3 Create Payout
      POST
    • 2.4 Check Payout Status
      POST
    • 2.5 Disburse callback notification api
      POST
  • 3. QR Code
    • QR Code Channel Code List
    • 3.1 QR Code Create
      POST
    • 3.2 QR Code Detail
      POST
    • 3.3 QR Code Payment List
      POST
    • 3.4 QR Code Payment Notification
      POST
  • 4. WebPay
    • WebPay Channel Code List
    • 4.1 WebPay Create
      POST
    • 4.2 Retrieve WebPay Status
      POST
    • 4.3 WebPay Payment Notification
      POST
  • 5. Refund
    • Refund Support Channel List
    • Refund Status Enum
    • 5.1 Refund
      POST
    • 5.2 Get Refund Payments
      POST
    • 5.3 Refund Notification
      POST
  1. 3. QR Code

3.4 QR Code Payment Notification

POST
/callbacks/qrcode-payment
This endpoint is implemented by the merchant. Its path and server are import placeholders.
This interface should be implemented by merchant. The function is that when a payment transaction occurs on the merchant's QR Code, PayCools will call this interface to notify the merchant of the payment transaction details.
param is a JSON-serialized string. The table below describes its decoded logical fields.
parameter namerequiredtypedescription
eventNameYesstringevent name( qrcode.payment.success , qrcode.payment.failed )
mchOrderIdYesstringmerchant order ID, alphanumeric, max length 32
transactionIdYesstringPayCools transaction ID
amountYesintegeramount
transactionStatusYesstringtransaction status( PENDING , COMPLETED , FAILED )
createTimeYesstringpayment create time
returnTimeYesstringpayment finish time
channelCodeYesstringchannel code, refer to QR Channel List
remarkYesstringremark
failedCodeNointegerfailed code
failedMessageNostringfailed message
Source documentation: https://docs.paycools.com.my/en/PaymentQR/QRCodePaymentNotification.html

请求参数

Body 参数application/json必填

示例
{
    "sign": "V6HQvEZaLF5MSH8TcOVdqPj7fLyvdrAOPm74rW9svpclBIVPlokyiZqPXl09/yAOS8PNnganUtvRvie9MAxJwtYOkDMXxxi4gWjPl3D9L6W4fnVeC28HjhZhWrSgwlecJG6SuHM3odTHAxr5WQUuOxsYFtx+c74Ew+ZzuICCH3dA4+uzNEbDyB8QmBF94nM1LFhDId/VEMxdbj8xKJuOMiSBgwAWaFElm5YCfgmrZpU/qLnuGX2hNxQAMKY2GAw+4VpphYpHG8Xak5+PlqFWKp8mKJ9DgyphVf0ACGpcjOQp0S1V+S1HMMVU0AkW6c8n0weOMu3l6k6cPHsjEe/jSQ==",
    "param": "{\"channelCode\":\"DUITNOW_DYNAMIC_QR\",\"transactionId\":\"QR123456789\",\"amount\":2300,\"transactionStatus\":\"COMPLETED\",\"createTime\":\"2022-11-28 22:10:10\",\"returnTime\":\"2022-11-28 22:11:00\",\"remark\":\"example\"}"
}

请求示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location '/callbacks/qrcode-payment' \
--header 'Content-Type: application/json' \
--data '{
    "sign": "V6HQvEZaLF5MSH8TcOVdqPj7fLyvdrAOPm74rW9svpclBIVPlokyiZqPXl09/yAOS8PNnganUtvRvie9MAxJwtYOkDMXxxi4gWjPl3D9L6W4fnVeC28HjhZhWrSgwlecJG6SuHM3odTHAxr5WQUuOxsYFtx+c74Ew+ZzuICCH3dA4+uzNEbDyB8QmBF94nM1LFhDId/VEMxdbj8xKJuOMiSBgwAWaFElm5YCfgmrZpU/qLnuGX2hNxQAMKY2GAw+4VpphYpHG8Xak5+PlqFWKp8mKJ9DgyphVf0ACGpcjOQp0S1V+S1HMMVU0AkW6c8n0weOMu3l6k6cPHsjEe/jSQ==",
    "param": "{\"channelCode\":\"DUITNOW_DYNAMIC_QR\",\"transactionId\":\"QR123456789\",\"amount\":2300,\"transactionStatus\":\"COMPLETED\",\"createTime\":\"2022-11-28 22:10:10\",\"returnTime\":\"2022-11-28 22:11:00\",\"remark\":\"example\"}"
}'

返回响应

🟢200
application/json
Business result
Bodyapplication/json

示例
{
    "code": 10000,
    "message": "Success"
}
修改于 2026-08-31 11:04:18
上一页
3.3 QR Code Payment List
下一页
WebPay Channel Code List
Built with