2.6付款码/刷卡支付

优质
小牛编辑
128浏览
2023-12-01

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

此协议的返回有两种情况:一是扫码后无需密码直接完成交易,则协议马上返回。二是需要用户输入密码,返回status=0,请根据state的内容分别进行后续处理。

如果为WAIT表示用户正在输入密码,请调用协议2.7继续查询支付状态。

如果state为RETRY为服务器未能返回结果,也请继续调用2.7继续查询支付状态。

建议5秒一次重试,直到返回成功或失败,或是30秒超时后结束。

若出现多次重试无法返回成功,请使用协议2.10撤销交易,再重新刷码交易

*2020-07-15 get参数新增make_marketing 是否执行消费返现奖励 1=执行 0=不执行 默认不执行(限制条件说明:门店收款账户仅为微信特约商户或者微信普通商户才能触发消费奖励,其他收款账号类型不支持)

请求参数说明

参数描述必填示例值类型最大长度
action接口参数组object
└action需要调用的接口名称cash_code_paystring
getGET参数组,本组参数需要参与签名object
└auth_code微信/支付宝付款码131227381317035947string
└amt支付金额258
└bzid业务单号47302320string45
└no_discount_amt不打折金额(支付宝有用)0number
└nowait用户需要密码时不等待直接返回1number
└table桌台号888number20
postPOST参数组object
└bill账单明细列表list
└└gdsid菜品id53392number
└└qty数量11number
└└amt金额33number
└└name名称农夫山泉string
└└desc描述瓶/001string
└└price单价3number
└└rebate是否可折扣,设置100为不能折扣100number

请求示例

{
	"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,出错为01number
type类型, wx=微信,ali=支付宝 ,yl=银联wxstring
statestatus=0时,用于判断当前支付状态,WAIT表示用户输入密码WAITstring
trid渠道交易号1001880236201512061938410952number
payid线上支付流水号72463number18
pay_amount实际支付金额0.01number
buyer_id渠道用户idvan***@21cn.comstring
info错误时会返回相应的错误信息支付成功string
out_trade_no第三方交易号SP_108505925422120062913321407826string
trade_state渠道支付状态string
openid渠道用户id2088702732392722number
appid渠道appidstring
merchant_no收款账户S830500277000014string
end_time支付完成时间20200629133216number
duration接口请求时间1649msstring
msid交易门店10021number

响应示例

{
  "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"
}