【发布时间】:2019-08-17 08:41:03
【问题描述】:
我将Authorize.Net Accept.js 用于带有订阅的自定义购物车,使用ARBCreateSubscriptionRequest API,我们将付款随机数作为不透明的数据元素传递给它。
虽然这可行,但它有这 3 个故障发生在 ARBCreateSubscriptionRequest(订阅)上但不会发生在 CreateTransactionRequest(单次付款)上:
- 不确认 CVC(卡号)。
- 它没有确认有效的卡到期日期。
- 它没有确认可用资金开始订阅。
与 Authorize.Net 技术支持合作,他们确认正确的程序是:
- 使用
CreateTransactionRequest创建订阅的初始付款,从而立即响应并解决上面列出的问题。 - 然后,他们说要在后面加上
ARBCreateSubscriptionRequest,其中开始日期是他们订阅的下一个期限。
当然,是的,即使没有 CreateTransactionRequest,但在 24 小时后订阅初始付款开始时仅使用 ARBCreateSubscriptionRequest,卡将失败,并且可以将 webhook 消息发送到我的购物车,让我知道禁用我启用的任何内容。但是,立即响应会更合适,并且肯定会减轻潜在的客户挫败感和商家的挫败感。另外,如果一个人在购买时运送了一些东西,那么商家知道购买成功是至关重要的。
例如,假设我每月收取 9 美元的订阅费用。当月的第一笔付款将是CreateTransactionRequest,价格为 9 美元。然后,创建ARBCreateSubscriptionRequest,延迟从下个月的第一天开始,间隔每个月。因此,客户在购买后立即以最初的 9 美元获得处理(通过/失败)。然后,当下个月开始时,他们的订阅费用为 9 美元/月。
好的,我 100% 明白这一点。但是在这里我没有在文档或支持票中得到明确的答案。 CreateTransactionRequest 和 ARBCreateSubscriptionRequest 都需要自己独特的付款随机数。
关键问题:如果使用 Accept.js 生成单个 nonce,我如何获得两个 nonce?如果我使用 Accept.js 生成第二个随机数,它会使前一个无效吗?我很困惑,文档没有解释。
【问题讨论】:
标签: javascript e-commerce subscription authorize.net accept.js