WeChat Pay
微信H5支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付。
沙箱环境说明
请注意,沙箱环境在每日18:00之后将停止服务,届时任何调用操作都将无法成功执行。若需在该时间之后进行测试,请提前做好相应安排,或联系技术支持团队获取更多帮助。
支付方式属性
属性 | 内容 |
---|---|
消费者货币 | HKD |
处理货币 | HKD |
结算货币 | USD |
类型 | wechatpayup |
最小交易金额 | 1 HKD |
最大交易金额 | 单笔交易限额为3.8万港元,全年累计交易限额为40万港元 |
会话超时 | 60分钟 |
退款类型 | 支持全额退款、部分退款和多次部分退款 |
退款有效期 | 360 天 |
拒付支持 | 无 |
集成类型 | 异步 |
交易流程
- 用户在商户侧完成下单,使用微信支付进行支付
- 由商户后台向微信支付发起下单请求(调用统一下单接口)
- 统一下单接口返回支付相关参数给商户后台,如支付跳转url,商户通过调起微信支付中间页
- 中间页进行H5权限的校验,安全性检查
- 如支付成功,商户后台会接收到微信侧的异步通知
- 用户在微信支付收银台完成支付或取消支付,返回商户页面
- 商户在展示页面,引导用户主动发起支付结果的查询
- 商户后台判断是否接到收微信侧的支付结果通知,如没有,后台调用我们的订单查询接口确认订单状态
- 展示最终的订单支付结果给用户
集成
请求参数说明:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
reference | String | 是 | 订单唯一标识 |
amount | Object | 是 | 订单金额信息 |
├── currency | String | 是 | 货币类型(如 HKD) |
├── value | Number | 是 | 金额数值,单位为最小货币单位 |
productDetail | String | 否 | 订单描述 |
countryCode | String | 是 | 国家代码 |
origin | String | 是 | 订单来源,如商城域名 |
paymentMethod | Object | 是 | 支付方式信息 |
├── holderName | String | 否 | 持卡人姓名 |
├── shopperEmail | String | 否 | 付款人邮箱 |
├── type | String | 是 | 支付方式(如 wechatpayup) |
returnUrl | String | 是 | 支付完成后返回的 URL |
browserInfo | Object | 否 | 设备浏览器信息(如不指定该信息,则会获取userAgent信息判断消费者终端信息) |
├── osType | String | 否 | 操作系统类型(如 IOS, ANDROID,OTHER) |
├── terminalType | String | 否 | 终端类型(如 APP, WAP,WEB,MINI_APP) |
shopperReference | String | 是 | 付款人唯一标识 |
lineItems | Array | 否 | 商品详情列表 |
├── name | String | 否 | 商品名称 |
├── description | String | 否 | 商品描述 |
交易调用输入示例
{
"reference": "9B6F974D3DB8436AA2B139551933FF08",
"amount": {
"currency": "HKD",
"value": 100
},
"lineItems": [
{
"name": "商品名称",
"description": "商品描述"
}
],
"countryCode": "HK",
"origin": "fffmall.com",
"paymentMethod": {
"holderName": "John Doe",
"shopperEmail": "[email protected]",
"type": "wechatpayup"
},
"returnUrl": "https://wallet.futurepay-develop.com/api/PayNotify/paymentSynchronous/business_merchant_id/1/order_id/2115",
"shopperReference": "FP3d9bcb7a0cf84b80bfc814e1cc43c613"
}
响应参数说明
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
code | String | 是 | 响应状态码,"0" 表示成功 |
msg | String | 是 | 响应消息 |
serverTime | Number | 是 | 服务器时间戳,单位毫秒 |
data | Object | 是 | 业务数据对象 |
├── action | Object | 是 | 支付跳转相关信息 |
│ ├── paymentMethodType | String | 是 | 支付方式类型(wechatpayup) |
│ ├── schemeUrl | String | 否 | 支付宝 scheme URL(用于 App 内支付) |
│ ├── applinkUrl | String | 否 | 支付宝 App 链接 URL(用于外部浏览器跳转) |
│ ├── payUrl | String | 是 | FuturePay构建付款链接兼容APP/WAP/WEB |
│ ├── url | String | 是 | Web 端支付 URL |
│ ├── qrCode | String | 否 | 付款二维码值(需将二维码值构建为二维码) |
│ ├── method | String | 是 | 请求方法(如 Get) |
│ ├── type | String | 是 | 操作类型(如 redirect) |
├── amount | Object | 是 | 订单金额信息 |
│ ├── currency | String | 是 | 货币类型(如 HKD, USD) |
│ ├── value | Number | 是 | 金额数值,单位为最小货币单位 |
├── merchantReference | String | 是 | 商户订单号 |
├── pspReference | String | 是 | 支付平台交易号 |
├── resultCode | String | 是 | 支付结果状态(如 PENDING) |
success | Boolean | 是 | 是否成功(true 表示成功) |
交易调用输出示例
{
"code": "0",
"msg": "success",
"serverTime": 1728633576429,
"data": {
"action": {
"paymentMethodType": "wechatpayup",
"url": "https://r2.girogate.de/molpay/S1389/I?tx=2334590813&rs=ZMQklSaGdmdZw9NTiM16xen8591YbjuY&cs=e1f62ec550918e3471308d9e34a830e3d7f22dc40690616190a9c16d8f653049",
"method": "Get",
"type": "wechatpayup"
},
"amount": {
"currency": "HKD",
"value": 100
},
"merchantReference": "9B6F974D3DB8436AA2B139551933FF08",
"pspReference": "1844649030089572352",
"resultCode": "PENDING"
},
"success": true
}
Updated 15 days ago