销售结果超时(销售成功超时)
此参数设置设备在向外围设备发送“Vend Approved”(授权交易)消息后,等待外围设备响应(“Vend Approved”/“Vend Failure”)的时间。在 Nayax Core 中,此参数的最大值为 65535 秒(18 小时 12 分 15 秒)。如果您需要更长的等待时间,可以使用多会话模式,该模式下信用卡超时时间为 23 小时(截至2025年,最长可达72小时。 ),而对于专用卡,则需要 72 小时。状态命令
配对过程完成后,当网络通信中断时,设备会立即发送“状态”命令,以便机器知晓。在 Java SDK 中,该命令大致如下所示(C# 和 C 中的代码格式相同):Java SDK's log
通信恢复后,设备回到空闲状态,将发送值为 20 的状态命令:
Java SDK's log
如果消费者在读卡时遇到问题,系统会提示其插入卡片或使用其他卡片。但如果卡片余额不足,屏幕上不会显示相关信息,因为我们不想让消费者感到尴尬(我们也不会将其记录在 SDK 日志中,因为这与 VPOST 和机器之间的通信无关,而是与设备和收单机构之间的通信有关)。通常,您可以在 Nayax Core 中查看交易取消/卡片被拒的原因。
沟通障碍
Marshall 协议使用 ACK 命令来响应每个发送的命令,这意味着如果您的外设向设备发送命令,它将收到一个 ACK 命令作为回复,反之亦然。该命令是接收方对发送方的响应,表明已收到该命令。如果没有收到 ACK,则该命令会发送两次。如果三次尝试(原始命令 + 两次重试)均未收到 ACK,则 SDK 将停止发送保持连接命令,设备将发送重置命令以重新建立配对过程。 交易过程中未收到确认:如果在“售卖成功”后未收到确认,则由 Nayax 负责结算。如果在授权后或“售卖成功”前未收到确认,Nayax 将取消交易。(如果在授权阶段之前未收到确认,交易也会被取消。)第三方服务器审批——机器如何通知SDK卡片是否获得批准
发送“Vend Request”后,消费者出示银行卡,随后会发送Transfer Data 命令,外围设备会获取卡片详细信息,并(自行处理,与 SDK 无关)将其转发给所需的第三方服务器。
一旦服务器批准/拒绝了该卡,外围设备将通过调用“client_gateway_auth(bool approved)”命令通知 SDK(从而也通知设备):
取消命令
如果您发送了“供应商请求”但尚未收到“供应商批准”(/“供应商拒绝”),您可以发送“取消”命令,这将导致发送“供应商拒绝”。 如果您在收到“vend approved”消息之前发送了“cancel”命令,但此时“vend approved”消息已经发送到您的机器,那么您将不会在日志中看到“vend cancel”的打印信息,因为在“vend approved”之后不能再发送“cancel”命令,因此外设端会发送“vend failure”消息。您也可以避免此时使用“cancel”命令,直接回复“vend failure”,这样也能得到相同的结果。 如果消费者想要开始交易,但在你发送“供应商请求”之前又取消了(无论是在出示卡片之前,还是在你收到“开始会话”之后,在你能够发送“供应商请求”之前——如果是第一种情况,你将在 SDK 的日志中看到“读卡器启用”),你也可以在发送“供应商请求”之前取消交易。仅在信用卡授权后才开始发送会话信息
使用预付卡时,会先进行授权,然后再发送“开始会话”指令。

不向消费者收费/以0的价格结束会话——这是什么问题?
关于以价格 0 发送“close session”——如果您想取消交易,应发送状态不为“ok”的“close session”,例如“failed to dispense”(因为以状态“ok”和价格 0 发送“close session”会被视为您机器端价格计算方面的某种错误)。 原因在于,任何查看该设备虚拟机 last sales 记录的人都会认为我们这边在结算交易上存在问题(支付问题、配置问题等)。相比之下,在您这边,外围设备与设备之间的交易流程完全没有问题,您只是出于自身原因不想向消费者收费。 这就是我们提供“vend failure”选项,以及“close session”状态“vend failure”和“cancel by user”的原因,因为这些状态表明产品未被提供,因此我们不会向消费者收费,并且我们会在 Last Sales/DTM 上显示相应的原因。 一旦你将交易状态更改为除“确定”以外的任何状态,你发送的价格将变得无关紧要,因为交易将被视为已取消。 可能的状态有: 0- 状态正常 1- 用户取消 2. 产品分发失败 4- 拒绝出价 然后您可以发送“关闭会话”命令。多渠道销售:如何进行部分自动售货的示例
部分自动售货仅适用于 Multivend,意味着只能售卖部分选定的产品。 例如,如果消费者选择了五件商品:
