接口会根据支付订单情况自动判断退款或撤销。退款交易适用于已成功的支付交易,有效期一般有几个月,不同的支付平台有所差异;撤销适用于所有状态的支付交易,但是有效期只有24小时。
交易请求报文
<?xml version="1.0" encoding="GBK"?>
<business_trans>
<request_type>barcode_refundbycashfee_request</request_type>
<isspid>39493002</isspid>
<pos_id>1511300001</pos_id>
<store_id>1511300001</store_id>
<pos_seq>1511300000004</pos_seq>
<user_id>user01</user_id>
<system_id>8888</system_id>
<barcode_refundbycashfee_request>
<pay_type>503</pay_type>
<tx_amt>10</tx_amt>
<org_pos_seq>1511300000001</org_pos_seq>
<goods_detail><![CDATA[商品信息(JSON)]]></goods_detail>
</barcode_refundbycashfee_request>
</business_trans>
交易请求报文说明
节点名称 | 中文名称 | 类型 | 说明 | 是否必填 |
---|---|---|---|---|
request_type | 请求类型 | String(32) | 标识请求报文的类型,固定为barcode_refundbycashfee_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) | 由翼码提供 | 必填 |
barcode_refundbycashfee_request->pay_type | 支付类型 | String(3) | 503:微信支付 | 可空 |
barcode_refundbycashfee_request->tx_amt | 交易金额 | Number(9) | 实际退款金额,单位为分,不支持小数点 | 必填 |
barcode_refundbycashfee_request->org_pos_seq | 需要退款交易的流水号 | String(32) | 需要退款的原支付流水号,且大于12位 | 必填 |
barcode_refundbycashfee_request->goods_detail | 退款商品信息 | String(6000) | 需要退款的商品信息列表,以JSON格式传入若传入信息带特殊字符请使用CDATA标签包裹内容详细参数见下表 | 可空 |
交易请求参数附表
goods_detail商品信息 json体参数:
参数 | 类型 | 说明 | 是否必填 | 范例 |
---|---|---|---|---|
goods_id | String(32) | 商品的编号 | 必填 | apple-01 |
payment_goods_id | String(32) | 支付平台商品编号 | 可空 | 20010001 |
goods_name | String(256) | 商品名称 | 必填 | ipad |
quantity | Number(9) | 商品数量 | 必填 | 1 |
price | Number(8) | 商品单价,单位为分 | 必填 | 200000 |
goods_category | String(24) | 商品类目仅支付宝时生效 | 可空 | 34543238 |
body | String(1000) | 商品描述信息仅支付宝时生效 | 可空 | 特价手机 |
show_url | String(400) | 商品的展示地址仅支付宝时生效 | 可空 | http://www.alipay.com/xxx.jpg |
json样例:
[
{
"goods_id" : "apple-01",
"payment_goods_id" : "20010001",
"goods_name" : "ipad",
"quantity" : 1,
"price" : 200000,
"goods_category" : "34543238",
"body" : "特价手机",
"show_url" : "http://www.alipay.com/xxx.jpg"
},
{
"goods_id" : "apple-02",
"payment_goods_id" : "20010002",
"goods_name" : "ipad2",
"quantity" :"1,
"price" : 200000,
"goods_category" : "34543239",
"body" : "特价手机2",
"show_url" : "http://www.alipay.com/xxx2.jpg"
}
]
交易返回报文
<?xml version="1.0" encoding="GBK"?>
<business_trans>
<response_type>barcode_refundbycashfee_response</response_type>
<isspid>39493002</isspid>
<pos_id>123456789</pos_id>
<pos_seq>000000000001</pos_seq>
<sys_seq>000000000244</sys_seq>
<trans_time>20090405010104</trans_time>
<pay_type>502</pay_type>
<buss_discount_amt>2</buss_discount_amt>
<platform_discount_amt>2</platform_discount_amt>
<wxpay_res_info>
<trade_no>4200000254201901093869466982</trade_no>
<out_trade_no>1901090000036</out_trade_no>
<app_id>wx5acb63e448b4fc22</app_id>
<mch_id>1241109502</mch_id>
<total_fee>10002</total_fee>
<cash_fee>3</cash_fee>
<refund_fee>10001</refund_fee>
<cash_refund_fee>2</cash_refund_fee>
<detail_error_code>SUCCESS</detail_error_code>
<detail_error_desc>OK</detail_error_desc>
</wxpay_res_info>
<result>
<id>0000</id>
<comment>成功</comment>
</result>
</business_trans>
交易返回报文说明
标准接口会因业务升级需要而新增节点,请在解析返回报文时避免新增未知节点产生的程序出错!
节点名称 | 中文名称 | 类型 | 说明 | 是否必填 |
---|---|---|---|---|
response_type | 返回类型 | String(32) | 标识返回报文的类型,固定为barcode_refundbycashfee_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) | 503:微信支付 | 必填 |
buss_discount_amt | 商家优惠金额 | String(16) | 商家优惠金额,单位为分 | 可空 |
platform_discount_amt | 平台优惠金额 | String(16) | 平台优惠金额,单位为分 | 可空 |
result->id | 响应码 | String(4) | 翼码平台返回的处理结果,0000-成功,其它失败,错误信息说明见“响应码解释”字段 | 必填 |
result->comment | 响应码解释 | String(64) | 响应码对应中文注解,用于显示提示 | 必填 |
微信支付的时候,返回以下数据 | ||||
wxpay_res_info->trade_no | 支付平台处理流水 | String(64) | 交易成功时候,必填 | 可空 |
wxpay_res_info->out_trade_no | 支付交易请求流水 | String(64) | 交易成功时候,必填 | 可空 |
wxpay_res_info->detail_error_code | 支付详细错误码 | String(48) | 交易成功时候,必填 | 可空 |
wxpay_res_info->detail_error_desc | 支付详细错误码说明 | String(128) | 交易成功时候,必填 | 可空 |
wxpay_res_info->app_id | 微信公众帐号 | String(32) | 交易成功时候,必填 | 可空 |
wxpay_res_info->mch_id | 微信商户帐号 | String(32) | 交易成功时候,必填 | 可空 |
wxpay_res_info->total_fee | 订单总金额 | String(16) | 交易成功时候,必填,单位为分 | 可空 |
wxpay_res_info->cash_fee | 现金支付金额 | String(16) | 用户使用现金支付的金额交易成功时候,必填,单位为分 | 可空 |
wxpay_res_info->refund_fee | 退款金额 | String(16) | 本次订单退款总金额:1、当累计现金退款金额小于用户支付金额时,refund_fee=cash_refund_fee2、当累计现金退款金额小于用户支付金额时,refund_fee=cash_refund_fee+券金额交易成功时候,必填,单位为分 | 可空 |
wxpay_res_info->cash_refund_fee | 现金退款金额 | String(16) | 现金退款金额,即用户实际可到账退款金额,小于等于用户支付金额交易成功时候,必填,单位为分 | 可空 |
标准接口会因业务升级需要而新增节点,请在解析返回报文时避免新增未知节点产生的程序出错!