PayPal定期付款的账单周期更新

3
我正在使用 laravel 4.2。我正在开发一个提供视频服务的项目。要求将 PayPal 支付网关与 recurring profile 集成。

虽然我已经使用 PayPal classical API 创建了很多 recurring profile,并且已经接近我的目标。但是我可悲地失败了,因为您不能在已创建的 recurring profile 中更新账单周期的日期

现在我感到无助。

我有一个向用户提供视频服务的项目。基本思路是,在注册时,用户选择订阅计划并插入 credit card 详细信息。由于这是每月订阅,因此每个月的付款应该自动续订。

在此期间,如果用户 升级 到更高的计划,则他将为当前月份新订阅金额与当前活动订阅金额之间的差异支付费用,并且其账单周期必须从今天更新到下个月。

例如,以下是三种订阅计划:

Basic for $10/month, 
Economy  for $20/month and 
Premium for $30/month

如果用户在5月1日以10美元的价格订阅了“基本计划”,那么他的“账单周期”将从5月1日到6月1日,并且每个月都会自动扣除10美元,直到他取消订阅或停止其配置文件的循环。现在,在5月5日之间,他升级到提供更多视频的经济型(实际金额为20美元),他将被收取差额= 20美元-10美元= 10美元的当前月份(即5月),他的“账单周期”将从5月5日到6月5日,他将从6月5日开始每月自动收取20美元。此外,用户应在第一次订阅时仅被要求插入信用卡详细信息,对于任何升级或循环,不应要求他再次插入信用卡。所有这些过程都应在我的网站上完成,用户不应被重定向到PayPal网站。有人知道如何实现这一点吗?

必须使用PayPal吗?Laravel的Cashier可以使用Stripe完成所有这些操作。http://laravel.com/docs/4.2/billing - user1871245
@MichaelN 它是否将信用卡信息存储在自身中?根据要求,我不能存储任何客户的信用卡信息。此外,它是否支持循环功能并更新计费周期,而无需再次请求信用卡信息进行任何操作? - Dev
根据Stripe API链接https://stripe.com/docs/api#update_plan中的说明,“更新计划名称。其他计划细节(价格、间隔等)是不可编辑的。”这是什么意思?这是否意味着一旦设计好了周期,就无法进行更新? - Dev
PayPal网关是否有专家可供咨询? - Dev
2个回答

3
有两个部分:PayPal和计费逻辑。
PayPal允许用户预授权公司从PayPal中扣除任意金额。 Blizzard和MyUS.com是其中的两个例子。用户授权一次$0.00,然后这些网站就可以使用同样的授权来收取任意金额-请考虑使用此功能。我不确定这个功能叫什么名字。
编辑:它被称为账单协议(/参考交易)。
在计费逻辑方面,当您在计费周期中升级用户时,请不要更改计费周期日期。如果他们在1月1日注册,请在每个月的第一天继续向他们收费。相反,如果用户升级,请执行以下操作:
1.更新您网站上的计费配置文件,以在下一个付款周期中收取更高的金额。 2.立即向用户收取按比例计算的费用,以弥补差额。
例如:我于2015年5月1日注册了每月10美元的服务。在5月5日,即我的订阅4天后,我决定升级到每月20美元。现在您需要做这两件事。设置我的资料以在2015年6月1日扣除20美元,然后计算升级的按比例计算的费用:
本计费周期剩余26天,占周期的83.8%。立即向我收取8.38美元(10美元差价* 0.838),以获得下一个定价层的全部优惠。如果我在月中升级,比如说15号,我将完成50%的周期。如果我在30日升级,则计费周期仅剩1天(3.2%),按比例计算的费用为0.32美元。
如果我于2月5日降级,情况将反过来。更改我的计费配置文件以在3月1日收取10美元,然后计算按比例计算的折扣。我已经使用了28天中的4天,因此需要退还剩余周期(24天),该周期为85.7%,因此我会立即获得8.57美元的信用,并且仅会在3月1日收取1.43美元。
如果我等到2月27日才降级到每月10美元,那么只有3.5%的周期剩余,并且我只会获得0.35美元的信用。

1
谢谢。但我已经开始使用Stripe而不是PayPal,因为PayPal有很多需要遵守的限制。 Stripe更好用。 - Dev
谢谢您的解释,但是PayPal不允许直接在没有用户界面的情况下收费,就像您在第二步中所说的那样。因此,当用户打开所选的订阅计划时,您不能将该金额与订阅金额相加。您知道如何在PayPal上无需用户界面进行收费吗? - Margi212

0
如果我在2月5日再次降级,情况将会相反。请更改我的账单配置文件,在3月1日向我收取10美元的费用,然后计算按比例计算的折扣。我已经使用了28天周期中的4天,因此需要退还剩余周期(24天)的85.7%,因此我立即获得8.57美元的信用额度,并且仅在3月1日收取1.43美元。
如果我等到2月27日才将费用降至每月10美元,则只有3.5%的周期剩余,我只会获得0.35美元的信用额度。

请简要解释并举例说明。 - Nehal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接