业务说明

本接口请求方为翼码系统,接收方为商家系统。

支持的支付交易类型:
4.3扫码支付、4.13jsapi支付、4.14微信小程序支付、4.21聚合动态码支付、4.34网银支付、4.65快捷支付申请、4.67快捷支付页面版、4.15银行卡刷卡下单、4.22小程序支付收银台下单

支持的退款交易类型:
4.5支付退款交易、4.38线上交易退款、4.17银行卡申请退款交易
退款结果通知仅支持部分通道

以上交易类型支付成功后,通知商户系统支付结果。

报文格式:JSON

请求方式:POST

Content-Type: application/json;charset=utf-8

商户接收到通知处理成功后需响应字符串“success”,其他响应翼码系统认为通知失败会继续通知。

同样的通知可能会多次发送给商户系统,商户系统必须能够正确处理重复的通知。

解析与验签说明

重要提示:

该通知为标准接口,会根据业务需要增加请求节点,且部分请求节点是为兼容存量商户的冗余字段,增量商户无需关心,未在文档“请求报文说明”中展示!

因此解析报文和验签需按实际接口接收到的请求节点来处理,切勿以固定格式解析报文和验签,应避免未知请求节点引起的代码报错!

可空节点数据为空时,既可能返回null也可能返回空字符串,请解析时注意兼容!

签名sign计算规则详见:JSON格式签名计算

请求报文

  1. {
  2. "notify_type": "1",
  3. "isspid": "00026713",
  4. "store_id": "S20220927",
  5. "pos_seq": "C20220928X1000000015",
  6. "source": "1",
  7. "pos_id": "S20220927",
  8. "pay_type": "503",
  9. "trans_type": "1",
  10. "memo": null,
  11. "status": "1",
  12. "tx_amt": "1",
  13. "partner_id": "1503490901",
  14. "end_time": "20220928144502",
  15. "sub_appid": "wxa138a13aca591b95",
  16. "buyer_id": "oXI_E5KN-FJi1Hf65mWeiBF8fUlU",
  17. "mid": "",
  18. "tid": "",
  19. "batch_no": "",
  20. "trace_no": "",
  21. "ref_no": "",
  22. "is_foreign_card": "",
  23. "trade_no": "4200001546202209282282722088",
  24. "buss_discount_amt": "0",
  25. "platform_discount_amt": "0",
  26. "charge_amount": "0",
  27. "user_yima_id": "1111111111",
  28. "atu_trade_no": "4200001546202209282282722088",
  29. "atu_out_trade_no": "C20220928X1000000015",
  30. "bank_code": "",
  31. "fund_freeze_stat": "",
  32. "sign": "7A6B20F1AC3F18FBFC56F4A36CE3207F"
  33. }

请求报文说明

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

节点名称中文名称类型说明是否必填
sign签名String(32)计算签名方式请看2.1章节必填
notify_type通知类型String(1)1:交易结果通知必填
isspid商户号String(8)交易的翼码商户号必填
store_id门店号String(20)商户自定义的门店号必填
pos_seq支付请求流水号String(32)请求支付类接口的流水号(pos_seq)必填
org_pos_seq原交易流水号String(32)原支付订单的请求流水号(pos_seq)
仅退款类型有值
可空
source订单来源String(1)1:接口接入
2:收款码牌
必填
pos_id终端号String(20)source=1时,商户自定义终端号
source=2时,收款码编号
必填
pay_type支付方式String(3)502:支付宝
503:微信支付
515:微信小程序
512:银联二维码
516:数字人民币
517:网银支付
518:快捷支付
521:聚分期
620:银行卡刷卡
必填
trans_type交易类型String(1)1:支付
2:退款(仅支持部分通道)
必填
memo订单备注String(128)可空
status交易状态String(1)1:成功
0:失败
必填
tx_amt交易金额Number(9)单位为分必填
partner_id商户收款帐号String(64)支付宝PID/微信商户号/间联通道商户号可空
end_time交易完成时间String(14)格式:YYYYMMDDHH24MISS可空
sub_appid子商户应用IDString(32)微信的APPID可空
buyer_id买家标识String(128)支付宝:用户登录帐号(带星号脱敏)
微信/微信小程序:用户open_id
银联二维码:银行卡号(带星号脱敏)
网银支付:银行卡号(带星号脱敏)
快捷支付:银行卡号(带星号脱敏)
银行卡刷卡:银行卡号(带星号脱敏)
该字段是否有值取决于支付通道是否返回
可空
mid银联商户号String(64)仅银行卡刷卡类型(pay_type=620),成功时有值可空
tid银联设备号String(8)仅银行卡刷卡类型(pay_type=620),成功时有值可空
batch_no银联批次号String(20)仅银行卡刷卡类型(pay_type=620),成功时有值可空
trace_no银联流水号String(20)仅银行卡刷卡类型(pay_type=620),成功时有值可空
ref_no银联交易参考号String(20)仅银行卡刷卡类型(pay_type=620),成功时有值可空
is_foreign_card外卡标识String(1)0:不是外卡
1:是外卡
仅银行卡刷卡类型(pay_type=620),成功时有值
可空
trade_no支付平台订单号String(64)支付平台的订单号,仅成功时有值可空
buss_discount_amt商家优惠金额Number(9)单位为分,仅成功时有值可空
platform_discount_amt平台优惠金额Number(9)单位为分,仅成功时有值可空
charge_amount手续费Number(9)单位为分,仅成功时有值可空
user_yima_id用户号String(32)仅快捷支付(pay_type=518),成功时有值可空
atu_trade_noATU订单号String(64)支付宝/微信/银联订单号
客户手机支付凭证上的订单号
可空
atu_out_trade_noATU商户订单号String(64)支付宝/微信/银联商户订单号
客户手机支付凭证上的商户订单号
可空
bank_code发卡行编码String(20)该字段是否有值取决于支付通道是否返回可空
fund_freeze_stat资金冻结状态String(2)01:冻结
02:解冻
空表示无此类业务
可空

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

返回报文

success

返回报文说明

固定字符串“success”表示接收处理成功,其他表示失败。