1

将 AuthNet 的自动定期计费系统与其 Silent Post 功能集成在一起,以在我们团队的 Web 应用程序中创建付费功能系统。无声帖子功能的文档很少,但我遇到了几个关于 SO 的有用主题以及我们的成员撰写的一些博客文章(尤其是John Conde 的 “关于无声帖子的一切”),以帮助指导方式。我有一些更专业的问题,但我希望你们中的一些更有经验的人可以提供帮助。

Authorize.net 文档包括此通知:

测试环境账户不处理 ARB 订阅交易。如果您使用的是测试环境帐户,您将不会收到任何形式的这些电子邮件通知。使用测试环境帐户时,您也将无法接收 ARB 订阅交易 Silent Post。

我想知道是否有人知道这是否意味着在他们的控制面板中设置为测试模式的帐户,或者这是否指的是那些在 AuthNet 平台上工作的开发者专用帐户,独立于部署?我们用于测试的帐户是在测试模式下设置的实际商家帐户,我们正在接收通过 AuthNet CP 完成的虚拟终端付款的静默帖子,但即使是成功的 ARB 也不会显示静默帖子。

另外 - 可以使用什么样的参数来确保无声帖子起源于 AuthNet?我设置了一个端点并从静默帖子以及 $_SERVER 超全局中打印出请求对象 - 除了 CP 中设置的 MD5 哈希值之外,它们似乎没有发送任何标识。这很好,但我想知道限制特定远程地址是否有任何优势 - 我认为这不太可能,因为帖子可能来自数据中心,为发送静默帖子的任务分配了大量 IP。

此外,ARB 规范仅在非常具体的标准下将 AuthNet 内的订阅状态设置为 SUSPENDED(仅当失败的付款是第一次重新计费时,如果不是,则在随后几天的两次尝试之后。)这是暂停订阅的正常做法吗?如果我们想做一个拒绝触发暂停,撤销该功能的逻辑是否也应该发出一个 UpdateSubscription API 调用并手动设置为暂停以放弃默认规范?

4

1 回答 1

1

我想知道是否有人知道这是否意味着在他们的控制面板中设置为测试模式的帐户,或者这是否指的是那些在 AuthNet 平台上工作的开发者专用帐户,独立于部署?

这是指两者。任何测试 ARB 交易将永远不会被处理,也不会生成静默帖子。这可能就是为什么他们的开发者论坛上充斥着关于测试 ARB 的问题。基本上,除了设置实时订阅之外,您在测试时可以做的最好的事情是:

  • 使用开发者帐号测试 API 调用。如果您获得订阅 ID,您就知道您的集成运行正常。
  • 通过向其发送模拟 POST 提交来测试 Silent Post。我可以发布一个示例表格来执行此操作。

另外 - 可以使用什么样的参数来确保无声帖子起源于 AuthNet?

在静默帖子中返回的 MD5 散列是一个字符串的散列,其中包含一个 MD5 散列值(在安全设置中设置),大概只有 Authorize 并且您知道。因此,您使用返回的信息加上秘密哈希字符串在您的一端生成一个哈希,并进行比较以验证响应。可以在此处找到有关哈希的详细信息。

这是暂停订阅的正常做法吗?

正常练习?老实说,我不知道。我不确定其他公司如何处理它。在他们的社区论坛中某处有一个帖子,Authnet 员工解释了它是如何工作的,但我无法在此处找到它的链接。当我读到它时,这对我来说很有意义。

如果我们想做一个拒绝触发暂停,撤销该功能的逻辑是否也应该发出一个 UpdateSubscription API 调用并手动设置为暂停以放弃默认规范?

如果订阅失败,它会被 Authorize.Net 自动挂起,因此您无需执行任何操作。但是您确实需要在系统中更新您的用户帐户并将其暂停(假设订阅是针对某种用户帐户的)。

于 2011-04-04T18:43:34.247 回答