Order Accumulation Mode - Payment Callback

When the payment for an accumulated order is successful but the order amount is not met, the merchant will be notified.

Brief Description

  • After the payment for an accumulated order is completed but the order amount is not met, the payment result and user information will be sent to the merchant in JSON format. The merchant must receive and process the information and return a response according to the document specifications.
  • The same notification may be sent to the merchant multiple times. Merchants must be able to properly handle duplicate notifications.
  • During backend notification interaction, if the merchant's HTTP response is not equal to 200 and the response content contains "success," the notification will be considered failed and resent. Multiple notifications will be sent in total. The notification frequency is every 2 minutes for orders within 10 minutes, every 10 minutes for orders within 1 hour, and every hour for orders within 12 hours.
  • The merchant system must perform signature verification on the payment result notification content and verify that the returned order amount is consistent with the merchant's order amount to prevent data leaks and "false notifications" that may result in financial losses.
  • When receiving a notification and processing it, first check the status of the corresponding business data to determine whether the notification has been processed. If not, then process it. If it has been processed, directly return a success result. Before checking and processing the business data status, use data locks for concurrency control to avoid data corruption caused by function reentrancy.
  • If all field values โ€‹โ€‹are null or "", they are not included in the signature.

Callback Parameters:

Parameter NameSignature VerificationTypeLengthDescription
allPayCryptoVolumeYstring16Total amount of all payment cryptocurrencies
hashYstring256Transaction hash value
merchantOrderNoYstring64Merchant order number
orderCryptoVolumeYstring16Total amount of order cryptocurrencies
orderNoYstring64Order number
payCryptoCurrencyYstring32Payment cryptocurrency
payCryptoNetworkYstring32Payment cryptocurrency network
payCryptoVolumeYstring16Amount of cryptocurrency paid
payNoYstring64Payment order number
payTimeYstring64Payment time (UTC+8, format yyyy-MM-dd HH:mm:ss)
remainingCryptoVolumeYstring16Remaining amount of cryptocurrency to be paid
statusYstring32Order status
signNstring256Signature

Callback Status

statusExplanation
PROCESSINGWaiting for payment of remaining cryptocurrency

Callback Parameter Example

{
    "allPayCryptoVolume": "0.6",
    "hash": "0x756c76d32weweb16b7a2cb0f1weweeba836",
    "merchantOrderNo": "54674542ewwe786",
    "orderCryptoVolume": "1",
    "orderNo": "we",
    "payCryptoCurrency": "USDT",
    "payCryptoNetwork": "BSC",
    "payCryptoVolume": "0.2",
    "payNo": "300317wee55we99924731312",
    "payTime": "2025-08-14 16:29:56",
    "remainingCryptoVolume": "0.4",
    "sign": "247342F9678BA59ECdsdsds4D5",
    "status": "PROCESSING"
}