跳到主要内容

云端模式集成

介绍

在商家商店中,如果POS application是基于网络的,则需要与云服务器实时交互,因此更方便选择云API集成解决方案。具体流程如下:

跨终端应用集成云端API模式结构图,流程图
  1. POS applicationPOS server发送订单信息(包括订单id、总金额…)和终端sn。
  2. POS server通过OpenAPI向CodePay Gateway发送推送订单请求。
  3. CodePay Gateway接收到订单信息并预创建交易,然后向CodePay TMS发送推送设备消息请求。
  4. CodePay TMS通过物联网通信协议向Payment terminal推送消息。
  5. Payment terminal接收到消息并唤醒CodePay Register应用程序的结账组件以处理交易信息。CodePay Register将银行卡信息/移动钱包用户支付凭证打包到交易数据中,并向CodePay Gateway发送支付请求。
  6. CodePay Gateway处理交易包并发送到支付网关/获取/处理器/银行。
  7. 支付网关/获取/处理器/银行对CodePay Gateway的响应。
  8. CodePay Gateway同时处理:
    • 将交易结果响应到CodePay Register应用程序。
    • POS server发送异步交易结果请求。(如果失败,CodePay Gateway将重试多次)
  9. POS server将交易结果通知给POS application,并在屏幕上显示支付结果。

序列图

1. 将订单推送到终端

跨终端应用集成云端API模式序列图1:将订单推送到终端
  1. 商家POS application创建订单并向POS server请求付款。
  2. POS server请求Create Order API将订单推送到指定的支付终端。
  3. CodePay Gateway创建交易状态为9的预付款订单,在此状态下可以取消付款。请通过Close Order API取消。
  4. CodePay Gateway请求CodePay TMS将订单推送到指定的支付终端。
  5. CodePay TMS接受订单推送请求并返回成功响应。
  6. CodePay Gateway将使用交易编号、消息id和其他信息响应POS serverPOS server应将此信息存储为交易凭证,以备将来对账或其他操作需要。
  7. POS server开始查询订单的交易状态,直到交易成功或关闭Query Order API
  8. POS server响应POS application,重定向到订单等待支付结果界面。

2. 终端支付

跨终端应用集成云端API模式序列图2:终端支付
  1. CodePay TMS是一个为支付终端管理物联网设备的云服务CodePay TMS通过MQTT与终端建立长连接通信。CodePay TMSCodePay Gateway接收到支付指令后,将支付指令消息发送到指定的支付终端,并唤醒CodePay Register,启动支付处理流程和接口。
  2. CodePay Register接收来自持卡人或移动钱包的支付数据,并请求CodePay Gateway处理支付。
  3. CodePay Gateway接收付款请求,并将订单状态更改为待付款。此时,POS server无法调用订单取消API关闭订单。
  4. CodePay Gateway请求支付网关/获取/处理器/银行等支付处理机构处理银行卡支付或移动钱包支付。
  5. 对交易结果的响应。
  6. 将本地数据库的事务状态修改为成功或失败。
  7. 将订单支付结果异步通知给POS serverPOS server应接收通知并验证通知数据,并修改本地订单交易状态。有关详细的处理过程,请参阅Notification of trading results
  8. CodePay Gateway将支付结果返回给CodePay Register
  9. CodePay Register在屏幕上显示付款结果,打印收据、发送账单等,交易过程结束。

开发指引

访问我们的API

请参阅下表中的云API,它们提供多种语言的SDK。有关更多信息,请访问SDK章节

访问这些API需要提前获取一些参数,还需要了解更多关于API访问的规则,请参阅支付网关集成指南

API列表 Type 说明
创建订单API通过此api提交付款订单
关闭订单API通过此api关闭未付款订单
查询订单API通过此api关闭未付款订单
查询退款API通过此api查询负面交易订单(采购取消/预授权取消/退款/预授权完成取消/预认证完成退款)的交易结果
交易结果通知Webhook交易完成后,通知商家,告知商家交易结果

应用程序安装和设置

在此之前,请在Payment terminal上安装应用程序“CodePay Register”,启动应用程序,依次点击“Settings ->General ->ECR Hub”。将连接模式设置为“Cloud”,如下图所示:

跨终端应用集成云端API模式应用程序安装和设置示意图

返回主界面,成功连接和失败连接的示例图像如下:

跨终端应用集成云端API模式应用程序安装和设置示意图,联网成功
跨终端应用集成云端API模式应用程序安装和设置示意图,联网失败