POST /open/api/v1/sdk/checkouts/:id/confirm-payment
鉴权:接入方后台 HMAC
调用方:接入方后台
功能描述
接入方后台核验微信通知、商户号、流水和实付金额之后再调用。成功后创建已支付履约订单。请求体没有收货地址,订单使用创建结算时锁定的地址。同一笔支付重试时,五个字段必须和第一次完全一致。发货前改地址请调用同步订单地址。
参数
路径参数
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
id | string | 是 | 结算会话号 checkout_id。 |
Object object
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
external_user_id | string | 是 | 付款用户的唯一 ID,最长 128。 | |
partner_order_no | string | 是 | 接入方订单号,最长 64。同一笔支付不要换号。 | |
transaction_id | string | 是 | 已核验的微信支付流水,最长 128。 | |
paid_amount_cent | number | 是 | 用户实付金额,单位分,不能为 0。 | |
paid_at | string | 是 | 真实支付时间,带时区的 ISO 8601,且必须落在结算会话有效期内。 |
返回值
成功时 code 为 0,下面的字段在 data 里。
Object data
| 属性 | 类型 | 默认值 | 必填 | 说明 |
|---|---|---|---|---|
checkout_id | string | 是 | 结算会话号。 | |
status | string | 是 | 确认为 paid。 | |
sale_amount_cent | number | 是 | 参考售价,单位分。 | |
order_no | string | 是 | 履约订单号。 | |
expires_at | string | 是 | 结算会话过期时间。 |
示例代码
curlbash
# 先设置 CHANNEL_ACCESS_KEY、CHANNEL_SECRET_KEY,并按接口说明计算 signature
curl --request POST 'https://api.channel.suiinn.com/open/api/v1/sdk/checkouts/checkout-id/confirm-payment' \
--header 'X-Channel-Key: $CHANNEL_ACCESS_KEY' \
--header 'X-Channel-Timestamp: $timestamp' \
--header 'X-Channel-Nonce: $nonce' \
--header 'X-Channel-Signature: $signature' \
--header 'Content-Type: application/json' \
--data-raw '{
"external_user_id": "your-user-id",
"partner_order_no": "P202601010001",
"transaction_id": "4200000000000000",
"paid_amount_cent": 9900,
"paid_at": "2026-01-01T00:00:00+08:00"
}'