沙箱订单查询
该系统分为两种用例类型:支付成功用例与支付异常用例。请严格按照用例的顺序、金额执行用例,确保用例的检查点完全符合预期。 支付成功用例根据测试用例金额的不同返回不同的响应报文,支付异常用例的识别将通过 Http Header 中添加异常头 Wechatpay-Negative-Test: {用例名}
识别。沙箱系统将通过识别用例名返回对应的异常信息。 官方文档
js
wxpay.v2.xdc.apiv2sandbox.pay.orderquery.post({
mch_id,
appid,
out_trade_no,
}, { headers, timeout })
.then(
({
data: {
return_code,
result_code,
trade_type,
total_fee,
cash_fee,
coupon_fee,
out_trade_no,
transaction_id,
}
}) => total_fee
)
重要提示
- wxpay 构造实例化时,需要显式初始化 secret 字段,此为沙箱环境密钥,即前序获取沙箱环境密钥获取到的 sandbox_signkey;
- 请求参数的appid为任意值,官方沙箱环境未做要求,也无需有绑定关系;
- 此接口仅支持以商户订单号out_trade_no查询;
- 支付成功用例仅代表前序沙箱付款码支付受理成功,用户支付行为是一个异步过程,是否完成,需要通过此接口二次确认交易真实完成,即:
- 【付款码-正常】订单金额0.01元,用户支付成功
- 【付款码-正常】订单金额0.02元(含0.01元代金券),用户支付成功
- 【付款码-正常】订单金额0.03元(含0.01元代金券和0.02元免充值现金券),用户支付成功
- 支付异常用例通过此接口的第二参数 headers 字段进行验证,为可选字段,按需显式传递 Wechatpay-Negative-Test 对应的用例名称,即:
- MICROPAY_USERPAYING 用户未支付完成
- MICROPAY_TIMEOUT 用户支付成功,微信支付返回超时(客户端超时时间请设置在 500ms 以内)
- MICROPAY_PAYERROR 用户支付失败,微信支付返回超时(客户端超时时间请设置在 500ms 以内)
- MICROPAY_PAY_QUERY_TIMEOUT 微信支付返回超时,且查单失败
- 支付异常用例中要求限定客户端超时时间的,通过此接口第二参数 timeout 传递,按需显式设置;
- 此接口有QPS限制(官方未公布),高频请求会被官方重定向到腾讯公益404页面;