【发布时间】:2017-09-23 05:40:06
【问题描述】:
这个问题专门针对Square电子商务api。
希望这个问题可以传达给 Square 的开发团队。
我正在为我的网站构建嵌入式支付表单,但我不确定如何处理与信用卡相关的错误。 具体来说。
当信用卡收费端点抛出异常时。它返回类似这样的内容
Array ( [0] => stdClass Object ( [category] => PAYMENT_METHOD_ERROR [code] => VERIFY_AVS_FAILURE [detail] => Postal code check failed. ) )
我想做的是查看错误并确定错误是否是客户无法控制的结果。
例如,如果错误是 API 错误,那么我只想显示一条通用消息,告诉用户稍后再试。而如果错误是因为用户输入了错误的邮政编码。我想专门告诉用户更正他们的邮政编码。
所以我找到了这个链接 https://docs.connect.squareup.com/api/connect/v2/?q=error#type-errorcode
它显示了一个错误类别列表。它还显示特定错误代码的列表。
但是我的问题是, 哪个类别或哪个代码列表是最终用户错误的结果?
现在我有一个 switch case 语句,如果[code] 字段中显示以下任何内容,我将向用户显示相关错误,其他任何内容都将显示一般错误。
这是正确的做法吗?
CARD_EXPIRED
INVALID_EXPIRATION
INVALID_EXPIRATION_YEAR
INVALID_EXPIRATION_DATE
UNSUPPORTED_CARD_BRAND
INVALID_CARD
CARD_DECLINED
VERIFY_CVV_FAILURE
VERIFY_AVS_FAILURE
CARD_DECLINED_CALL_ISSUER
【问题讨论】:
-
请先阅读Why is asking a question on “best practice” a bad thing?,然后再尝试提出更多基于意见的问题,这些问题会引发争论性讨论,因为他们没有一个一致同意的答案。
标签: php square-connect