接入流程
对接过程的业务流程
正常使用支付平台的交易功能,至少需要经历如下三个步骤:
- 激活(一次)
- 签到(可选)
- 交易
激活
激活接口用于通过终端激活码(code)来获取终端号(terminal_sn)和终端密钥(terminal_key),以用于调用其他接口时的签名。
激活接口对于同一台终端,只需要调用一次。
签到
签到接口用于更新终端密钥(terminal_key)。出于安全考虑,开发者可以自行决定何时调用签到接口。终端密钥(terminal_key)一旦更新,旧密钥将会失效。
注:签到后secret丢失怎么办?
若因网络或其他原因未收到签到响应,可使用旧密钥再次发起签到请求。
极特殊情况下,两次签到均未收到响应,请联系客服处理。
交易
支付平台提供如下类的交易功能:
- 支付(pay): B扫C支付模式,支付平台会自动根据支付码识别支付方式。
二维码预下单(precreate): C扫B当面付模式,调用接口生成二维码,消费者扫码完成支付,接口返回的是二维码内容,开发者需要自己生成二维码图片,预下单完成后需要主动发起轮询去获取支付状态。
退款(refund): 根据支付平台订单号完成退款,可支持同一笔订单分多次退款。
撤单(revoke): 当天的订单可以通过这个接口撤销。和退款接口相比,调用撤单接口在实现全额退款的同时不会向商户加收手续费。
冲正(cancel):当终端的支付流程在进行过程中如果调用支付接口没有返回成功,为了避免交易纠纷,需要调用自动撤单接口完成冲正。
查询(query): 获取订单的最新状态。
主要交易功能时序
支付
pay接口何时发起轮询:如果pay同步返回的order_status不是最终状态,就需要马上发起轮询。轮询时间可以在3~5s,总时长控制在40~50s左右。
pay接口返回:biz_response.result_code是指一个动作的状态。biz_response.data罗列订单信息,biz_response.data.order_status是指订单状态。
二维码预下单
precreate接口何时发起轮询:
Web API接入:在得到预下单成功的结果后,即可向收钱吧服务器发起轮询请求。
预下单成功:biz_response.result_code="PRECREATE_SUCCESS" or biz_response.data.order_status="CREATED")
收钱吧目前所有预下单的订单有效支付时长约为4分钟,若超时仍未支付,收钱吧会自动取消该订单;因此轮询时间请控制在240秒左右。
轮询的间隔建议为前30秒内2秒一次,之后5秒一次。