APP调起支付
更新时间:2025.03.28服务商(合单发起方)通过APP合单下单接口获取到发起支付的必要参数prepay_id
后,商户APP再通过openSDK(详见安卓/IOS/鸿蒙接入指引)的sendReq方法拉起微信支付。
接口说明
支持商户:【普通服务商】
字段说明
请求参数
PayReq对象
appId
必填 string(32)
【合单服务商APPID】请填写下单时传入的combine_appid
partnerId
必填 string(32)
【合单服务商商户号】请填写下单时传入的combine_mchid
prepayId
必填 string(64)
【预支付交易会话标识】APP合单下单接口返回的prepay_id,该值有效期为2小时,超过有效期需要重新请求APP合单下单接口以获取新的prepay_id。
packageValue
必填 string(128)
【固定值】填写固定值 Sign=WXPay
nonceStr
必填 string(32)
【随机字符串】不长于32位。该值建议使用随机数算法生成。
timeStamp
必填 string(10)
【时间戳】Unix时间戳,是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数。注意:常见时间戳为秒级或毫秒级,该处必需传秒级时间戳。
sign
必填 string(256)
【签名值】使用字段appId、timeStamp、nonceStr、prepayId以及商户API证书私钥生成的RSA签名值,详细参考APP调起支付签名。
请求示例
ios示例代码:
android示例代码:
鸿蒙示例代码:
返回结果值说明
用户从微信收银台返回服务商APP时openSDK会onResp回调,服务商可通过回调errCode参数展示相应支付结果。
注:前端回调并不保证它绝对可靠,不可只依赖前端回调判断订单支付状态,订单状态需以后端查询合单订单和合单订单支付成功回调通知为准。
返回示例
ios示例代码:
android示例代码:
鸿蒙示例代码:
errCode值 | 描述 | 商户APP处理方案 |
---|---|---|
0 | 成功 | 调用后端接口查单,如果订单已支付则展示支付成功页面 |
-1 | 错误 | 可能的原因:签名错误、未注册AppID、项目设置AppID不正确、注册的AppID与设置的不匹配、其他异常原因等。 |
-2 | 取消支付 | 用户取消支付返回App,商户可自行处理展示。 |