用于门店扫客人的付款码进行支付结账,支持微信支付、支付宝支付



此协议的返回有两种情况:一是扫码后无需密码直接完成交易,则协议马上返回。二是需要用户输入密码,返回status=0,请根据state的内容分别进行后续处理。
如果为WAIT表示用户正在输入密码,请调用协议2.7继续查询支付状态。
如果state为RETRY为服务器未能返回结果,也请继续调用2.7继续查询支付状态。
SUCCESS 支付成功
WAIT 支付中
NOTPAY 未支付
ERROR 支付失败
FAIL 支付失败
CLOSED 已关闭
CANCELED 已撤销
REFUND 退款
REFUNDING 退款中
REFUNDFAIL 退款失败
建议5秒一次重试,直到返回成功或失败,或是30秒超时后结束。
若出现多次重试无法返回成功,请使用协议2.10撤销交易,再重新刷码交易
请求参数说明
| 参数 | 描述 | 必填 | 示例值 | 类型 | 最大长度 |
| action | 接口参数组 | 是 | object | ||
| └action | 需要调用的接口名称 | 是 | cash_code_pay | string | |
| get | GET参数组,本组参数需要参与签名 | 是 | object | ||
| └auth_code | 微信/支付宝付款码 | 是 | 131227381317035947 | string | |
| └amt | 支付金额 | 是 | 258 | ||
| └bzid | 业务单号 | 否 | 47302320 | string | 45 |
| └no_discount_amt | 不打折金额(支付宝有用) | 否 | 0 | number | |
| └nowait | 用户需要密码时不等待直接返回 | 否 | 1 | number | |
| └table | 桌台号 | 否 | 888 | number | 20 |
| post | POST参数组 | 是 | object | ||
| └bill | 账单明细列表 | 否 | list | ||
| └└gdsid | 菜品id | 否 | 53392 | number | |
| └└qty | 数量 | 否 | 11 | number | |
| └└amt | 金额 | 否 | 33 | number | |
| └└name | 名称 | 否 | 农夫山泉 | string | |
| └└desc | 描述 | 否 | 瓶/001 | string | |
| └└price | 单价 | 否 | 3 | number | |
| └└rebate | 是否可折扣,设置100为不能折扣 | 否 | 100 | number |
请求示例
{
"action": {
"action": "cash_code_pay"
},
"get": {
"auth_code": "131227381317035947",
"amt": 258.00,
"bzid": "47302320",
"no_discount_amt": 0,
"nowait": 1,
"table": "888"
},
"post": {
"bill": [{
"gdsid": "53392",
"qty": "11",
"amt": "33",
"name": "农夫山泉",
"desc": "瓶/001",
"price": "3",
"rebate": 100
},
{
"gdsid": "53371",
"qty": "11",
"amt": "55",
"name": "雪碧",
"desc": "罐/001",
"price": "5"
}
]
}
}响应参数说明
| 参数 | 描述 | 必填 | 示例值 | 类型 | 最大长度 |
| status | 返回状态。接口成功时为1,出错为0 | 是 | 1 | number | |
| type | 类型, wx=微信,ali=支付宝 ,yl=银联 | 是 | wx | string | |
| state | status=0时,用于判断当前支付状态,WAIT表示用户输入密码 | 否 | WAIT | string | |
| trid | 渠道交易号 | 否 | 1001880236201512061938410952 | number | |
| payid | 线上支付流水号 | 是 | 72463 | number | 18 |
| pay_amount | 实际支付金额 | 是 | 0.01 | number | |
| buyer_id | 渠道用户id | 否 | van***@21cn.com | string | |
| info | 错误时会返回相应的错误信息 | 是 | 支付成功 | string | |
| out_trade_no | 第三方交易号 | 否 | SP_108505925422120062913321407826 | string | |
| trade_state | 渠道支付状态 | 否 | string | ||
| openid | 渠道用户id | 否 | 2088702732392722 | number | |
| appid | 渠道appid | 否 | string | ||
| merchant_no | 收款账户 | 否 | S830500277000014 | string | |
| end_time | 支付完成时间 | 否 | 20200629133216 | number | |
| duration | 接口请求时间 | 否 | 1649ms | string | |
| msid | 交易门店 | 否 | 10021 | number |
响应示例
{
"status": "1",
"info": "支付成功",
"state": "SUCCESS",
"out_trade_no": "SP_108505925422120062913321407826",
"pay_amount": "0.01",
"buyer_id": "2088702732392722",
"trade_state": "",
"openid": "2088702732392722",
"appid": "",
"trid": "2020062922001492721423550321",
"merchant_no": "S830500277000014",
"end_time": "20200629133216",
"type": "ali",
"payid": "186200020001079336",
"duration": "1649ms",
"server_timestamp": 1593408736,
"server_time": "2020-06-29 13:32:16",
"server_name": "wx-task2.hz",
"msid": "10021"
}