Paypal订阅 - 失败付款的数量

时间:2012-01-10 13:08:09

标签: php paypal paypal-subscriptions

我使用以下html创建paypal订阅:

<form action="http://paypal/url/..." ...>
    <input type="hidden" name="cmd" value="_xclick-subscriptions">
    <input type="hidden" name="business" value="selleremail@somedomain.com">
    <input type="hidden" name="item_name" value="My Subscription">

    <input type="hidden" name="currency_code" value="GBP">
    <input type="hidden" name="p3" value="1">
    <input type="hidden" name="t3" value="M">

    <input type="hidden" name="tax" value="0.00">
    <input type="hidden" name="no_shipping" value="1">
    <input type="hidden" name="shipping" value="0.00">

    <input type="hidden" name="no_note" value="1">

    <input type="hidden" name="src" value="1">

    <input type="hidden" name="cancel_return" value="http://mysite/paypal/cancel.page">
    <input type="hidden" name="return" value="http://mysite/paypal/success.page">
    <input type="hidden" name="notify_url" value="http://mysite/paypal/ipn.page">
</form>

一切运作良好,创建新订阅,我的场景获取IPN通知。有一件事让我烦恼。如果某些付款失败,则会暂停相应的订阅。它是由于订阅的默认设置而发生的。在暂停订阅配置文件之前,允许设置1次付款失败。

我可以按documentation中的说明手动将其关闭,但如何在订阅创建阶段设置它?是否值得关闭或更好地设置一定数量的失败?

3 个答案:

答案 0 :(得分:1)

来自Paypal开发者网络的a person的回答:

  

目前,您无法在订阅中传递变量   按钮代码,用于更改之前允许的失败付款次数   个人资料暂停。此时的默认值是1和您   如上所述,可以在帐户中手动更改它。一个   已提交有关添加此功能的功能请求   但是没有时间表可以做到这一点。但是,如果使用   Express Checkout API可以创建重复的配置文件,您可以指定   MAXFAILEDPAYMENTS的值。

答案 1 :(得分:0)

将此添加到您的表单:

<input type="hidden" name="reattempt" value="1">

这导致付款失败为reattempted(我认为最多3次,尝试间隔1天)。至于打开或关闭它是否更好,我真的不能想到重新尝试对你不利的情况:它给了客户额外的机会给你钱。如果您认为在付款失败后几天免费使用该服务的人确实存在问题,请在获得subcr_failed IPN之前暂停该帐户,直到付款成功为止。

答案 2 :(得分:0)

付款失败没有取消。在最初的失败后,PayPal将尝试在5天后再次付款 。如果这也失败了,那么PayPal将在进一步 5天后尝试第三次也是最后一次

当您可以设置原始PayPal配置文件时,您有两种处理失败费用的选项。这可以在个人资料订阅的“重复收费”部分找到。

您将在此处获得的条款如下:

recurring_payment_suspended_due_to_max_failed_payment

这也将为您提供下次尝试执行时的重试日期。

'retry_at' => '02:00:00 Feb 08, 2017 PST',