Appearance
网关支付接口 ¶
提示
业务系统通过收银台下单接口创建一个支付链接,链接可以是一个收银台也可以是一个聚合支付的链接,用户访问链接可以完成支付操作。使用该接口可以简化支付接入的流程, 减少开发工作量的同时也可以提高用户体验。
同样的商户订单号如果未开始支付时可以重复提交,但重复提交时参数需要与首次下单的数值一致,传输不同的值也不会生效,返回的地址也不会改变。 如果已经进入支付中状态,将不允许重复使用。
接口说明 ¶
参数 | 说明 |
---|---|
请求URL | /unipay/gateway/prePay |
请求方式 | POST |
请求类型 | application/json |
请求参数 ¶
业务参数 ¶
提示
设置参数时,不要忘了设置公共请求参数调用说明,未做特殊说明所有接口都需要传输
字段名 | 变量名 | 必填 | 类型 | 长度 | 示例值 | 描述 |
---|---|---|---|---|---|---|
商户订单号 | bizOrderNo | 是 | String | 100 | 123 | 支付时客户系统传输的业务单号,需要保证唯一,可以为字符文字组合,不要包含特殊符号,订单号不可重复 |
支付标题 | title | 是 | String | 100 | 测试支付 | |
支付描述 | description | 否 | String | 500 | 测试支付的描述 | |
网关支付类型 | gatewayPayType | 是 | String | 32 | h5 | 所需要进行网关支付的方式,如PC收银台、H5收银台、聚合支付等,见常量和状态表网关支付类型相关的描述 |
开启分账 | allocation | 否 | Boolean | true | 订单是否允许分账,不传输为不开启 | |
开启自动分账 | autoAllocation | 否 | Boolean | false | 是否自动对支付订单进行分账,需要开启分账字段为true才会生效 | |
过期时间 | expiredTime | 否 | Long | 2024-10-24 12:00:00 | 订单过期时间,格式为yyyy-MM-dd HH:mm:ss,不传输为默认值,默认为当前时间往后加24小时。 | |
限制用户支付类型 | limitPay | 否 | String | 128 | no_credit | 限制用户支付类型, 目前支持限制信用卡,部分通道才会有效,见常量和状态表限制支付类型 |
支付金额 | amount | 是 | BigDecimal | 8,2 | 10.12 | 要进行支付的金额,单位为元,保留两位小数,小数buff末尾不可为0 |
用户标识 | openId | 否 | String | 128 | wxgj22ed144df11 | 主要用于Jsapi、小程序支付等需要用户标识才可以支付的场合 |
终端设备编码 | terminalNo | 否 | String | 128 | Hvbvdfg | 使用被扫支付方式,部分通道要求传输扫码终端号,此处的设备为在Daxpay中管理并进行报备的终端 |
附加支付参数 | extraParam | 否 | String | 2048 | 主要用于传输各通道特有的参数数据 | |
商户扩展参数 | attach | 否 | String | 500 | id=123332 | 商户扩展参数,回调时会原样返回 |
同步请求地址 | returnUrl | 否 | String | 200 | http://abc.cn/returnCallback | 支付完成后,会自动跳转到设置的页面,部分场景下才会生效 |
异步通知地址 | notifyUrl | 否 | String | 200 | http://abc.cn/noticeCallback | 异步通知地址,用于商户系统接收回调消息通知 |
响应结果 ¶
业务响应参数 ¶
提示
业务数据包裹在公共响应参数
中的data
字段,在code
为0
时才会有返回数据。
字段名 | 变量名 | 必传 | 类型 | 示例值 | 描述 |
---|---|---|---|---|---|
网关支付链接 | url | 否 | String | https://daxpay.cn/gateway/cashier/M1723635576766/M8207639754663343 | |
收银台发起信息 | payBody | 否 | String | 暂时未使用 |
HTTP请求示例 ¶
请求参数 ¶
json
{
"bizOrderNo" : "SDK_1744265454155",
"title" : "测试网关支付",
"description" : "这是支付备注",
"gatewayPayType" : "h5",
"allocation" : false,
"amount" : 0.01,
"attach" : "{回调参数}",
"returnUrl" : "https://abc.com/returnurl",
"notifyUrl" : "http://127.0.0.1:10880/test/callback/notify",
"mchNo" : "M1723635576766",
"appId" : "M8207639754663343",
"clientIp" : "127.0.0.1",
"sign" : "eb59486bbf2a4eb9affcf7c11791ad85",
"reqTime" : "2025-04-10 14:10:54"
}
响应参数(成功) ¶
json
{
"code" : 0,
"msg" : "success",
"data" : {
"url" : "https://daxpay.cn/cashier/DEV_P2025041013564470000005"
},
"sign" : "15ab925d8720298edc2b6b5475ee173b",
"resTime" : "2025-04-10 13:56:45",
"traceId" : "3dVxYnUfMkj7"
}
响应参数(失败) ¶
json
{
"code": 20030,
"msg": "暂不支持小程序收银台",
"sign": "889c3cf302be9c6a1531d97bea459ef2",
"resTime": "2025-04-10 14:03:16",
"traceId": "zCETNESCxgYp"
}
SDK请求示例 ¶
提示
使用SDK可以简化接入支付的速度
java