【问题标题】:Stripe - Apply coupon to customer or subscription?Stripe - 将优惠券应用于客户或订阅?
【发布时间】:2014-12-31 17:01:12
【问题描述】:

在 Stripe API 文档中,它们表明您可以对客户应用优惠券。

cust = Stripe::Customer.retrieve("cus_asdasdad")
cust.coupon = "COUPONCODE"
cust.save

但是,您也可以对订阅应用优惠券:

cust = Stripe::Customer.retrieve("cus_asdasdad")
sub = cust.subscriptions.retrieve("sub_blablabla")
sub.coupon = "COUPONCODE"
sub.save

这两者有什么区别?从本质上讲,我想给客户 15 美元的下一次订阅费用折扣,而且只给下一次。

【问题讨论】:

  • 对于此类问题,您应该询问相关团队。例如在这种情况下是条纹

标签: stripe-payments


【解决方案1】:

要制作只能使用一次的优惠券,请将 max_redemptions 属性设置为 1。

关于您的问题,不同之处在于将优惠券应用于客户会将折扣应用于为该创建的发票的小计>客户。这意味着如果发票包含 Subscription 和多个 InvoiceItems,则折扣将应用于所有这些的总和。

相反,将优惠券应用于订阅仅意味着折扣将仅应用于订阅的费用。发票中的其他 InvoiceItems 不会打折。

如果优惠券是“20 美元折扣”类型,则不会有什么不同,但如果它是“20% 折扣”类型,则会有所不同。

【讨论】:

    【解决方案2】:

    适用于客户的优惠券将适用于所有未来的发票和/或订阅,即使优惠券已过期,这取决于您如何设置优惠券的持续时间属性。

    应用于订阅的优惠券仅适用于该特定订阅。

    持续时间属性将确定此折扣将应用多长时间(一次、重复或永久)。

    max_redemptions 属性限制您愿意兑现的优惠券总数,例如前 100 位客户。

    【讨论】:

      【解决方案3】:

      因为它已经被其他人回答,应用到客户的优惠券将影响每个 InvoiceItem 而不仅仅是订阅(与您将优惠券应用于订阅的情况相反)

      你应该使用max_redemptions属性来限制优惠券的申请数量

      如果您需要更多自定义,您可能应该将 Stripe PromotionCodes 与优惠券一起使用 这将使您能够将折扣应用于许多客户,但每个客户只能应用一次 (check here)

      关于将优惠券应用于客户和订阅之间的区别的另一件事是:

      • 当您需要为客户取消当前订阅并为同一客户创建新订阅时,您的流程中可以包含案例(我们的应用中有此类案例)
      • 在这种情况下,优惠券(实际上是折扣)适用于客户,而不是订阅,即使在此订阅续订后也会生效
      • 但在将优惠券应用于订阅的情况下,客户将失去此类订阅取消/娱乐的折扣

      您可以在Stripe docs中找到有关该问题的更多信息

      【讨论】:

        猜你喜欢
        • 2015-02-24
        • 1970-01-01
        • 2018-07-09
        • 1970-01-01
        • 2016-05-03
        • 2016-08-02
        • 2016-03-10
        • 2020-02-26
        • 2021-02-18
        相关资源
        最近更新 更多