0

我们在 Ruby on Rails 上运行电子商务网站,为了处理信用卡,我们使用 ActiveMerchant 插件使用我们的 API 凭据连接到我们的 PayPal 网站支付专业帐户。

作为结帐过程的一部分,我们首先在网关对象上调用授权函数,然后,在进一步检查之后,我们执行捕获部分。

我们最近遇到了一个错误,即一笔金额在客户的帐户中被保留两次:一次是授权费用,第二次是最终购买。因此,对于客户来说,看起来我们向他收费了两次(一次是为了授权,一次是为了最终购买),而我们实际上只收到了一次钱,而他账户上的“第二次收费”只是我们不明确的授权由于某些原因。(这似乎尤其发生在 PayPal FMF 拒绝我们的交易并且我们重新处理时。)

我正在尝试通过为买方和卖方创建 PayPal 沙盒帐户来解决此问题。我通过 Rails 控制台逐行运行代码并模拟不同的条件以尝试复制错误。但是,我成功的信用卡交易只出现在我的“卖家”/“商家”账户中,而不出现在 PayPal 沙盒的“买家”账户中,所以我看不到我的代码序列对客户卡的影响。这篇文章似乎表明事情就是这样,确实不可能测试对买方信用卡方面的影响。这篇文章建议使用 PayPal Express Checkout 但这不是我们网站上需要的,因为我们'

如何测试我的代码对客户信用卡的影响?是不是我在 PayPal 中遗漏了一些东西,或者 ActiveMerchant 中是否有一些模式/日志/监视器可以用来查看?我需要找到导致我们两次授权的代码行。

4

1 回答 1

0

如果初始交易被 FMF 拒绝,然后您重新尝试另一笔交易,这将导致买家卡再次被冻结,因为这将是一次完全不同的交易尝试。银行可能已经批准了第一笔交易,但随后 FMF 过滤器根据您的设置拒绝了它。就银行而言,它仍然是被批准的有效收费。因此,当您进行第二次尝试时,这将导致卡第二次持有相同金额但不同的交易。

于 2013-04-12T13:13:18.790 回答