聚合收银台创建订单
1、修订记录
修订记录 | 日期 | 说明 |
---|---|---|
1.0 | 2024.05.23 | 初版 |
1.1 | 2024.05.23 | 新增“是否立即支付”参数 |
1.2 | 2024.07.30 | 新增“返回商户页面URL”参数 |
2、业务说明
(1)接口说明
商户调用银盛收银台接口进行下单
请求主体类型:application/json
请求方式:POST
3、请求地址
环境 | HTTPS请求地址 |
---|---|
测试环境 | https://appdev.ysepay.com/openapi/order/createOrder |
正式环境 | https://ysgate.ysepay.com/openapi/order/createOrder |
4、请求参数说明
4.1、公共请求参数
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
timeStamp | String | Y | 发送请求的时间,格式"yyyy-MM-dd HH:mm:ss" |
method | String(128) | Y | 接口名称,固定值:order.createOrder |
charset | String(10) | Y | 请求使用的编码格式,如utf-8,gbk,gb2312等,固定为utf-8 |
sign | String | Y | 商户请求参数的签名串(签名算法默认为国密),详见demo,注意:请用商户私钥进行签名 |
check | String | Y | 银盛公钥加密随机生成的字符串(key)得到的加密值,详见demo |
bizContent | String | Y | 业务参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递。注意:需要通过AES以及随机生成的字符串(key)加密业务参数集合,得到bizContent |
reqId | String | Y | 请求唯一流水号,商户系统唯一,要求32个字符内(最少14个字符),只能是数字、大小写字母_-且在同一个商户号下唯一。最后12位要求格式为"yyMMddHHmmss" 示例值:xy1415220315145602 |
certId | String | Y | 发起方商户号,服务商在银盛给自己开设的商户号,即可当作发起方商户号,由银盛生成并下发。 注意:不同于子商户号,服务商发展的商户即为子商户号 |
version | String | Y | 调用的接口版本,固定为:1.2 |
4.2、业务请求参数
(bizContent加密前的json数据明文字符串)
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
orderId | String(20) | Y | 商户订单号,商户系统生成的订单号,要求如下: 1、须保证在商户端不重复。 2、只能由大小写英文字母、数字、下划线及横杠组成。 建议前8位为交易日期,如20220525,范围跨度支持包含当天在内的前后一天,示例值:202205256843192280647118。 |
msgCode | String | Y | 报文编号,S3001即时到账、S3002担保交易,为空时默认S3001 |
mercId | String | Y | 商户号 |
busiCode | String | Y | 业务代码,默认传00510103,如果有通过会拓客分润需求,则传00510102,具体请咨询客户经理 注意:如果有传非以上2个业务代码的请尽快修改,将在2024年4月25日开启强制校验 |
shopDate | String | Y | 交易日期,商户系统的交易发生日期格式yyyyMMdd 示例值:20180525 |
amount | String | Y | 交易金额,该笔订单的资金总额,单位:分。 |
paymentValidTime | String | Y | 支付有效时间, 单位分钟,最小1分钟,最长不超过30分钟.。 |
currency | String | Y | 币种,默认CNY(人民币)。 |
remark | String | N | 订单备注,该字段废弃 |
note | String | N | 订单说明,可以用于商品备注,该字段会上送给渠道,建议必填,例如用户使用微信支付,则用户可以在微信账单看到订单说明 |
backUrl | String | Y | 回调地址,交易成功异步通知到商户的后台地址,支持多个url进行异步通知,多个url用分隔符“,”分开,格式如:url1,url2,url3。 |
limitPay | String | N | 指定支付方式,(0或空不禁用,1禁用信用卡支付,2禁用花呗,3禁用花呗分期,4禁用所有信用支付类型) 微信,只支持1;云闪付,均不支持;支付宝,均支持 |
payMode | String | Y | 支付方式, 26 支付宝生活号 28 微信公众号 29 微信小程序 30 银联行业码支付 |
detail | Object | N | 商品购物明细,电商场景/担保交易时建议传值。 |
storeId | String | N | 商户门店编号 |
buyerRealnameInfo | Object | N | 实名信息 |
isRepeatPay | String | N | 是否允许重复下单,(空或者1代表是,0代表否) |
h5Join | String | N | H5接入方式,商家如果本身是小程序接入收银台,则该字段默认传空,如果是H5接入请联系银盛客户经理。其中枚举值为 支付宝生活号 01 ,微信公众号 02 ,微信小程序 03 |
isFastPay | String(2) | N | 是否立即支付,传入01时,商户预下单之后拉起的是立即支付收银台页面,其他则进入普通收银台页面。 说明:立即支付收银台与普通收银台相比没有确认按钮,用户从商户页面下单之后进入收银台页面,不需要确认直接进入密码支付 |
mercHomeUrl | String | N | 返回商户页面URL,前提得开通点金计划并配置商家小票、如果是调用我们的小程序支付,URL还得配置在我们小程序里面; 开通点金计划请联系银盛客户经理。 |
4.2.1 detail具体参数
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
costPrice | String | N | 订单原价,单位:分 |
receiptId | String | N | 商品小票,长度不能超过32位 Ys001001 |
goodsDetails | Array | Y | 商品列表 |
4.2.1.1 goodsDetails具体参数
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
goodsId | String | Y | 商户商品编码,由半角的⼤⼩写字母,数字,下划线,中划线中的⼀种或者⼏种组成,Shouji_abcef_001-001 |
wxpayGoodsId | String | N | 微信商品编号,微信支付定义的统⼀商品编号,微信支付定义的统⼀商品编号 |
goodsName | String | N | 商品名称,商品的实际名称 |
quantity | String | Y | 商品数量,只能是正整数 ,1000 |
price | String | Y | 商品单价,单位:分 |
4.2.2 buyerRealnameInfo具体参数
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
certType | String | Y | 证件类型,只支持身份证,枚举值:1 |
certName | String | Y | 证件名称 |
certNo | String | Y | 证件号码 |
5、响应参数说明
请注意:银盛后期会对返回参数保留扩展的权力,扩展方式为新增参数但不会删除参数,请商户在解析银盛返回参数时要支持银盛可能扩展参数这种情况。5.1、公共响应参数
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
code | String(5) | Y | 网关响应码,示例值:00000 ,详见网关公共响应码 |
msg | String(50) | Y | 网关响应码描述 |
subCode | String | Y | 业务响应码,参见具体的API接口文档 |
subMsg | String | Y | 业务响应描述 |
timeStamp | String | Y | 响应时间,格式"yyyy-MM-dd HH:mm:ss" |
norce | String(128) | Y | 随机参数 |
sign | String | Y | 响应参数的签名串,详见demo, 注意:请用银盛公钥进行验签 |
businessData | String | Y | 业务响应参数集合, 注意:银盛网关通过AES加密业务响应参数集合,得到businessData,商户需要对其进行解密,详情请见demo |
5.2、业务响应参数
响应业务参数businessData(json数据)
参数 | 类型(长度) | 必填 | 参数说明 |
---|---|---|---|
reqMsgId | String | Y | 请求流水号 |
amount | String | Y | 订单金额 |
mercId | String | Y | 商户号 |
orderId | String | Y | 商户订单号 |
orderCreateTime | String | Y | 创建订单时间 |
orderEfficientTime | String | Y | 订单有效截至时间 |
encryData | String | Y | 加密校验参数 |
payUrl | String | N | 收银台地址信息,
|
6、业务响应码 网关公共响应码
响应码 | 响应码描述 | 解决方案 |
---|---|---|
0 | 下单成功 | |
100000101 | 参数检查异常 | |
100000102 | 参数格式检查异常 | |
100000103 | 参数非法值检查异常 | |
100000801 | 商户未开通收银台权限 | |
100000802 | 商户订单号重复请求 | |
100000803 | 校验信息不通过 | |
100000804 | 商户订单已失效关闭 | |
100000805 | 支付金额与下单金额不一致 | |
100000806 | 获取IP地址异常 | |
100000807 | 渠道返回异常 | |
100000808 | 请求参数错误 | |
100000809 | 订单信息不存在 | |
100000811 | 重复预下单信息不一致 | |
200000000 | 系统异常 |