聚合公众号支付API

业务功能

测试url:
http://47.95.131.62:8080/api/v1/pay/polymeric/jsapipay

请求参数(O-非必传 ,M-必传):

参数 参数名称 类型 参数说明 样例 可空
trade_type 支付方式 String 微信支付:WX 支付宝支付:ALI 银联二维码支付:UNIONQR WX M
merch_no 商户编号 String 商户在SaaS平台的编号 a10253390 M
channel_no (支付宝/微信)渠道号 String 服务商通过海科在(支付宝/微信)申请的渠道编号 O
channel_merch_no 渠道商户编号 String 商户在(支付宝/微信)申请的编号 O
out_trade_no 服务商交易订单号 String 服务商的交易订单编号(同一服务商下唯一) 161018121614000624679888 M
total_amount 订单金额 String 订单总金额,以元为单位 100 M
userid 用户唯一标识 String (支付宝/微信/银联二维码)的用户唯一标识 M
qrCode 二维码地址 String 银联二维码交易必填,qrCode必传的值是展示的行业码的内容的值。例如:扫码点餐场景下,qrCode就是传桌面上张贴的二维码的url值 M
userAuthCode 用户授权码 String 银联二维码交易必填,用户授权码 M
appid 微信公众号appid String 微信交易必须上送 O
ledger_type 分账类型 String 不传默认不分账
REALTIME_SETTLE:实时分账
DELAY_SETTLE:延时分账
如果上送此字段,需要保证服务商分账业务已开通,否则不允许交易 O
ledger_relation 分账交易关系组 JSONArray 分账交易关系组(v1.18增加) 如果上送此字段,需要保证服务商分账业务已开通,否则不允许交易 O
notify_url 通知地址 String 支付成功后的通知地址 http://test.mdun.cn/jd/pay/notice O
sn 厂商终端号 String (v1.05增加) O
pn SAAS终端号 String SAAS终端号 若使用海科商户后台或绑定海科语音设备则上送pn值,pn值通过终端绑定接口获得 O
remark 交易备注 String(255) (v1.05增加) O
limit_pay 限制贷记卡支付 String (v1.19增加)
0:不限制贷记卡支付
1:禁止使用贷记卡支付。
不上送此参数时,limit_pay默认为0,即:不限制贷记卡支付
O
subsidy_info 手续费补贴信息 JSON 1、需要保证服务商补贴业务已开通,否则不允许交易
2、手续费补贴费率、手续费执行费率和手续费补贴金额三选一进行上送
O
market_subsidy_agent_no 营销补贴代理商编号 Sting 1、涉及到多营销主体补贴时该字段必填。
2、运营提供营销补贴代理商编号
C
market_subsidy_info 营销补贴信息 JSONArray 营销补贴信息详情,单笔交易支持多个补贴方且单笔交易总补贴金额需小于订单金额。
注意:服务商需开通营销补贴功能,且补贴金额需小于等于营销补贴账户余额
O
goods_name 商品名称 String(256) 商品名称(支付宝和微信支持) 矿泉水 O
goods_tag 订单优惠标记 String 订单优惠标记,使用代金券或立减优惠功能时需要的参数,说明详见微信参数代金券或立减优惠 sz_haihui O
goods_detail 商品详情 JSONArray 商品详细描述,参考下表(商户信息:goods_detail) [ { "goods_id": "商品编码", "wxpay_goods_id": "1001", "goods_name": "", "quantity": 1, "price": 528800 }, { "goods_id": "商品编码", "wxpay_goods_id": "1002", "goods_name": "iPhone6s 32G", "quantity": 1, "price": 608800 } ] O
operator_id 商户操作员编号 String 支付宝可用 001 O
store_id 商户门店编号 String 支付宝可用 001 O
terminal_id 商户机具终端编号 String 支付宝可用 11111111 O
device_info 设备号 String 微信可用 11111111 O
termid 银联终端号 String 银联终端号,参加银联云闪付活动时上送 11111111 O
pnrInsIdCd 银联服务商机构号 String 银联服务商机构号,参加银联云闪付活动时上送 11111111 O
acq_addn_data (银联二维码)收款方附加数据 JSON 涉及扫码点餐业务,交易需要在此上送商品信息 O
previous_trade_no 前一笔SaaS平台返回的订单编号 String SaaS平台的交易订单编号 AL200325141943092770216077 O
time_consume 交易耗时 String 前一笔交易耗时(请求开始到请求结束),毫秒(ms) 200 O
net_type 网络类型 String 前一笔交易时使用的网络类型(2G,4G,WIFI) 2G O
terminal_info 终端信息 object 【259新增】商户侧受理终端信息,字段详 细说明参考下文。 O
scene_info 场景信息 object 微信适用,非必填项,该字段用于上报场景信息,目前支持上报实际门店信息。该字段为 JSON 对象数据,对象格式为{"store_info":{"id":"门店 ID","name": "名称","area_code": " 编 码","address": " 地 址" }} {"store_info":{"id":"门店 ID","name": "名称","area_code": " 编 码","address": " 地 址" }} O
hb_fq_num 花呗分期数 String 仅支持传入3/6/12(仅支付宝支持) 接入指引:https://gw.alipayobjects.com/os/bmw-prod/936d185f-6fda-4369-b0a0-34c5e7dfe7e3.pdf O
food_order_type 点餐场景类型(仅支付宝支持) String 点餐场景类型:
qr_order(店内扫码点餐)
pre_order(预点到店自提)
home_delivery (外送到家)
direct_payment(直接付款)
other(其它)
O
frontUrl 支付成功跳转地址 String 支付成功跳转地址(银联主扫支付时) O
frontFailUrl 支付失败跳转地址 String 支付失败跳转地址(银联主扫支付时) O

手续费补贴信息subsidy_info 字段说明

参数 参数名称 类型 参数说明 样例 可空
fee_subsidy_agent_no 手续费补贴代理商编号 Sting 1、涉及到多营销主体补贴时该字段必填。2、运营提供手续费补贴代理商编号 C
fee_subsidy_party 手续费补贴方账户 String 1、手续费补贴方联系商务或者运营获取 M
fee_subsidy_rate 手续费补贴费率 object 1、手续费补贴费率、手续费执行费率和手续费补贴金额三选一进行上送
2、手续费补贴费率不能大于(可以等于)商户该笔交易手续费费率
3、费率单位:费率值0.38%,则上送0.38 , 封顶金额以元为单位:1.5元,则上送1.5
银联二维码手续费补贴时上送一组费率{"union_debit_rate":"银联二维码借记卡费率","union_debit_max":"银联二维码借记卡手续费封顶","union_credit_rate":"银联二维码贷记卡费率","union_mix_rate":"银联二维码1000元以下包括1000元费率"} C
fee_execute_rate 手续费执行费率 object 1、手续费补贴费率、手续费执行费率和手续费补贴金额三选一进行上送
2、手续费执行费率只能小于(不可以等于)商户该笔交易手续费费率
3、商户该笔交易费率减去手续费执行费率就是该笔交易补贴费率
4、费率单位:费率值0.38%,则上送0.38 , 封顶金额以元为单位:1.5元,则上送1.5
银联二维码手续费补贴时上送一组费率{"union_debit_rate":"银联二维码借记卡费率","union_debit_max":"银联二维码借记卡手续费封顶","union_credit_rate":"银联二维码贷记卡费率","union_mix_rate":"银联二维码1000元以下包括1000元费率"} C
fee_subsidy_amount 手续费补贴金额 String 1、手续费补贴费率、手续费执行费率和手续费补贴金额三选一进行上送
2、手续费补贴金额不能大于手续费金额(可以等于手续费金额)
3、传递补贴手续费金额大于该笔手续费金额,按照该笔交易实际手续费金额补贴
4、金额以元为单位:1.5元,则上送1.5
C
营销补贴信息:market_subsidy_info
参数 参数名称 类型 参数说明 样例 可空
party 营销补贴账户 String 在海科开通的营销补贴账户号 M
amt 营销补贴金额 String 营销补贴金额(单位:元) 20 M
分账关系组:ledger_relation
参数 参数名称 类型 参数说明 样例 可空
receive_no 收账方(海科商户号) String 收账方(海科商户号)ledger_relation组内参数 M
amt 分账金额 String 分账金额(单位:元) 20 M
(微信支付宝)商户信息:goods_detail
参数 参数名称 类型 参数说明 样例 可空
goods_id 商品的编号 String 微信支付宝通用 M
goods_name 商品名称 String 微信支付宝通用 M
quantity 商品数量 int 微信支付宝通用 M
price 商品单价 int/price 微信单位为分(使用int上送),支付宝单位为元(使用price上送) M
goods_category 商品类目 String 支付宝参数 O
categories_tree 商品类目树 String 支付宝参数 O
body 商品描述信息 String 支付宝参数 O
show_url 商品的展示地址 String 支付宝参数 O
(银联二维码)收款方附加数据:acq_addn_data
参数 参数名称 类型 参数说明 样例 可空
orderInfo 订单信息 JSON 订单明细内容,如订单标 题、订单描述等 O
(银联二维码)订单信息:orderInfo
参数 参数名称 类型 参数说明 样例 可空
addnInfo 附加信息 String 银联扫码点餐相关参数,格式参考银联侧要求,例如{brandId=值&storeId=值&tableNo=值} O

终端信息terminal_info 字段说明

参数 参数名称 类型 参数说明 样例 可空
location 终端实时经纬度信息 String 受理终端设备实时经纬度信息,格式为纬度/经度, +表示北纬、东经,-表示南纬、西经 +37.12/-121.213 O
device_ip 商户端设备 IP String 商户端终端设备 IP 地址。注: 如经、维度信息未上送,该字段必送。 O
encrypt_rand_num 加密随机因子 String(10) 仅在被扫支付类交易报文中出现:若付款码为 19 位数字,则取后6 位;若付款码为 EMV二维码,则取其tag 57 的卡号/token 号的后 6 位 O
secret_text 密文数据 String(16) 仅在被扫支付类交易报文中出现:64bit 的密文数据, 对终端硬件序列号和加密随机因子加密后的结果。本子域取值为: 64bit 密文数据进行base64 编码后的结果。 O
app_version 应用程序版本号 String(8) 终端应用程序的版本号。应用程序变更应保证版本号不重复。当长度不足时,右补空格 O

请求示例:

{
    "accessid": "cpostest",
    "trade_type": "WX",
    "merch_no": "88888888",
    "out_trade_no": "2020032513292797",
    "total_amount": "20",
    "appid": "WX88888888888",
    "userid": "azasadrfdhgfffdderty",
    "sn": "WSY196",
    "pn": "S0000053",
    "remark": "地方都是",
    "limit_pay": "0",
    "ledger_relation": [
        {
            "receive_no": "833584358120001",
            "amt": "1"
        }
    ],
    "goods_name": "矿泉水",
    "previous_trade_no":"AL200325141943092770216077",
    "time_consume":"200",
    "net_type":"2G",
    "sign": "F87FD1F2C281453F60F92CC63BEA79BD"
}

说明:
参数 previous_trade_no 和 time_consume 要一起上传,单独上传任意一个没有意思,如果没有信息,可以不传

返回参数:

参数 参数名称 类型 参数说明 样例 可空
out_trade_no 服务商交易订单号 String 服务商的交易订单编号 161018121614000624679888 M
trade_no 交易订单号 String SaaS平台的交易订单编号 M
channel_trade_no 凭证条码订单号 String 仅支付宝和微信会返回(v1.24增加) 161018121614000624679888 O
jspay_url 银联支付页面地址 String 银联二维码支付下单成功后会返回,下单成功后需重定向到此地址完成支付 O
alipay_no 预下单订单号 String 支付宝交易下单成功后会返回 123456789 O
appid 微信支付的appid String 微信交易下单成功后会返回 O
timestamp 交易时间戳 String 微信交易下单成功后会返回 O
noncestr 随机字符串 String 微信交易下单成功后会返回 O
package 订单详情扩展字符串 String 微信交易下单成功后会返回 prepay_id=123456789 O
signtype 签名方式 String 微信交易下单成功后会返回 RSA O
paysign 签名 String 微信交易下单成功后会返回 C380BEC2BFD727A4B6845133519F3AD6 O

返回示例:

{
 "out_trade_no": "202008271714035339186523",
 "trade_no": "WX200827171426749573189299",
 "channel_trade_no": "0111200827171447819307MC",
 "appid": "wx2a0bae9e7b3aff33",
 "openid": "o6t4W5waQRWf4v_ZFeiG70v15q1Q",
 "timestamp": "1598519667",
 "noncestr": "sz3Sl6qq4M7zMi3oHlZi0HHncVmqf6wt",
 "package": "prepay_id=wx27171427618873be05ec39a3992e7c0000",
 "signtype": "RSA",
 "paysign": "KqIrBCQo80b5+KF2YbrDWYHtpVlSC7voOuUpXS6SaNIn7rM7+6xjZ7Dpt3LhP0RysM8jHW2RwLFkM4Gqf6hOKvi+piZIBGc8vLW/8qhLFCk5vrX93bWFsUIJMJsf75cEkpFjHelMjSb5dMcfmVL8qDi6qeLA5Iz4LfZ7T/UEidWFCYKjXz9m6CmXyWEb49oXezO5Uocq5b97uytY1jWP+D+/HqiHpdTflBAm45SZ8pxZevtt7DNzmgODJDBmmxD9drPZOyogOT3+eFGdUwIdK/bRACgTNOwVWKHtcHYIVla8mKwigv8a/ziJfxKZEpOy6gIDYrJ4hkX9hOnbjBOOYw==",
 "return_code": 10000,
 "sign": "741138032EFC152AED03ECD754DB1225"
}
文档更新时间: 2024-07-05 10:58   作者:admin