Skip to main content

检查支付状态

步骤 1:获取访问令牌 ​

请参考 访问令牌 了解如何获取 访问令牌, 然后将其放入请求头 Authorization.

步骤 2:准备请求参数 ​

生成 nonceStr 和 timestamp, 它们将放入请求头并用于生成签名 签名.

参数 类型 必填 描述 示例
nonceStr 字符串 是 随机字符串 7a70f55482a5566c
timestamp 字符串 是 请求的 UNIX 时间戳 1667061151361

请求参数 ​

参数 类型 必填 描述 示例
交易 ID 字符串 否 交易 ID
商户订单 ID 字符串 否 交易对应的商户订单 ID A20221111
类型 字符串 是 [1 = 支付, 2 = 代付] 1

transactionId 或 merchantOrderId 至少需提供一个。

请求示例

{
"transactionId": "10310",
"type": 1
}

使用 merchantOrderId 的请求示例

{
  "merchantOrderId": "A20221111",
  "type": 1
}

按字母顺序排序 JSON 键并压缩格式

信息

{"transactionId": "10310", "type": 1}

将数据编码为 Base64 格式

信息

eyJjdXN0b21lciI6eyJuYW1lIjoiTGVvbiBUYW4iLCJwaG9uZSI6IjAxMjM0NTY3ODkiLCJlbWFpbCI6Imxlb25AZ2dncGF5Lm9yZyJ9LCJtZXRob2QiOiJGUFgiLCJvcmRlciI6eyJpZCI6IkEyMDIyMTExMSIsInRpdGxlIjoiUGF5bWVudCIsImFtb3VudCI6Ijg4LjUwIiwiY3VycmVuY3lUeXBlIjoiTVlSIiwiYWRkaXRpb25hbERhdGEiOiIifX0=

使用 CLIENT_SYMMETRIC_KEY 加密 Base64 数据

信息

e4e9ac1120ed867a7af108af8b1ab9183319f8a334bcdbbea47232359ae0a5c9c4ad1e46450ef4b36775aeb624b14b722a6884abd9b1f7572f1fdb33ce7a8bfec3d69d3e2e1aa77487c55b181613bfbef1028c8da984f5b59c8d6241eefcaf70

步骤 3:生成签名 ​

请参考 签名算法 了解如何获取签名, 并将其放入请求头 X-Signature.

步骤 4:POST 到 /gateway/v1/getTransactionStatusById 端点

方法 : POST

端点: https://api.superpay.club/gateway/v1/getTransactionStatusById

请求 ​

请求头 ​

参数 类型 描述
Authorization 字符串 Token 步骤 1 获取
X-Nonce-Str 字符串 nonceStr 步骤 2 获取
X-Timestamp 字符串 timestamp 步骤 2 获取
X-Signature 数字 signature 步骤 3 获取

请求体 ​

参数 类型 描述 示例
data 字符串 使用 CLIENT_SYMMETRIC_KEY 加密的数据 e4e9ac1127af1...b59c8d62af70

请求头与 Body 示例

{
"headers": {
"Authorization": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHBJZCI6IjEwMDIOjE2NjczMTYwOTJ9.UnVBt6Opxd_ZOMns1gCT40Ihdj1nbndi2V43Xt3fIuE",
"X-Nonce-Str": "7a70f55482a5566c",
"X-Timestamp": "1667061151361",
"X-Signature": "sha256 zOzjz8QoGTbesuAO5CCFbPCF3EMDtohKtkQPro8O61jbXhurgl+wIYzTv1BQPB6z1+bRn7gXx1YpsItk+Zed+Wd9PqmexoGdDrAAoUKjCcMks9g0/kiVui381jscVAyCUzdMtkW25P4QyTeq5+ES7D66j/Jwk+9JqYXhMnX5aAUdMjlrADp1RC1zrZUc1Mfqs+MA26J3X5uQ8xLhh9FaAhDdoyWctKQSTHZyMVuDtmFaGdzaGI3LCWm5w1gvtHC43mTMccc3WrlirYbDrZvN2c81cNMfRJjgJZNnjjY27OAMvGsJJgpo0b+EW4UO74QzZ2VI60fgf7uIajIOgQRzzA=="
},
"body": {
"data": "e4e9ac1120ed867a7af108af8b1ab918cbec6db7b4d7c29908085a73e2b29e97547da6eae91928b3330241f1fb898eebd8c3355105fdd5c68b6ceea761f41dc3085ed888d3c0473beef128ebd208c4f60299df64a622d04d21d81513c02e2d47bfcce2a6c246eabcc1c823aaf3d9133004cf7c4c08236395a05dc19a98c33a301c8b73d4e7fd33cd911619de86dfdb45"
}
}

响应 ​

请求体 ​

参数 类型 描述 示例
code 字符串 业务响应代码,字符串格式:"1" 表示成功,"0" 表示失败。不是 HTTP 状态码。 "1"
encryptedData 字符串 需使用 CLIENT_SYMMETRIC_KEY 解密的加密数据 a83cf72884cbbb....3ddf0744646e0cf0b482
message String 此请求的信息明文 'Success'

响应示例

{
"code": "1",
"encryptedData": "e4e9ac1120ed867a7af108af8b1ab918cbec6db7b4d7c29908085a73e2b29e97547da6eae91928b3330241f1fb898eebd8c3355105fdd5c68b6ceea761f41dc3085ed888d3c0473beef128ebd208c4f60299df64a622d04d21d81513c02e2d47bfcce2a6c246eabcc1c823aaf3d9133004cf7c4c08236395a05dc19a98c33a301c8b73d4e7fd33cd911619de86dfdb45",
"message": "Success"
}

步骤 5:使用 CLIENT_SYMMETRIC_KEY 解密 encryptedData ​

对称方式解密 encryptedData, e4e9ac1120ed867a7af108af8b1ab918cbec6db7b4d7c29908085a73e2b29e97547da6eae91928b3330241f1fb898eebd8c3355105fdd5c68b6ceea761f41dc3085ed888d3c0473beef128ebd208c4f60299df64a622d04d21d81513c02e2d47bfcce2a6c246eabcc1c823aaf3d9133004cf7c4c08236395a05dc19a98c33a301c8b73d4e7fd33cd911619de86dfdb45
使用 CLIENT_SYMMETRIC_KEY, PCd1dlEmFnBXaVce06Pzp7Vike0oHnVJ

明文结果如下

{
"data": {
"status": "SUCCESS",
"transaction": {
"id": 10310,
"amountPaid": 124.1,
"confirmedAt": "2022-10-28T16:15:58.314Z",
"paymentMethod": "CIMB_MY",
"commissionFee": 3.1025
},
"order": {
"id": "20220918020002",
"amount": 124.1,
"currencyType": "MYR"
},
"customer": {
"name": "114",
"phone": "0123456789",
"email": "longwan@gmail.com"
}
}
}

解密后载荷参数 ​

参数 类型 必填 描述 示例
data 对象 是 支付回调解密后的顶层对象。 {...}
data.status 字符串 是 当前交易状态。可能的值包括 PAYING、PENDING、SUCCESS 和 FAILED。 SUCCESS
data.transaction 对象 是 支付回调中的交易详情对象。 {...}
data.transaction.id 数字 是 此次回调对应的 SuperPay 交易 ID。 10310
data.transaction.amountPaid 数字 是 充值 / 支付交易总支付金额,包含交易手续费。 124.1
data.transaction.confirmedAt 字符串 / 空值 是 支付确认时间;交易成功前该值可能为 null。 2022-10-28T16:15:58.314Z
data.transaction.paymentMethod 字符串 / 空值 是 完成该笔交易所使用的支付方式代码。 CIMB_MY
data.transaction.commissionFee 数字 是 SuperPay 收取的交易手续费。 3.1025
data.transaction.payer_name 字符串 / 空值 否 支付服务商返回的付款人或买家姓名。目;其他情况为 null。 Long Wan
data.transaction.failedRemark 字符串 / 空值 是 经脱敏处理的拒绝或失败原因。若交易未失败,此字段为 null。 Payment expired before the user completed it.
data.order 对象 是 与该交易关联的商户原始订单信息。 {...}
data.order.id 字符串 是 创建订单时提交的商户订单 ID。 20220918020002
data.order.amount 数字 是 商户原始请求金额。 124.1
data.order.currencyType 字符串 是 订单金额的货币代码。 MYR
data.customer 对象 是 支付交易关联的客户信息。 {...}
data.customer.name 字符串 / 空值 是 客户或付款人姓名。 114
data.customer.phone 字符串 / 空值 是 客户手机号。 0123456789
data.customer.email 字符串 / 空值 是 客户邮箱地址。 longwan@gmail.com