1.
Exclude the sign field from the notification return parameter list. The remaining parameters need to be signed. If the value of a field is null
, then treat this value as a null
string and also sign it
2.
Perform url_decode on the remaining parameters (use the & symbol link in the middle), then sort the dictionary (according to the ascii code from small to large), form a string, and get the string to be signed
3.
Then add (&sign={app_secret}) to the end of the string to be signed. For how to get it, please refer to the Prerequisites section 4.
Finally, use the MD5 digest algorithm to generate the signature string (32 uppercase characters)
5.
After getting the final string, compare it with the sign field in the notification message. If they are consistent, the signature verification is successful
orderId: order id, which will be returned after calling the purchase interface
sign field: used for signature verification. For security reasons, it is recommended that you verify the signature
1 Waiting for shipment, now status 1 will also be pushed, which means that the order purchase is successful
3 Waiting for receipt, which means that you can notify the users of your platform to accept the quotation
11 Order cancellation or order failure
statusName: Order status description
offerId: offerId of the CS2DT platform, also can only be returned when the status is 3. You can use the query quotation status interface /open/offer/v1/status to get more information. For example, the steam accounts of both parties in the quotation, and the jewelry information in the quotation, etc.
outTradeNo: merchant order number, this parameter can be passed in when using the v2 version of the purchase interface, and it will be returned together when the callback notification is sent
type: 0 indicates that it is a callback message of the purchase order type
typeName: BUYER_ORDER_STATUS indicates that it is a callback message of this type