在不存储信用卡信息的情况下重复计费可变金额

Posted

技术标签:

【中文标题】在不存储信用卡信息的情况下重复计费可变金额【英文标题】:Recurring billing variable amount without storing credit card information 【发布时间】:2011-11-09 12:10:49 【问题描述】:

我使用 PayPal Standard、PayPal Website Pro、PayPal Express 和 Authorize.Net 实现了几个支付网站。

现在我正在实施一个需要定期计费的网站。我唯一的问题是可变金额,因为我不存储信用卡信息,而且每个周期金额不固定

我们可以为我的项目使用 PayPal 或 Authorize.Net 吗?如果没有,您能否为此推荐任何可靠的支付网关(支付美元,网关位于美国)?

【问题讨论】:

【参考方案1】:

我找到了解决方案。 PayPal 调用 ProcessReferencePayment。

首先,我需要使用DoDirectPayment从信用卡中扣款,并存储成功的交易号。

之后,我只需调用 DoReferenceTransaction 以及 OrderTotal 和 ReferenceID(之前的交易编号)。

DoReferenceTransactionRequestDetailsType

DoReferenceTransactionReq

【讨论】:

术语因处理器而异,但您正在寻找的基本概念是“信用卡标记化”。 Paypal 和 Authorize 都提供此解决方案(Paypal 术语中的“参考交易”,John 在上面回答的 Authorize 术语中的“CIM”)。【参考方案2】:

您可以使用Authorize.Net's Customer Information Manager (CIM) 之类的服务为您存储信用卡和账单信息,然后创建您自己的计划引擎,根据您使用 CIM 为他们存储的付款方式收费。 CIM 还允许您随时进行非周期付款。

【讨论】:

我可以使用除调度引擎之外的 CIM。例如,如果客户支付了一次,下次他/她只需输入唯一标识符即可,除了所有信用卡信息。 是的。只要您可以识别他们是谁,并且您保存了 Authorize.Net 返回给您的唯一标识符,您就可以随时向他们收费,而无需向他们询问任何信息.【参考方案3】:

您是否查看过 PayPal 的 IPN 变量?

https://www.paypal.com/cgi-bin/webscr?cmd=p/acc/ipn-subscriptions-outside

通常您必须取消然后重新批准新订阅...但也许您可以使用变量以编程方式执行此操作。

【讨论】:

【参考方案4】:

如果您可以将代码中使用的任何公式放在一起,那么账单的可变金额应该不是问题。但是,如果您没有存储实际的信用卡信息(我可以理解为什么),那么我看不出您如何能够每月向客户收费。通常,您需要信用卡或银行信息才能进行直接转账。

如果您绝对无法存储信息,那么我唯一能想到的就是建立一个自动计算和通知系统,该系统可以向客户发送一封电子邮件,其中包含将他们带到表单的链接,以便他们可以输入信息尽可能简单。否则,您需要将他们的信用卡信息保存在安全的地方,并每月简单地向他们收费,这并不罕见。

【讨论】:

您可以使用 PayPal Express 进行固定金额(我的理解)定期计费,而无需存储信用卡信息。

以上是关于在不存储信用卡信息的情况下重复计费可变金额的主要内容,如果未能解决你的问题,请参考以下文章

如何在不登录Paypal的情况下使用信用卡支付

在不处理的情况下在线获取信用卡信息——如何最好地做到这一点?

如何使用 Authorize.Net 一次性从信用卡中收取费用并设置自动定期计费

在不符合 PCI 的情况下通过 PayPal 重复借记卡/信用卡付款

是否可以在不存储卡的情况下将交易与客户联系起来?

使用 Payflow Pro 重复收费