Successful Payment Result Notifications
- Endpoint:
POST /collectResultNotifyUrlForBillPayment - Tags: Collection Service/BillPayment
Description
Upon successful deduction of the customer payment, PayerMax will automatically settle the funds and notify the merchant of the settlement result via this interface. The merchant only needs to respond with the code and msg fields, with no requirement to return data.
Note: If the merchant prefers PayerMax to postpone settlement processing, they may contact PayerMax for configuration. Once configured, PayerMax will handle the settlement according to the merchant’s result using either of the following methods:
- Synchronously: The merchant may respond with the settlement confirmation result directly in the data field upon receiving the notification.
- Asynchronously: The merchant may notify PayerMax of the settlement result by calling the Merchant Settlement Result Confirmation API provided by PayerMax.
Parameters
| Field | In | Type | Required | Constraints | Description |
|---|---|---|---|---|---|
Content-Type | header | string | Yes | ||
sign | header | string | Yes | 签名信息请参考技术文档 |
Parameter Examples
Content-Type:"application/json"sign:"FPFVT3o227JrFRbqu19boZCpVVTF9KznxyRawUmxpfXilHV/0yK46haPhAjNu1hPUMy7Vw/ILXhfzffNm4Fj0apWknlTY9OJxnSoQxS9BTFtc61tn5yV1q69x/kkBl82/qwg+XTJ4fOzy7Mar3VaC1E2PlDA6RkkKBUyNE6RYgsdB+Su7an4+4HVTNAnoe74WyvBgxTLMNg28igBTdqxaO3w/UBY6ObVp7vkqkQGdL1Y+HgmMYaAVwrM3+ALWGId0sJ+YqTY4WJ+0xCRGhaSnybiIjZsQEYyID68WNUfuavDLDsEhaMm/HfQvf5p0R1Ltovp3wwJnEbQcjY458iX5A=="
Request Body
Content-Type: application/json
| Field | Type | Required | Constraints | Description | Enum |
|---|---|---|---|---|---|
code | string | Yes | maxLength: 8 | Return Code. When the transaction is successful, code: APPLY_SUCCESS | |
msg | string | Yes | maxLength: 256 | Return Message. When the transaction is successful, msg:Success. | |
keyVersion | string | Yes | maxLength: 8 | Signature Algorithm Version, Current value: 1 | |
merchantAppId | string | Yes | maxLength: 64 | Merchant AppId,The unique identifier assigned to the merchant app by PayerMax | |
merchantNo | string | Yes | maxLength: 32 | Merchant Id, the unique identifier generated when the merchant signs the contract with PayerMax | |
notifyTime | string | Yes | maxLength: 32 | Notification time,Compliant with rfc3339 specification, format:yyyy-MM-dd’T’HH:mm:ss.SSSXXX | |
notifyType | string | Yes | maxLength: 16 | Notification Type REPAYMENT_RECEIPT | |
data | object | Yes | |||
data.tradeToken | string | Yes | maxLength: 64 | PayerMax order id. | |
data.outTradeNo | string | Yes | maxLength: 64 | outTradeNo. Note: This is generated by payerMax. | |
data.referenceNo | string | Yes | maxLength: 64 | The merchant's order ID of a transaction. | |
data.payStatus | string | Yes | maxLength: 32 | Payment Status. PAY_SUCCESS | |
data.totalAmount | number | Yes | The payment amount. | ||
data.currency | string | Yes | maxLength: 3 | The payment currency. | |
data.completeTime | string | Yes | maxLength: 32 | The actual payment time of the user. | |
data.paymentSucceedTime | string | No | maxLength: 32 | Payment success time. | |
data.payerMobileNumber | string | Yes | maxLength: 64 | Payer mobile number. | |
data.payerEmail | string | No | maxLength: 64 | Payer email. | |
data.paymentDetails | array[object] | Yes | Payment Details. | ||
data.paymentDetails[].paymentMethodType | string | Yes | maxLength: 16 | The payment method type selected by the user for payment. | |
data.paymentDetails[].targetOrg | string | Yes | maxLength: 32 | The target organisation chosen by the user. |
Example
json
{
"merchantAppId": "04d20279df234fe8871d1da97c781234",
"code": "APPLY_SUCCESS",
"keyVersion": "1",
"merchantNo": "01011382731234",
"msg": "Success.",
"notifyTime": "2024-02-27T10:59:08.295Z",
"notifyType": "REPAYMENT_RECEIPT",
"data": {
"tradeToken": "T20240131032712345123456",
"outTradeNo": "outTradeNo001",
"referenceNo": "TEST100001",
"payStatus": "PAY_SUCCESS",
"totalAmount": 40.85,
"currency": "PHP",
"completeTime": "2024-02-27T11:00:51.185Z",
"paymentSucceedTime": "2024-02-27T11:05:32.124Z",
"payerMobileNumber": "50976123",
"payerEmail": "123@qq.com",
"paymentDetails": [
{
"paymentMethodType": "BILL_PAYMENT",
"targetOrg": "GCASH"
}
]
}
}Responses
200
| Field | Type | Required | Constraints | Description | Enum |
|---|---|---|---|---|---|
code | string | Yes | Return code, ‘SUCCESS’ means success | ||
msg | string | Yes | Return message, ‘Success’ | ||
data | object | No | Retuen data. Note: This data body is optional, but if data is returned, the types and required fields of each field in the data are described below. | ||
data.referenceNo | string | Yes | maxLength: 64 | The merchant's order ID of a transaction. | |
data.tradeToken | string | Yes | maxLength: 64 | PayerMax order id. | |
data.amount | number | Yes | The payment amount. | ||
data.currency | string | Yes | maxLength: 3 | The payment currency. | |
data.confirmation | string | Yes | maxLength: 16 | The result of merchant's credit. Value: "Y" or "N". | |
data.failureReason | string | No | maxLength: 255 | Reason for credit failure. |
Response Example
json
{
"code": "SUCCESS",
"msg": "Success",
"data": {
"referenceNo": "TEST100001",
"tradeToken": "T20240131032712345123456",
"amount": 40.85,
"currency": "PHP",
"confirmation": "Y",
"failureReason": ""
}
}