配置和设备行为
启用后,结算将由外部程序处理,而不是由主机应用程序处理:- 结算交易的唯一方法是通过 ExternalSettlement 命令。
- 结算金额可以小于或等于授权金额。
管理未结算交易
当不提供产品或服务时,您必须主动管理交易,以保持良好的用户体验。- 外部取消: 如果无法进行结算,您必须立即发送外部取消请求。
- 对消费者的影响: 如果交易在未取消或结算的情况下仍保持授权状态,消费者的资金将一直保留在其支付方式中,从而导致潜在的纠纷。
外部结算流程
该流程包括两个阶段:由 EMV Core 处理的支付授权,以及由您的第三方服务器触发的结算或取消。付款授权
以下步骤涵盖了授权阶段,从轻触卡片到会话结束。
- 主机使用 EMV Core SDK 调用
PreAuthorize方法。 - EMV Core 开始轮询读卡器。主机应用程序应提示消费者轻触银行卡。
- 消费者将银行卡轻触读卡器。
- EMV Core 读取卡片数据并向 Nayax 服务器发送授权请求。
- Nayax 服务器与计费提供商进行授权。
- 计费提供商向 Nayax 服务器发送授权响应。
- Nayax 服务器将授权响应返回给 EMV Core。
- EMV Core 向主机应用程序发送
TransactionComplete事件。该事件包含交易 ID 和交易数据,其中NayaxTransactionId和SiteId位于authorizationDetails.Additional_Parameters字段中。
NayaxTransactionId 和 SiteId,以便日后在 External Settlement 或 External Cancel 请求中使用。
- 主机应用程序继续提供服务(例如,启动电动汽车充电会话或分发产品)。
完成交易
服务交付后,第三方服务器将根据结果处理结算或取消事宜。 如果提供了该服务:
- 第三方服务器通过调用
StartAuthentication方法并附带加密密文来发起通信以进行身份验证。 - Nayax 服务器解密密文并验证凭据以确认其真实性。
- 第三方服务器发送 ExternalSettlement 请求。请求必须包含从
TransactionComplete事件中获取的NayaxTransactionId和SiteId,并且必须在结算窗口内发送。 - Nayax 服务器与计费提供商进行结算。
- Nayax 服务器向第三方服务器发送 ExternalSettlement 响应,确认结算结果。

- 第三方服务器通过调用
StartAuthentication方法发起通信。 - Nayax 服务器会验证凭据。
- 第三方服务器发送 ExternalCancel 请求。请求必须包含从
TransactionComplete事件中获取的NayaxTransactionId和SiteId,并且必须在结算窗口内发送。 - Nayax 服务器会向计费提供商发起取消流程。
- Nayax 服务器接收来自计费提供商的响应。
- Nayax 服务器向第三方服务器发送 ExternalCancel 响应。
下一步
外部结算 API
用于结算来自第三方服务器的授权交易的 ExternalSettlement 端点的 API 参考。
外部取消 API
用于在未提供服务时取消已授权交易的 ExternalCancel 端点的 API 参考。