付款码支付接口

接口名称

openapi.payment.order.swipe

请求方式

POST

请求头

application/json; charset=utf-8

请求业务参数

参数 类型 是否必填 最大长度 描述
merchant_order_sn string 32 第三方商户订单号,确保唯一,前后不允许带空格
type int 1 支付方式[微信1/支付宝2/银联5]
auth_code string 18 用户支付授权码 刷脸场景对应获取到的ftoken(支付宝)
total_fee float 10 订单金额(元),精确到2位小数
store_id int 10 门店ID,当存在多个门店时,此字段必填
cashier_id int 10 收银员ID
device_no string 18 设备终端号
body string 128 对交易或商品的描述(微信上body值显示在商品,支付宝上body值显示在商品说明)
call_back_url string 256 支付成功后回调链接
equipment_type int 3 硬件类型(90-127) ,非约定情况下该参数不需要传
discount_switch int 1 是否享受商家折扣【 1 享受 0不享受】
attach string 127 附加字段
goods_tag string 不定 订单优惠标记,代金券或立减优惠功能的参数【若为单品券则必填】
detail string 6000 商品详细描述,Json格式,对于使用单品优惠的商户,该字段必须按照规范上传,详见“单品优惠参数说明”
sub_appid string 不定 公众号appid
timeout_express string 14 订单失效时间
格式为yyyyMMddHHmmss,如2009年12月27日9点10分10秒表示为20091227091010。
建议:最短失效时间间隔大于1分钟
大于当前下单时间
scene string 32 刷脸场景 必填 固定值 FACE_PAY
buyer_id string 32 买家的用户id 刷脸场景 支付宝对应buyer_id 微信对应open_id (注:微信暂未开通)

以下为单品优惠活动detail字段列表说明:

变量名 类型 是否必填 描述
cost_price int 1.商户侧一张小票订单可能被分多次支付,订单原价用于记录整张小票的交易金额。
2.当订单原价与支付金额不相等,则不享受优惠。
3.该字段主要用于防止同一张小票分多次支付,以享受多次优惠的情况,正常支付订单不必上传此参数。
receipt_id String(32) 商家小票ID
goods_detail String 单品信息,使用Json数组格式提交,见下文说明

以下为单品优惠活动goods_detail字段说明:

变量名 类型 是否必填 描述
goods_id String(32) 商品编码
goods_name String(256) 商品名称
quantity int 商品数量
price Integer 商品单价,单位为分
  • 请求示例:
{
  "app_id": "20161219113441561987",
  "method": "openapi.payment.order.swipe",
  "format": "json",
  "sign_method": "md5",
  "sign": "5F0EA68A1278C0F7A524073D2B498C43",
  "nonce": "pp2kiwi",
  "version": "1.0",
  "biz_content": "{\"attach\":\"\订\单:123456\",\"store_id\":25249,\"cashier_id\":151156,\"merchant_order_sn\":\"201704191492587335309\",\"total_fee\":100,\"type\":1,\"auth_code\":\"130784921069830971\",\"discount_switch\":\"1\"}"
}

成功响应参数

参数 类型 是否必填 最大长度 描述
merchant_order_sn string 32 第三方商户的订单号
order_sn string 20 付呗订单号
trade_no string 32 商户单号
trade_state string 20 交易状态, USERPAYING :用户支付中; SUCCESS:交易成功
total_fee float 10 实收金额(元)
net_money float 10 净收金额(元) = 实收金额 - 手续费 交易成功状态下返回
order_price float 10 订单金额
pay_time int 10 支付时间(秒)
type int 1 1:微信付款码 2:支付宝付款码 5:银联
discount_money float 10 折扣减掉的金额【trade_state等于 SUCCESS 才有返回】
buyer_pay_amount float 10 买家实际支付的金额【trade_state等于 SUCCESS 才有返回】
attach string 127 附加数据
store_id int 10 付呗系统的门店id
cashier_id int 16 付呗系统的收银员id
device_no string 32 设备终端号
body string 128 对交易或商品的描述(微信上body值显示在商品,支付宝上body值显示在商品说明)
user_id string 32 微信顾客支付授权的“open_id”或者支付宝顾客的“buyer_user_id”
user_logon_id string 32 支付宝顾客的账号
cash_coupon_fee float 10 预充值代金券金额
no_cash_coupon_fee float 10 免充值代金券金额
fee float 10 交易手续费 精确到小数点后2位 单位(元)
platform_order_no string 32 平台方订单号

[!TIP] trade_state 为 USERPAYING时, 需调用查询接口查询最终支付状态

  • 响应示例:
{
  "result_code": 200,
  "data": {
    "merchant_order_sn":"20160120105532871512",
    "order_sn":"20160119233754227705",
    "trade_no":"2018092616294901086756739438",
    "trade_state":"SUCCESS"
    "total_fee":80.00,
    "pay_time":1478574762,
    "type":1,
    "discount_money":20.00,
    "buyer_pay_amount":79.90,
    "attach":"",
    "store_id":123,
    "cashier_id":0,
    "user_id":"",
    "device_no":"123456",
    "body":"",
    "user_logon_id":"",
    "cash_coupon_fee":0.1,
    "fee":0.04
  },
  "result_message": "成功"
}

失败响应参数

参数 类型 是否必填 最大长度 描述
merchant_order_sn string 32 第三方商户的订单号
sub_code string 不定 平台方错误码
  • 响应示例:
{
  "result_code": 400,
  "data": {
        "merchant_order_sn":"20160120105532871512"
    },
  "result_message": "失败",
  "sub_code":"ERROR_CODE"
}

提示:当同步返回信息不能判定订单是否支付成功(网络抖动、服务器超时、返回信息异常等),必须调用查询接口再次确认支付结果

results matching ""

    No results matching ""