Paypal沙盒经常性付款与初始金额未决


Paypal Sandbox recurring payment with initial amount pending

我在这里使用PHP库创建一个新的订阅配置文件。如果我设置了一个初始金额,配置文件显示为"Pending"。

的例子:

Pending
Customer Mark Wally Verified
Profile start date Feb 18, 2013 | Profile ID I-BE824P6F9PER

另一方面,如果我没有设置初始付款金额,则配置文件将为"Active"。我把首付款和开始日期定在未来1个月,因为我想按月结算,然后马上收到付款。

我已经验证过了:

  • 账户设置接受任何货币
  • 卖方账户已启用数字商品(通过自动化过程创建)
  • 两个帐户都已验证
  • 买方账户有信用卡和paypal余额
  • 两个账户都是美国的
  • 我已经尝试了多个帐户

任何帮助都将非常感激!

创建使用上面列出的库的订阅的代码片段:

$subscription_details = array(
  'description'    => 'Premium membership: $4.95 every 30 days',
  'initial_amount' => '4.95',
  'amount'         => '4.95',
  'period'         => 'Day',
  'start_date'     => gmdate( 'Y-m-d'TH:i:s', strtotime( '+30 day' ) ),
  'frequency'      => '30'
);

以防其他人也有这样的麻烦,我的发现是:

没有什么可以解决的——沙箱真的很慢,有时需要几天的时间才能激活配置文件并发送IPN。换句话说,沙盒根本不适合测试这些功能,只需上线并退回几个测试即可。即使是生活有时也需要一点时间……我有时看到它花了几个小时,所以不要太疯狂。

From PayPal doco:

"默认情况下,如果初始支付金额失败,PayPal不会激活配置文件。要覆盖此默认行为,请将FAILEDINITAMTACTION字段设置为ContinueOnFailure。如果初始支付金额失败,ContinueOnFailure指示PayPal将失败的支付金额添加到此循环支付配置文件的到期未偿余额中。

如果您没有设置failedinamtaction或将其设置为CancelOnFailure, PayPal将创建循环支付配置文件。但是,PayPal将该配置文件置于待处理状态,直到初始支付完成。如果初始付款清除,PayPal将通过即时支付通知(IPN)通知您已激活待处理的配置文件。如果支付失败,PayPal将通过IPN通知您,它已取消了待处理的配置文件"

from https://cms.paypal.com/mx/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_WPRecurringPayments,在表6下面。