使用 Payflow Pro 重复收费

Posted

技术标签:

【中文标题】使用 Payflow Pro 重复收费【英文标题】:Repeated charging with Payflow Pro 【发布时间】:2011-08-01 19:45:32 【问题描述】:

这可能是 Payflow Pro 技术支持的更多问题,但无论如何。我们正在尝试通过使用 ActiveMerchant 的 Payflow Pro 支付实现对一张信用卡的重复收费。我们需要客户提供一次信用卡信息,然后每月收取可变金额的费用。然而,Payflow API 中似乎没有任何明确的 STORE 方法,尽管它必须以某种方式成为可能,因为 RECURRING 计费是标准的一部分。我们是否遗漏了某些东西并且有相应的方法,或者我们必须使用一些解决方法?

【问题讨论】:

【参考方案1】:

好的,最后我自己想通了,仅供参考:这与定期付款无关。您可以通过发行和取消一些小额交易来简单地“存储”信用卡,然后您无需输入信用卡详细信息,而是输入返回的 request.token(或支付流程中的“pn_ref”)。

这样的东西应该可以工作

module ActiveMerchant #:nodoc:
  module Billing #:nodoc:
     class PayflowGateway

       def store(credit_card, options = )
         stored = purchase( 1, credit_card)
         return stored unless stored.success?

         # we may charge some money we should not but I guess there is
         # no better way for now
         voided = void(stored.authorization)
         return voided unless voided.success?

        return stored
      end

    end
  end
end

【讨论】:

对不起,这么晚了,pnref 收费有限制吗,我注意到交易大于 1000 美元会导致基于 pnref 的付款请求出错,请建议。【参考方案2】:

是的,我也是这样解决这个问题的。 PNRefs 对于实施您自己的定期计费系统非常方便......但是,我认为,您还将被收取 1 美元的授权和无效金额,因为 VISA 和其他人开始打击将这些作为帐户的使用验证。他们现在建议您使用 ZDA(零美元金额)授权,它返回错误代码 0 和响应消息“已验证”而不是“已授权”。这适用于所有商业银行 - 除非 PayPal 是您的商业银行,在这种情况下,您将收到错误代码 4 - “无效金额”。如果 PayPal 是您的商户银行,他们只建议进行 1 美元的授权和无效,显然他们承担了 VISA 费用。

这里有一篇很好的文章,介绍了进行零美元授权的费用和推荐做法: https://www.x.com/docs/DOC-1561

【讨论】:

以上是关于使用 Payflow Pro 重复收费的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 高级付款和 PayFlow 链接与重复付款

php [PayPal Pro Payflow]更改PayPal Pro Payflow中的信用卡图标

使用 Paypal Payflow Pro 进行快速结帐 - 托管页面

Magento:使用 PaypalUK 模块的 Payflow Pro?

使用 Payflow Pro 进行定期付款 - 交易类型无效

PayPal Payflow Pro 错误