交易请求报文

  1. <?xml version="1.0" encoding="GBK"?>
  2. <business_trans>
  3. <request_type>scanpay_request</request_type>
  4. <isspid>39493002</isspid>
  5. <pos_id>1511300001</pos_id>
  6. <store_id>1511300001</store_id>
  7. <pos_seq>1511300000002</pos_seq>
  8. <user_id>user01</user_id>
  9. <system_id>8888</system_id>
  10. <device_ip>127.0.0.1</device_ip>
  11. <scanpay_request>
  12. <pay_type>503</pay_type>
  13. <tx_amt>1</tx_amt>
  14. <phone_no>18600000000</phone_no>
  15. <goods_detail><![CDATA[商品信息(JSON)]]></goods_detail>
  16. <extend_params><![CDATA[扩展参数]]></extend_params>
  17. <use_coupon>1</use_coupon>
  18. </scanpay_request>
  19. </business_trans>

交易请求报文说明

节点名称中文名称类型说明是否必填
request_type请求类型String(32)标识请求报文的类型,固定为scanpay_request必填
isspid商户号String(8)接入SP的ID号,由翼码平台分配给ipos接入受理商户的机构号(原值返回)必填
pos_id终端号String(20)终端号必填
store_id门店号String(20)门店号必填
pos_seq终端流水号String(32)同一个商户必须唯一,且大于12位必填
user_id操作员标识String(20)操作员号可空
system_id系统平台号String(4)由翼码提供必填
device_ip设备IPString(15)发起交易的门店公网IP
根据央行要求必须传门店真实公网IP
否则商家会被风控!!!
可空
scanpay_request
->pay_type
支付类型String(3)502:支付宝支付
503:微信支付(仅直连微信支持)
512:银联二维码(仅间联星POS通道支持)
508:和包验证码支付
必填
scanpay_request
->phone_no
手机号Number(11)客户手机号
和包验证码支付时必填
可选
scanpay_request
->tx_amt
交易金额Number(9)条码支付金额,单位为分,不支持小数点必填
scanpay_request
->goods_detail
商品信息String(6000)订单包含的商品信息列表,以JSON格式传入
若传入信息带特殊字符请使用CDATA标签包裹内容
详细参数见下表
可空
scanpay_request
->extend_params
扩展参数String用于扩展一些特殊的支付参数字段,以JSON格式传入
若传入信息带特殊字符请使用CDATA标签包裹内容
详细参数见下表
可空
scanpay_request
->use_coupon
是否使用优惠券String(1)0:不使用优惠
1:可使用优惠
传空默认为1
具体应用:
a.微信可使用优惠时,翼码传送已配置的订单优惠标记(goods_tag)给微信
b.支付宝不可使用优惠时,翼码将不参与优惠计算的金额(undiscountable_amount)取订单金额传送给支付宝
可空

goods_detail 商品信息 (JSONArray)

参数类型说明是否必填范例
goods_idString(32)商品的编号必填apple-01
payment_goods_idString(32)支付平台商品编号可空20010001
goods_nameString(256)商品名称必填ipad
quantityNumber(9)商品数量必填1
priceNumber(8)商品单价,单位为分必填200000
goods_categoryString(24)商品类目
仅支付宝时生效
可空34543238
bodyString(1000)商品描述信息
仅支付宝时生效
可空特价手机
show_urlString(400)商品的展示地址
仅支付宝时生效
可空http://www.alipay.com/xxx.jpg

goods_detail 样例:

  1. [
  2. {
  3. "goods_id" : "apple-01",
  4. "payment_goods_id" : "20010001",
  5. "goods_name" : "ipad",
  6. "quantity" : 1,
  7. "price" : 200000,
  8. "goods_category" : "34543238",
  9. "body" : "特价手机",
  10. "show_url" : "http://www.alipay.com/xxx.jpg"
  11. },
  12. {
  13. "goods_id" : "apple-02",
  14. "payment_goods_id" : "20010002",
  15. "goods_name" : "ipad2",
  16. "quantity" : 1,
  17. "price" : 200000,
  18. "goods_category" : "34543239",
  19. "body" : "特价手机2",
  20. "show_url" : "http://www.alipay.com/xxx2.jpg"
  21. }
  22. ]

extend_params 扩展参数 (JSON)

JSON节点类型说明是否必填范例
hb_fq_numString花呗分期数,仅支持传入3、6、12,其他期数暂不支持
仅支付宝时生效
hb_fq_num与hb_fq_seller_percent必须同时传入且使用花呗分期商品明细必传
可空3
hb_fq_seller_percentString花呗卖家承担收费比例,商家承担手续费传入100,用户承担手续费传入0,仅支持传入100、0两种,其他比例暂不支持
仅支付宝时生效
hb_fq_num与hb_fq_seller_percent必须同时传入且使用花呗分期商品明细必传
可空100
split_flagString分账标识
N:不分账
R:实时分账
D:延时分账
不传该节点时,将按控制台配置处理
该节点与分账功能相关具体联系业务确认开通功能
可空R
split_infoJSON分账信息
仅支持请求实时分账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不允许传入,在后续流程中调用延迟交易确认接口完成分账,或使用翼码分账系统界面进行分账。

split_info 分账信息

JSON节点类型说明是否必填范例
keep_amtString分账方自留金额,单位为分,可传0表示不自留必填1000
split_listArray分账明细必填 
split_list 分账明细
JSON节点类型说明是否必填范例
merchant_idString分账接收方的分账商户号必填10000000000001
div_amtString分账金额,单位为分,必须大于0必填1000

extend_params 样例:

  1. {
  2. "hb_fq_num": "3",
  3. "hb_fq_seller_percent": "100",
  4. "split_flag": "R",
  5. "split_info": {
  6. "keep_amt": "800",
  7. "split_list": [
  8. {
  9. "merchant_id": "10000000000001",
  10. "div_amt": "150"
  11. },
  12. {
  13. "merchant_id": "10000000000002",
  14. "div_amt": "50"
  15. }
  16. ]
  17. }
  18. }

交易返回报文

  1. <?xml version="1.0" encoding="GBK"?>
  2. <business_trans>
  3. <response_type>scanpay_response</response_type>
  4. <isspid>39493002</isspid>
  5. <pos_id>1511300001</pos_id>
  6. <pos_seq>1511300000002</pos_seq>
  7. <sys_seq>0311095321465179</sys_seq>
  8. <trans_time>20160311095321</trans_time>
  9. <pay_type>503</pay_type>
  10. <code_url>weixin://wxpay/bizpayurl?pr=wkEAWjS</code_url>
  11. <result>
  12. <id>9998</id>
  13. <comment>下单成功,等待用户支付</comment>
  14. </result>
  15. </business_trans>

交易返回报文说明

标准接口会因业务升级需要而新增节点,请在解析返回报文时避免新增未知节点产生的程序出错!

节点名称中文名称类型说明是否必填
response_type返回类型String(32)标识返回报文的类型,固定为scanpay_response必填
isspid商户号String(8)接入SP的ID号,为翼码平台的提供的业务商机构号必填
pos_id终端号String(20)终端号必填
pos_seq终端流水号String(32)终端交易流水号,和请求报文中的交易流水号相同必填
sys_seq平台流水号String(16)由翼码平台产生,供跟踪之用必填
trans_time交易时间String(14)交易时间,格式:yyyyMMddHHmmss必填
pay_type支付类型String(3)502:支付宝支付
503:微信支付(仅直连微信支持)
512:银联二维码(仅间联星POS通道支持)
508:和包验证码支付
必填
code_url支付二维码信息String(100)支付平台返回的扫码支付二维码信息可选
result
->id
响应码String(4)扫码支付时9998 - 下单成功等待用户支付,需调用查询接口确认交易
和包验证码支付0000 – 下单成功,需调用支付确认接口确认交易
其它失败,错误信息说明见“响应码解释”字段
必填
result
->comment
响应码解释String(64)响应码对应中文注解,用于显示提示必填

标准接口会因业务升级需要而新增节点,请在解析返回报文时避免新增未知节点产生的程序出错!