现金支付类型不 return serverTransactionId 在方形寄存器 API (Android)

Cash tender type doesn't return serverTransactionId in square register API (Android)

每当我通过 square register API 发起交易并且用户使用现金作为支付类型时,我都没有得到成功响应的 serverTransactionId。我需要 serverTransactionId 才能调用连接 API 的 RetrieveTransaction 端点。如何在不从寄存器 API 取回 serverTransactionId/transactionId 的情况下调用 RetrieveTransaction?

serverTransactionId 对于现金支付通常为空,因为创建的交易在切换回您的应用程序之前尚未被 Square 的服务器分配 ID。相反,您需要列出交易,通过 clientTransactionId 匹配找到正确的交易,然后如果您想对其进行进一步操作,您应该能够看到 serverTransactionId。有关详细信息,请参阅 https://docs.connect.squareup.com/api/register/android/com/squareup/sdk/register/ChargeRequest.Success.html#clientTransactionId