【问题标题】:Paypal Recurring Payment - Charge user with outstanding amount in the middle of monthPaypal 定期付款 - 在月中向用户收取未付款项
【发布时间】:2015-06-24 11:26:04
【问题描述】:

我有以下情况,我想在升级计划之前在月中向用户收费

从 03/19 开始创建每月 10 美元的定期付款资料。 在 03/30,用户升级其每月花费 5 美元的计划。一切都很好,我可以将定期付款更新为每月 15 美元,因此在 2019 年 4 月,用户将被收取 15 美元的费用。 由于用户在计费周期中间升级了他当前的计划,我想在计划升级时的 03/30 之间向用户收取未付金额,直到 04/19 新的计费周期开始(大约在这种情况下,金额约为 2.70 美元)。 我已经尝试过 BillOutstandingAmount Classic Api,但它确实有效,因为它显示了一个错误,即即使金额大于零,未偿金额也必须大于 0。

在月中切换套餐之前,有没有其他方式向用户收费。

非常感谢有关此问题的任何帮助。

谢谢!

【问题讨论】:

    标签: paypal


    【解决方案1】:

    BillOutstandingAmount 仅适用于由于某种原因导致预定付款失败而导致的未结帐单金额。该 API 不允许您简单地处理一些随机的新数量。

    为此,您需要使用参考事务。 DoReferenceTransaction API 可用于此目的。您基本上会传入之前的交易 ID(或结算协议 ID)以及您需要收取的任何金额,它会使用与原始交易中使用的相同付款详细信息来处理它。

    如果您使用 Payments Pro 设置您的定期付款资料,那么您只需传入之前交易的交易 ID,就可以正常工作。

    不过,如果您使用 Express Checkout 设置定期付款资料,则需要调整您的 SetExpressCheckout 请求以包含账单协议,然后您将使用从该协议中获取的账单协议 ID DoReferenceTransaction 请求。如果是这种情况,您将无法使用任何当前配置文件执行此操作,因为未包含计费协议,但从那时起它适用于新注册。

    【讨论】:

    • 谢谢安德鲁,它真的很有帮助。有了这个,我已经使用直接付款成功实施了定期付款。
    猜你喜欢
    • 2019-04-09
    • 2011-01-08
    • 2020-01-03
    • 2011-09-16
    • 2013-02-15
    • 2013-12-21
    • 2013-05-06
    • 2014-05-08
    相关资源
    最近更新 更多