在沙盒中测试paypal定期付款的整个周期

时间:2012-11-15 23:39:34

标签: testing paypal recurring-billing

我目前正在尝试实施paypal定期付款,我想测试“整个周期”。我发现这篇文章http://www.paypalobjects.com/en_US/ebook/PP_Sandbox_UserGuide/testing_recurringpayments.html以及stackoverfow中的一些引用它应该可以工作。但对我来说似乎没有用。也许我必须深入研究代码,但我想知道这实际上是否有效?

我正在使用https://github.com/thenbrent/paypal-digital-goods库,我的订阅详情如下:

$subscriptionDetails = array(
  'description'        => 'Subscription for $10/month for the next year.',
  'initial_amount'     => '10.00',
  'amount'             => '10.00',
  'period'             => 'Day',
  'frequency'          => '1',
  'total_cycles'       => '12',
);

$pay = new PayPal_Subscription( $subscriptionDetails );

我已经在我的通知接收端设置了日志记录,但只有在我创建新的个人资料时才会受到影响。

1 个答案:

答案 0 :(得分:3)

在实际网站上,在实际指定的时间过后,计费周期会重复;例如,一个月的结算周期需要一个月的时间。您可以在测试定期付款配置文件时模拟沙箱中结算周期的已用时间,在这种情况下,实际经过的时间会减少。当您想要模拟结算周期而不等待实际时间过去时,这非常有用。

要减少实际经过时间,请指定作为期间。当您指定日期时,结算周期在沙箱中每n分钟>,其中n代表频率;例如,如果您在执行CreateRecurringPaymentsProfile API时为结算频率和日期指定1,则在沙盒中进行测试时,每分钟都会进行结算周期。

减少已用时间仅在周期为日时有效;其他值不会改变实际经过的时间。

考虑一种情况,您希望在三个月的试用期后模拟一个月的结算周期,而无需等待四个月。在沙盒中,您可以指定以下NVP参数:

...&TRIALBILLINGPERIOD=Day&TRIALBILLINGFREQUENCY=3
...&BILLINGPERIOD=Day&BILLINGFREQUENCY=1...

在沙盒中,试用结算周期大约需要3分钟,而常规结算周期大约每分钟发生一次。当您准备好上线时,您可以将试用结算周期和结算周期更改为月。

如果这不起作用,请发布您的CreateRecurringBillingProfile请求和响应,我们可以进一步调查。