服务端开发指南
提示
服务通用规则请参考 请求规则和签算
主查服务
请求域名:
https://cloud-payment.tapapis.cn
接口地址 | Method | 描述 |
---|---|---|
/order/v1/info?client_id={{client_id}}&order_id={{order_id}} | GET | 查询订单信息 |
/order/v1/unconfirmed?client_id={{client_id}} | GET | 查询未核销的订单列表 |
/order/v1/verify?client_id={{client_id}} | POST | 核销订单 |
查询订单信息
服务 URL
https://{{domain}}/order/v1/info?client_id={{client_id}}&order_id={{order_id}}
请求方式
- GET
请求签算
- 详见 请求规则和签算
通过订单 ID 查询订单详细信息和支付状态
curl -X GET \
-H 'X-Tap-Sign: {{signature}}' \
-H 'X-Tap-Ts: {{unix timestamp}}' \
-H 'X-Tap-Nonce: {{random nonce}}' \
https://{{domain}}/order/v1/info?client_id={{client_id}}&order_id={{order_id}}
data.order
对象结构见 订单信息
{
"data": {
"order": {}
},
"success": true
}
查询未核销的订单列表
服务 URL
https://{{domain}}/order/v1/unconfirmed?client_id={{client_id}}
请求方式
- GET
请求签算
- 详见 请求规则和签算
查询当前未核销的订单列表,正常情况下在用户支付成功后,应通过 verify 接口核销订单并同时保证对用户发货成功。如果因异常原因没有完成核销,可以通过此接口查询,重新 verify 并完成发货。
curl -X GET \
-H 'X-Tap-Sign: {{signature}}' \
-H 'X-Tap-Ts: {{unix timestamp}}' \
-H 'X-Tap-Nonce: {{random nonce}}' \
https://{{domain}}/order/v1/unconfirmed?client_id={{client_id}}
data.list
数组内对象结构见 订单信息
{
"data": {
"list": [
{}
]
},
"success": true
}
核销订单
服务 URL
https://{{domain}}/order/v1/verify?client_id={{client_id}}
请求方式
- POST[application/json; charset=utf-8]
请求正文信息
参数名称 | 必填 | 格式 | 描述 |
---|---|---|---|
order_id | Y | string | 订单唯一 ID |
purchase_token | Y | string | 用于订单核销的 token |
请求签算
- 详见 请求规则和签算
当支付成功后,核销订单表示已经确认支付结果并已对买家完成发货,订单状态也 会从 charge.succeeded
变为 charge.confirmed
curl -X POST \
-H 'X-Tap-Sign: {{signature}}' \
-H 'X-Tap-Ts: {{unix timestamp}}' \
-H 'X-Tap-Nonce: {{random nonce}}' \
-H 'Content-Type: application/json; charset=utf-8'
-d '{"order_id":"{{order_id}}","purchase_token":"{{purchase_token}}"}'
https://{{domain}}/order/v1/verify?client_id={{client_id}}
data.order
对象结构见 订单信息
{
"data": {
"order": {}
},
"success": true
}
Webhook 回调
提示
同样的通知可能会多次发送,商户系统必须正确处理重复通知。
推荐做法是:当商户系统收到通知时,首先进行签名验证,然后检查对应业务数据的状态,如未处理,则进行处理;如已处理,则直接返回成功。
在处理业务数据时建议采用数据锁进行并发控制,以避免可能出现的数据异常。
Webhook 说明
目前 Webhook 支持监听「充值成功」「退款成功」「退款失败」事件。对于「充值成功」建议采取主动核销订单,根据订单状态完成发货。
- 需要依次进入 TapTap 开发者中心 > 你的游戏 > 游戏服务 > TapPayment > 商品与订单 > API 密钥,检查是否有已生效的密钥,没有则需要 添加新的密钥
- 需要依次进入 TapTap 开发者中心 > 你的游戏 > 游戏服务 > TapPayment > 商品与订单 > Webhooks 设置 > 添加,添加有效的 充值成功 URL。