#fintanodowd_38546

1 messages ยท Page 1 of 1 (latest)

stuck basinBOT
obsidian path
#

Should I be using Subscription Phases as opposed to Coupons perhaps?

mystic oyster
#

Hi there
give me a second to read through your question

obsidian path
#

thank you!

mystic oyster
#

Do you have an example subscription handy?

#

just want to make sure I'm on the same page as you're

obsidian path
#

Are you looking for a link to a test subcription in our account?

mystic oyster
#

yes, a subscription ID with the discount behaivour you mentioned

obsidian path
#

cool I can give you a link to a real subscription if that would help - is that a secure thing for us to do?

mystic oyster
#

sure, only the ID should be fine sub_xxx

stuck basinBOT
obsidian path
#

i sent you a subscription ID hanzo. What happened here was that the customer bought a quantity of 25 with a set discount.

When they added one more quantity, as opposed to being billed for that, they were billed for the amount of their discount plus the pro rated amount for 1 more quantity. This is obviously problematic!

They payment of that incorrect invoice failed. I need to understand how to unwind this such that they are only billed for the 1 quantity - with a discount I need to apply outside the context of the one off discount. Hope that makes sense!

mystic oyster
#

adding the subscription ID here: sub_1NdhdFABXG7iwsUNi1i1OikE

I need to step away soon but @cosmic sleet will take over and look

cosmic sleet
#

Hi there reading and catching up

obsidian path
#

thank you. basically:

we have a 12 month scription period.
we awarded a customer a discount for 15 quantities
we then adjusted their subscription to add 1 - total 26
they were billed for the 1 PLUS the discount applied on the first 25
luckily the payment failed

So now I need to unwind this:
I need to get them a proper invoice for 1 quantity
I need to ensure that going forward they will pay the correct amount as they add more quantities

Also just strategically, discount coupons seem a bad fit for managing subscription discounts and I am wondering if we should be using subscription phases or something instead

cosmic sleet
#

So I think the real reason for this issue is the proration. You passed proration_behavior: "always_invoice", on the subscription update. That calculates a prorated amount for the remaining time in the month based on the update

#

What's the desired behavior exactly?

#

Do you need to be invoiced the updated amount immediately? Or on next billing cycle?

#

Normally when you make a quantity update like this, you'd want it to apply in the next billing cycle and let the current one complete, but idk you requirements

obsidian path
#

our billing cycle is yearly so we want to invoice the additional prorated amount for the additional 1 quantity immediately. However, we do not want the customer to be invoiced for the discount amount on their original quantity.

Also we need a way to manage price over the course of the year - the amount we wish them to pay per quantity may change over the course of the billing cycle.

cosmic sleet
#

Prorations are calculated based on the amount of the original invoice

#

So there's no way to modify that

#

If the original invoice included a discount, that'll be taken into account in the proration

obsidian path
#

OK so if we are going to make any pro rated updates to subscriptions we definitely should not be using discounts.

I guess I have two follow on questions

  1. How would you suggest we best unwind the issue with this current customer? We want to get to a place where he is not charged for the initial once of discount but is charged for the 1 additional quantity, and his subscription is in a position where they can add quantities going forward and be charged the correct amount?

  2. Given coupoons are bad for our model, what is the best way for us to manage cost variations over the course of a subscription? For example 1 price for year 1, a higher price for year 2 etc?

cosmic sleet
#

The issue is you want to customize proration behavior. If you don't want the discount amount to be factored into the proration, then the customer will never receive that full discounted amount

#

Or is it that you do not want to charge them a prorated amount for the additional item?

#

Do you want them to be charge the full amount for the additional item immediately once it's added?

obsidian path
#

If you don't want the discount amount to be factored into the proration, then the customer will never receive that full discounted amount
Yes that is what we want. Now we can in the future avoid coupons as an option this is just a few customers as we are in Alpha. Customizing pro ration sounds complex is there any documentation on how to go about that?

Or is it that you do not want to charge them a prorated amount for the additional item?
We want to charge a prorated amount for the additional item minus any discount that was applied.

Do you want them to be charge the full amount for the additional item immediately once it's added?
Yes

cosmic sleet
#

Customizing prorations is impossible if you use our Subscription product. You'd need to build this yourself (ie use Stripe Invoices with your own custom recur/subscriptions logic and calculate the invoice amounts using your own proration logic)

stuck basinBOT
obsidian path
#

OK thanks. Couldl you please provide guidance on these two questions?

How would you suggest we best unwind the issue with this current customer? We want to get to a place where he is not charged for the initial once of discount but is charged for the 1 additional quantity, and his subscription is in a position where they can add quantities going forward and be charged the correct amount?

Given coupoons are bad for our model, what is the best way for us to manage cost variations over the course of a subscription? For example 1 price for year 1, a higher price for year 2 etc?

compact summit
#

๐Ÿ‘‹ stepping in as codename_duchess needs to step away

#

Catching up, give me a sec to skim the above

obsidian path
#

thanks bismarck

compact summit
#

Okay so sounds like you want to handle proration for an upgrade, but not have that proration be affected by the discount that was applied to the previous cycle

#

So basically just charge for the new item that is added

#

But have that item be prorated

#

And you do want to charge immediately, correct?

#

So if quantity 25 = $250 but you charged $200 due to discount, you want to add 1 quantity and charge $10 prorated and have it ignore the discount that had been applied previously.

#

Let me know if I got that right @obsidian path ?

obsidian path
#

Yes exactly

compact summit
#

Okay so this is achievable but it will take several steps

obsidian path
#

I want to add the new quantity, have that charged based on the price that is assigned for them, without the discount being rebated

#

Now the discount was applied in the CURRENT cycle- we do yearly subscriptions and theirs was created in the last month

#

BTW the new amount doesnt really have to be prorated if that is making it more complex

compact summit
#

What you want to do here is you want to figure out the correct proration amount by using the Upcoming Invoice endpoint (https://stripe.com/docs/api/invoices/upcoming). You would simulate creating a new Subscription and you want to set the subscription_billing_cycle_anchor to the timestamp of the next cycle of the Subscription.

#

When you do this, you will get a preview of an Invoice that will be prorated for the correct amount that you want

#

Lastly, you update the Subscription to the new quantity (26) but you pass proration_behavior: none so that it doesn't charge again until the next billing cycle

#

I guess for that last step you have already made the update?

#

In which case you just void the most recent Invoice that failed since you are charging a new one for the right amount.

obsidian path
#

We made the update yes - and an invoice was generated but for the incorrect amount because it included the discount amount.

compact summit
#

Right

#

So you want to void that Invoice

obsidian path
#

Got you. So what we do is

  1. Void the existing invoice - this doesnt actually update the subscription which still reflects the new quantity (i tested that)
  2. Create an invoice item for the new quantity with correct amount and associate it with the subscription.

question - can I do 2 above via the stripe console or do I need to use the API?

compact summit
#

Hmm I think you need to use the API if you want the Invoice to be directly associated to the Subscription but let me check

obsidian path
#

thanks

compact summit
#

Yeah

#

You can only create a separate one-off Invoice via the Dashboard

#

So if that doesn't matter to you then you can do it via the Dashboard.

#

But otherwise you need the API

#

And you'll need the API to correctly preview the Invoice to know the right proration amount

obsidian path
#

You wouldn't be able to set the Subscription property (https://stripe.com/docs/api/invoices/create#create_invoice-subscription) on it.
So if that doesn't matter to you then you can do it via the Dashboard.

I dont think that that matters to me, once the invoice is created I can associate it to the 'quantity' that it relates to in our database and we should be OK.

#

Question - this will solve this specific instance, but if this customer - or another customer - modifies their subscription to add additional quantities, we will run into the same issue, correct? The discount amount will be added to their pro rated amount.

Any idea how best to unwind that? I would need to either balance out the discount so it didnt impact proration or create a new subscription with a custom renewal date which was the same as their original subscription.

compact summit
#

Yes it will affect all Subs going forward that have a discount. So yeah you can either use my steps above to correctly upgrade the Sub, or you could create a new Sub if you are willing to manage multiple Subs for the same Customer

obsidian path
#

Maybe I could credit their account for the discount amount so it wouldnt be factored into the pro ration in the future?

#

I was thinking I would cancel the original sub - that would trigger a rebate by default but I was assuming i could tell stripe not to rebate the customer.

compact summit
#

What do you mean by "credit their account"?

#

And yes you can cancel the Sub without having it generate an Invoice and then you could recreate

obsidian path
#

If I was to credit their account in this way with the value of the discount, the next time Stripe calculated the pro ration for an increased quantity, the discount would not be factored into it perhaps? Was just an idea.

#

Another question - given that you have a good handle on my use case now, how would you suggest we manage providing customers with discounts for say their first year of subscription? I was looking at Subscription Phases which seems to be coupons but for Subscriptions.

compact summit
#

So it would affect when you upgrade still

obsidian path
#

Got you. That is a bad idea we wont go down that path! its just creating the opposite problem ๐Ÿ™‚

compact summit
obsidian path
#

Got it.

#

thanks bismarck