【问题标题】:Turning off Prorating of Subscription for Stripe in Rails to Refund Full Amount关闭 Rails 中的 Stripe 订阅按比例分配以全额退款
【发布时间】:2013-08-15 19:48:13
【问题描述】:

我在我的 Rails 应用程序中使用 Stripe 进行付款。除了我想禁用按比例分配或计量订阅之外,一切都运行良好。客户出现在仪表板上,取消和更改计划正在处理退款等问题。但是,我不想按比例分配订阅。

在我的用户模型中,我正在发送以下属性,除按比例分配外的所有内容似乎都在工作。当该用户取消或切换计划时,将按比例退还金额(低于为订阅支付的全部金额)。我想退还他们支付的全部金额。

customer = Stripe::Customer.create(
        :email => email,
        :description => name,
        :card => stripe_token,
        :prorate => false,
        :plan => roles.first.name
      )

有人对如何在 Stripe 中正确配置有任何想法吗?我查看了他们的文档,但对我没有帮助 - https://stripe.com/docs/subscriptions。在他们的网站上设置计划时,我也看不到如何配置它。

任何提示将不胜感激!谢谢

【问题讨论】:

    标签: ruby-on-rails stripe-payments


    【解决方案1】:

    正确的想法,不完全正确的地方。顶级客户无法识别prorate 属性,因此不会存储它。由于 Stripe 计划是预付费的,因此唯一需要设置的时间是在更改计划时。 (根据定义,新订阅不能按比例分配。)prorate 在每个计划更改调用中设置,并且仅适用于在这些计划之间进行更改的行为。

    因此,对于更改计划的用户,您要确保您的 update_subscription 呼叫传递 false 以按比例分配:

    customer.update_subscription(plan: 'newplan', prorate: false)
    

    简单易行,无需再按比例更改计划。

    取消根本不会退款,因此,如果您发现退款,请在联系 Stripe 支持之前仔细检查您自己的代码。任何取消退款都应仅来自您的代码,默认情况下,refund 电话会全额退款。

    请注意,如果您为错误按比例升级的用户进行退款,他们的最后一次付款很可能已经按比例分配,因此全额退款将是他们最后支付的按比例分配的金额。这可能就是您看到“按比例”退款的原因。

    【讨论】:

    • 忘记关闭它 - 完全正确,我应该在 update_subscription 方法中按比例分配。我最终使用了这个:customer = Stripe::Customer.retrieve(customer_id) customer.update_subscription(:plan => role.name, :prorate => false)
    猜你喜欢
    • 2022-11-29
    • 2021-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-11
    • 2014-09-07
    • 2021-11-12
    相关资源
    最近更新 更多