交易请求报文
JSON:
{"request_type": "bcm_ordercreate_request","isspid": "39493002","pos_id": "1511300001","store_id": "1511300001","pos_seq": "2018121400000004","user_id": "user01","system_id": "8888","memo": "订单备注","bcm_ordercreate_request": {"pos_sn": "","terminal_id": "0001045907","tx_amt": "1","notify_url": "http://www.baidu.com/","goods_detail": [{"goods_name": "啊ipad","quantity": 1,"price": 200000},{"goods_name": "额ipad2","quantity": 1,"price": 200000}],"extend_params": {"split_flag": "R","plan_split_date": "20230418","split_info": {"keep_amt": "800","split_list": [{"merchant_id": "10000000000001","div_amt": "150"},{"merchant_id": "10000000000002","div_amt": "50"}]}}},"sign": "314DA43E7E244105ECBD45F797264854"}
XML:
<?xml version="1.0" encoding="GBK"?><business_trans><request_type>bcm_ordercreate_request</request_type><isspid>39493002</isspid><pos_id>1511300001</pos_id><store_id>1511300001</store_id><pos_seq>1511300000002</pos_seq><user_id>user01</user_id><system_id>8888</system_id><memo>订单备注</memo><bcm_ordercreate_request><pos_sn></pos_sn><terminal_id>0001045907</terminal_id><tx_amt>1</tx_amt><notify_url><![CDATA[http://www.baidu.com/]]></notify_url><extend_params><![CDATA[{"split_flag": "R","plan_split_date": "20230418","split_info": {"keep_amt": "800","split_list": [{"merchant_id": "10000000000001","div_amt": "150"},{"merchant_id": "10000000000002","div_amt": "50"}]}}]]></extend_params><goods_detail><![CDATA[[{"goods_name": "啊ipad","quantity": 1,"price": 200000},{"goods_name": "额ipad2","quantity": 1,"price": 200000}]]]></goods_detail></bcm_ordercreate_request></business_trans>
交易请求报文说明
| 节点名称 | 中文名称 | 类型 | 说明 | 是否必填 |
|---|---|---|---|---|
| sign | 报文签名 | String(32) | 请求报文格式为JSON时必填 计算签名方式请看2.1章节 | 可选 |
| request_type | 请求类型 | String(32) | 固定值:bcm_ordercreate_request | 必填 |
| isspid | 商户号 | String(8) | 翼码商户号,由翼码提供 | 必填 |
| pos_id | 终端号 | String(20) | 商户自定义终端号 | 必填 |
| store_id | 门店号 | String(20) | 商户自定义门店号 | 必填 |
| pos_seq | 支付请求流水号 | String(32) | 同一个翼码商户号下唯一,不可重复使用,且大于12位 | 必填 |
| user_id | 操作员标识 | String(20) | 操作员号 | 可空 |
| system_id | 系统平台号 | String(4) | 由翼码提供 | 必填 |
| memo | 订单备注 | String(128) | 可空 | |
| bcm_ordercreate_request ->pos_sn | 刷卡POS机身号 | String(20) | 订单推送的刷卡POS设备的机身号 | 可空 |
| bcm_ordercreate_request ->terminal_id | 刷卡POS终端号 | String(10) | 订单推送的刷卡POS设备的终端号 | 可空 |
| bcm_ordercreate_request ->tx_amt | 订单金额 | Number(9) | 订单金额,单位为分,不支持小数点 | 必填 |
| bcm_ordercreate_request ->notify_url | 异步通知地址 | String(256) | 4.20.交易结果通知 使用XML格式报文时,建议使用CDATA标签包裹内容 | 可空 |
| bcm_ordercreate_request ->extend_params | 扩展参数 | JSON | 用于扩展一些特殊的支付参数字段,详细参数见下表 使用XML格式报文时,建议使用CDATA标签包裹内容 | 可空 |
| bcm_ordercreate_request ->goods_detail | 商品信息 | JSONArray | 订单包含的商品信息列表,详细参数见下表 使用XML格式报文时,建议使用CDATA标签包裹内容 | 可空 |
自定义门店号(store_id)和自定义终端号(pos_id)需经过4.1终端绑定交易接口绑定成功过的值才可以调用,绑定一次即可不需要重复绑定。
关于订单推送设备的特别说明
刷卡POS机身号(pos_sn) 和 刷卡POS终端号(terminal_id)
两个节点对应不同版本的刷卡设备APP使用,不可同时使用,详细规则请咨询联调支持人员
两个节点都不传,则不会推送订单,可以使用pos_seq生成二维码,刷卡设备APP上操作扫码的方式传递订单信息
extend_params 扩展参数 (JSON)
| JSON节点 | 类型 | 说明 | 是否必填 | 范例 |
|---|---|---|---|---|
| split_flag | String | 分账标识 N:不分账 R:实时分账 D:延时分账 不传该节点时,将按控制台配置处理 该节点与分账功能相关具体联系业务确认开通功能 | 可空 | R |
| plan_split_date | String | 预分账日期,格式:yyyymmdd 仅延时分账类型(split_flag=D)时支持传入 | 可空 | 20230418 |
| split_info | JSON | 分账信息 仅支持请求实时分账split_flag=R 该节点与分账功能相关具体联系业务确认开通功能 | 可空 |
分账业务相关的特别说明:
1. split_flag=N 不分账时,split_info不允许传入;
2. split_flag=R 实时分账时,split_info必传,其中keep_amt与div_amt叠加必须全额分完整笔订单;
3. split_flag=D 延时分账时,split_info不允许传入,在后续流程中调用延迟交易确认接口完成分账,或使用翼码分账系统界面进行分账。
4. 刷卡设备只有使用指定版本的APP,才能支持分账业务,使用前务必咨询业务或技术对接人
split_info 分账信息
| JSON节点 | 类型 | 说明 | 是否必填 | 范例 |
|---|---|---|---|---|
| keep_amt | String | 分账方自留金额,单位为分,可传0表示不自留 | 必填 | 1000 |
| split_list | Array | 分账明细 | 必填 |
split_list 分账明细
| JSON节点 | 类型 | 说明 | 是否必填 | 范例 |
|---|---|---|---|---|
| merchant_id | String | 分账接收方的分账商户号 | 必填 | 10000000000001 |
| div_amt | String | 分账金额,单位为分,必须大于0 | 必填 | 1000 |
若业务涉及100%分账给接收方,请与业务对接人联系确认业务。
extend_params 样例:
{"split_flag": "R","plan_split_date": "20230418","split_info": {"keep_amt": "800","split_list": [{"merchant_id": "10000000000001","div_amt": "150"},{"merchant_id": "10000000000002","div_amt": "50"}]}}
goods_detail 商品信息 (JSONArray)
| JSON节点 | 类型 | 说明 | 是否必填 | 范例 |
|---|---|---|---|---|
| goods_name | String(256) | 商品名称 | 必填 | ipad |
| quantity | Number(9) | 商品数量 | 必填 | 1 |
| price | Number(8) | 商品单价,单位为分 | 必填 | 200000 |
goods_detail 样例:
[{"goods_name": "啊ipad","quantity": 1,"price": 200000},{"goods_name": "额ipad2","quantity": 1,"price": 200000}]
交易返回报文
JSON:
{"response_type": "bcm_ordercreate_response","isspid": "39493002","pos_id": "6666666666","pos_seq": "2018121400000004","trans_time": "20181214143516","sys_seq": "0741136885a748c1","result": {"id": "9998","comment": "创建订单成功"},"sign": "F6106656C20AB23B547B0C30DD819793"}
XML:
<?xml version="1.0" encoding="GBK"?><business_trans><response_type>bcm_ordercreate_response</response_type><isspid>39493002</isspid><pos_id>1511300001</pos_id><pos_seq>1511300000002</pos_seq><sys_seq>0311095321465179</sys_seq><trans_time>20160311095321</trans_time><result><id>9998</id><comment>创建订单成功</comment></result></business_trans>
交易返回报文说明
标准接口会因业务升级需要而新增节点,请在解析返回报文时避免新增未知节点产生的程序出错!
| 节点名称 | 中文名称 | 类型 | 说明 | 是否必填 |
|---|---|---|---|---|
| sign | 报文签名 | String(32) | 返回报文格式为JSON时必填 计算签名方式请看2.1章节 | 可选 |
| response_type | 返回类型 | String(32) | 固定值:bcm_ordercreate_response | 必填 |
| isspid | 商户号 | String(8) | 翼码商户号,由翼码提供 | 必填 |
| pos_id | 终端号 | String(20) | 商户自定义终端号 | 必填 |
| pos_seq | 支付请求流水号 | String(32) | 支付请求流水号,和请求报文相同 创建订单成功(id=9998)之后,将该字段作为二维码内容生成,使用POS扫码 | 必填 |
| sys_seq | 随机串号 | String(16) | 随机生成串号,仅用于日志跟踪用,不保存 | 必填 |
| trans_time | 接口返回时间 | String(14) | 接口返回时间,格式:yyyyMMddHHmmss | 必填 |
| result ->id | 响应码 | String(4) | 银行卡刷卡下单时返回 9998 表示创建订单成功,进入轮询调用银行卡刷卡查询接口确认交易结果 其它失败,错误信息说明见“响应码解释”字段 | 必填 |
| result ->comment | 响应码解释 | String(64) | 响应码对应中文注解,用于显示提示 | 必填 |
标准接口会因业务升级需要而新增节点,请在解析返回报文时避免新增未知节点产生的程序出错!


