Authorize.Net Paypal Express PHP API:交易未在 Authorize.Net 中更新,也未捕获正确金额的问题

Posted

技术标签:

【中文标题】Authorize.Net Paypal Express PHP API:交易未在 Authorize.Net 中更新,也未捕获正确金额的问题【英文标题】:Authorize.Net Paypal Express PHP API: Issue with transaction not updating in Authorize.Net , nor capturing correct amount 【发布时间】:2020-08-04 13:44:33 【问题描述】:

我们已经通过 Authorize.Net 在 php (https://developer.authorize.net/api/reference/features/paypal.html) 中实现了 Paypal Express API。它在一年多前完成,并且一直运行良好。我们最近意识到,当 Paypal 授权在第 2 步“仅授权,继续”中更新时,它不会在 Authorize.Net 中更新。发生捕获时,它仅捕获原始金额,尽管 Paypal 具有正确的更新金额。

这是我们的流程(按照 Authorize.Net/Paypal API 说明):

    我们向 Authorize.Net/Paypal 发送请求以创建交易。里面是商品的总成本。 Paypal 返回一个安全链接,我们将用户重定向到该链接 Paypal 使用令牌将用户重定向回我们。我们使用令牌来获取用户的运输数据并获取授权/交易 ID。 我们根据运输数据计算税款,并将用户发送到确认页面进行审核。 当用户提交时,我们发送第二个授权请求(仅授权,继续),如文档所示,使用网关交易 ID 以新金额更新交易等。

现在的问题是,Authorize.Net 仍然有原始金额(不含税)。当我们通过相同的 API 对该交易运行捕获时,由于某种原因,它只捕获原始金额,而不是含税金额。我们现在进行了大量交易,但没有收到任何一笔交易的税款。

这是 Paypal 和 Authorize.Net 中的相同交易。 Paypal 的屏幕显示授权价格为 120 美元,更新价格为 130.xx 美元(含运费)。

Authorize.Net 显示它以 120 美元的价格成功捕获。

这些是相同的交易,我们只使用 Authorize.Net Paypal Express API。 Authorize.Net 怎么没有得到更新?为什么它没有捕获全部金额?

【问题讨论】:

我已经得出结论,这是 Authorize.Net Paypal Express API 中的一个错误。 Paypal 显示正确、更新的交易金额,但 authorize.net 没有。因此,当我使用 Authorize.Net API 进行捕获时,我被税前金额所困扰。正如 Paypal 支持和其他人所建议的那样,我尝试以高于授权的金额进行捕获,并且 Authorize.Net 返回错误:“请求结算的金额不能大于授权的原始金额。”这很合乎逻辑。 【参考方案1】:

当我们通过同一个 API 对该交易运行捕获时,由于某种原因,它只捕获原始金额,而不是含税金额。

您需要:

获取第二次授权,而不是原始交易。这应该是正确的解决方案。 发送包含您正在捕获的新金额的详细信息的捕获请求。

【讨论】:

谢谢普雷斯顿。文档没有概述发送新金额的方法。我先试试你的第一颗子弹。 好的。我刚刚尝试了第一个项目符号,但我了解到,当您传入一个参考交易 ID 时,第二个授权使用与第一个相同的交易 ID。所以没有办法捕获“第二次”授权。下面是使用 print_r() "[transId:private] => 62315491947\n [refTransID:private] => 62315491947\n" 的 API 响应 嗯。那时我会向 Authorize.Net 团队寻求支持。作为一个直接的 PayPal API,我所描述的是它是如何工作的,但是您会受到 Authorize.Net 代理向您公开的内容/他们希望您如何做事的限制

以上是关于Authorize.Net Paypal Express PHP API:交易未在 Authorize.Net 中更新,也未捕获正确金额的问题的主要内容,如果未能解决你的问题,请参考以下文章

什么是与 Paypal、Google Checkout 和 Authorize.net 一起使用的优秀 PHP 支付库? [关闭]

ActiveMerchant - 我可以将商家 ID 号与 Authorize.net 集成吗?

Auth.net 支付网关类似于 paypal

Authorize.net 支付集成[关闭]

Magento - 自动重定向到配置的支付网关之一

Magento PayPal 付款缺少运费......但只是有时