微信JSAPI支付集成(mobile web)

此文档适用于在h5网页上集成微信支付,例如电商,公众号网页等,仅支持网页在微信中打开的场景,不支持第三方浏览器发起支付。

工作原理

API 请求

端点

https://api.iotpaycloud.com/v1/payForSubmit

方法

POST

头部

Content-Type: application/x-www-form-urlencoded

! 提示

在收到访问凭证(商户 ID、登录名、商户密钥)之后, 您可以按照演示微信浏览器支付在新窗口打开进行测试。 这可能在阅读文档时对您有所帮助。此链接必须在微信浏览器中打开,您可以将链接直接通过聊天窗口发送,或是将链接生成二维码。

参数说明

字段名变量名必填类型示例值描述
商户IDmchIdString(30)20001222支付中心分配的商户号
商户订单号mchOrderNoString(30)20160427210604000490商户生成的订单号,请保证唯一性
币种currencyString(3)CAD仅支持CADUSDCNY
二维码模式qrcode_payint1如果不是要返回二维码,该参数不用传
支付渠道channelIdString(24)WX_JSAPI仅支持WX_JSAPI
支付金额amountint100支付金额,单位分
客户端IPclientIpString(32)210.73.10.148客户端IP地址
支付成功跳转URLreturnUrlString(200)http://xxx.com/success.php支付成功后跳转URL
支付结果回调URLnotifyUrlString(200)http://xxx.com/notify.php支付结果回调URL
商品主题subjectString(64)测试商品商品主题
商品描述信息bodyString(255)xxpay测试商品描述商品描述信息
扩展参数1param1String(64)传入时不要填入备注信息*支付中心回调时会返回mchOrderNo
扩展参数2param2String(64)支付中心回调时会原样返回
附加参数extraString(512)
子账号jobNoString(50)商户登录名
附言remarksString(200)商户的附言
签名signString(32)C380BEC2BFD727A4B6845133519F3AD6签名算法

注意

当notify回传时,参数"mchOrderNo"被放入"param1","param1"在发起订单时不要填入参数,否则回传时被覆盖。

支付完成后,商家后台系统仍需根据notify判断是否支付成功或失败

返回结果

字段名变量名必有类型示例值描述
返回状态码retCodeStringSUCCESS
跳转UrlurlString如果success=true, 跳转到该url
二维码Urlcode_urlString只有qrcode_pay=1才会返回

商户端需要根据code_url生成二维码图片,提示用户保存后用微信打开识别

returnUrlnotifyUrl 中的参数

nametypesampledescription
payOrderIdStringorder id of IOTPay
mchOrderNoStringorder id of merchant
channelOrderNoStringorder id of Alipay/WeChat Pay
statusIntsuccess code: 2 or 3
amountIntin cents
param1String
param2String
上次更新: