# 微信JSAPI支付集成(mobile web)
此文档适用于在h5网页上集成微信支付,例如电商,公众号网页等,仅支持网页在微信中打开的场景,不支持第三方浏览器发起支付。
# 请求URL
服务地址: https://api.iotpaycloud.com/v1/payForSubmit
请求方式:
- POST
- Content-Type: application/x-www-form-urlencoded
# 参数说明
字段名 | 变量名 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
商户ID | mchId | 是 | String(30) | 20001222 | 支付中心分配的商户号 |
商户订单号 | mchOrderNo | 是 | String(30) | 20160427210604000490 | 商户生成的订单号,请保证唯一性 |
币种 | currency | 是 | String(3) | CAD | 三位货币代码,加币:CAD |
二维码模式 | qrcode_pay | 否 | int | 1 | 如果不是要返回二维码,该参数不用传 |
支付渠道 | channelId | 是 | String(24) | WX_JSAPI | 见支付渠道参数 |
支付金额 | amount | 是 | int | 100 | 支付金额,单位分 |
客户端IP | clientIp | 是 | String(32) | 210.73.10.148 | 客户端IP地址 |
支付成功跳转URL | returnUrl | 是 | String(200) | http://xxx.com/success.php | 支付成功后跳转URL |
支付结果回调URL | notifyUrl | 是 | String(200) | http://xxx.com/notify.php | 支付结果回调URL |
商品主题 | subject | 是 | String(64) | 测试商品 | 商品主题 |
商品描述信息 | body | 是 | String(255) | xxpay测试商品描述 | 商品描述信息 |
扩展参数1 | param1 | 否 | String(64) | 传入时不要填入备注信息*支付中心回调时会返回mchOrderNo | |
扩展参数2 | param2 | 否 | String(64) | 支付中心回调时会原样返回 | |
附加参数 | extra | 否 | String(512) | ||
子账号 | jobNo | 是 | String(50) | 商户登录名 | |
附言 | remarks | 否 | String(200) | 商户的附言 | |
签名 | sign | 是 | String(32) | C380BEC2BFD727A4B6845133519F3AD6 | 签名值,详见签名算法 |
注意
当notify回传时,参数"mchOrderNo"被放入"param1","param1"在发起订单时不要填入参数,否则回传时被覆盖。
支付完成后,商家后台系统仍需根据notify判断是否支付成功或失败
# 返回结果
字段名 | 变量名 | 必有 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
返回状态码 | retCode | 是 | String | SUCCESS | |
跳转Url | url | 是 | String | 如果success=true, 跳转到该url | |
二维码Url | code_url | 否 | String | 只有qrcode_pay=1才会返回 |
商户端需要根据code_url生成二维码图片,提示用户保存后用微信打开识别
# parameters passed to returnUrl and notifyUrl
name | type | sample | description |
---|---|---|---|
payOrderId | String | order id of IOTPay | |
mchOrderNo | String | order id of merchant | |
channelOrderNo | String | order id of Alipay/Wechat Pay | |
status | Int | success code: 2 or 3 | |
amount | Int | in cents | |
param1 | String | ||
param2 | String |
# JSAPI web下单测试
下单测试(请用微信打开此网页)点击这里
源码下载 点击这里