Skip to content

网关付款码聚合支付接口

提示

业务系统通过直接传输付款码,系统自动识别付款码类型后,根据后台网关支付的配置的通道和支付方式进行处理,完成付款码的支付流程。

接口说明

参数说明
请求URL/unipay/gateway/aggregateBarPay
请求方式POST
请求类型application/json

请求参数

业务参数

提示

设置参数时,不要忘了设置公共请求参数调用说明,未做特殊说明所有接口都需要传输

字段名变量名必填类型长度示例值描述
商户订单号bizOrderNoString100123支付时客户系统传输的业务单号,需要保证唯一,可以为字符文字组合,不要包含特殊符号,订单号不可重复
支付标题titleString100测试支付
付款码authCodeString1286117665200152被扫支付方式所需要传输的参数
终端设备编码terminalNoString128Hvbvdfg使用被扫支付方式,部分通道要求传输扫码终端号,此处的设备为在Daxpay中管理并进行报备的终端
支付描述descriptionString500测试支付的描述
开启分账allocationBooleantrue订单是否允许分账,不传输为不开启
开启自动分账autoAllocationBooleanfalse是否自动对支付订单进行分账,需要开启分账字段为true才会生效
过期时间expiredTimeLong2024-10-24 12:00:00订单过期时间,格式为yyyy-MM-dd HH:mm:ss,不传输为默认值,默认为当前时间往后加24小时。
限制用户支付类型limitPayString128no_credit限制用户支付类型, 目前支持限制信用卡,部分通道才会有效,见常量和状态表限制支付类型
支付金额amountBigDecimal8,210.12要进行支付的金额,单位为,保留两位小数,小数buff末尾不可为0
附加支付参数extraParamString2048主要用于传输各通道特有的参数数据
商户扩展参数attachString500id=123332商户扩展参数,回调时会原样返回
异步通知地址notifyUrlString200http://abc.cn/noticeCallback异步通知地址,用于商户系统接收回调消息通知

响应结果

业务响应参数

提示

业务数据包裹在公共响应参数中的data字段,在code0时才会有返回数据。

字段名变量名必传类型示例值描述
网关支付链接urlStringhttps://daxpay.cn/gateway/cashier/M1723635576766/M8207639754663343
收银台发起信息payBodyString暂时未使用

HTTP请求示例

请求参数

json
{
  "bizOrderNo" : "SDK_1744355882930",
  "title" : "测试聚合付款码支付",
  "description" : "这是支付备注",
  "authCode" : "66888",
  "terminalNo" : "66888",
  "allocation" : false,
  "amount" : 0.01,
  "attach" : "{回调参数}",
  "notifyUrl" : "http://127.0.0.1:10880/test/callback/notify",
  "mchNo" : "M1723635576766",
  "appId" : "M8207639754663343",
  "clientIp" : "127.0.0.1",
  "sign" : "59525a1c1c503257b0dbb32dba02afe4",
  "reqTime" : "2025-04-11 15:18:02"
}

响应参数(成功)

json
{
    "code": 0,
    "msg": "success",
    "data": {
        "bizOrderNo": "SDK_1744185809447",
        "orderNo": "DEV_P2025040916033370000024",
        "status": "success"
    },
    "sign": "4a1308f097398c01c06a84ef11fc6eba",
    "resTime": "2025-04-09 16:03:35",
    "traceId": "foX7glq8rSMg"
}

响应参数(失败)

json
{
  "code": 20080,
  "msg": "不支持的条码类型",
  "sign": "061d3dd13a6f9bc5b1d62322d2398f1a",
  "resTime": "2025-04-11 15:17:13",
  "traceId": "4zXFpI0ZkBQM"
}

SDK请求示例

提示

使用SDK可以简化接入支付的速度

java
public void aggregateBarPay(){
        AggregateBarPayParam param = new AggregateBarPayParam();
        param.setClientIp("127.0.0.1");
        param.setBizOrderNo("SDK_"+ System.currentTimeMillis());
        param.setTitle("测试聚合付款码支付");
        param.setDescription("这是支付备注");
        param.setAmount(BigDecimal.valueOf(0.01));
        param.setAttach("{回调参数}");
        param.setAllocation(false);
        param.setTerminalNo("66888");
        param.setAuthCode("66888");
        param.setNotifyUrl("http://127.0.0.1:19999/test/callback/notify");
        DaxResult<PayResult> execute = DaxPayKit.execute(param);
        // 验签
        System.out.println("验签结果: " + DaxPayKit.verifySign(execute));
        System.out.println(JsonUtil.toJsonStr(execute));
    }
本文档内容版权属于济南易杯光年软件技术有限公司