在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美元,而只有下一次。
答案 0 :(得分:7)
制作只能将max_redemptions
属性设置为1的优惠券。
关于您的问题,区别在于将优惠券应用于客户会将折扣应用于为创建的发票的小计>客户即可。这意味着如果发票包含订阅和多个 InvoiceItems ,则折扣将应用于所有这些的总和。
相反,将优惠券应用于订阅仅表示折扣仅适用于订阅的费用。
中的其他 InvoiceItems 将不会打折。如果优惠券价格低于20美元,将无法发挥作用。"类型,但如果它是" 20%折扣"样。
答案 1 :(得分:0)
应用于客户的优惠券将适用于所有未来的发票和/或订阅,即使优惠券已过期,具体取决于您如何设置优惠券的持续时间属性。
应用于订阅的优惠券仅适用于该特定订阅。
持续时间属性将决定此折扣适用的时间长度,一次,重复或永久。
max_redemptions属性限制您愿意兑现的优惠券总数,例如前100位客户。
答案 2 :(得分:0)
因为其他人已经回答了,向客户应用的优惠券将影响每个 InvoiceItem,而不仅仅是订阅(与您将优惠券应用于订阅的情况相反)
您应该使用 max_redemptions
属性来限制优惠券申请数量
如果您需要更多的自定义,您可能应该将 Stripe PromotionCodes 与优惠券一起使用 这将使您能够将折扣应用于许多客户,但每个客户只能使用一次 (check here)
关于将优惠券应用于客户和订阅之间的区别的另一件事是下一个:
您可以在 Stripe docs
中找到有关该问题的更多信息