#cho_best-practices
1 messages ยท Page 1 of 1 (latest)
๐ Welcome to your new thread!
โฒ๏ธ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
โฑ๏ธ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
๐ This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1400117505074139166
๐ Have more to share? Add more details, code, screenshots, videos, etc. below.
Hello
Can you share more details about your usecase and what you've tried so far? An example would help along with the ideal timeline for the subscription
Yes of course ๐
customers start subscriptions by signing contracts.
- We want to charge them on the 1st of every month.
- They pay us the 1st month separately up-front before the subscription starts.
- Some companies contract start date is not on the 1st of the month, so I need to prorate them with a discount when it does become the 1st of the month on the 2nd payment due date.
- All of our subscriptions will cancel at the contract end-date.
- 1 extra condition is that all of our subscriptions must have a discount applied across the entire subscription duration
Scenario A:
- Company A signs contract 1/13 to start 2/1
- They pay us 1 month worth on 1/13.
- 2/1: They pay us nothing
- 3/1: They pay us 1 month price
Scenario B:
- Company B signs contract 1/13 to start 2/15
- They pay us 1 month worth on 1/13
- 2/1 they pay us nothing
- 3/1 they pay us 15/28 % off for the proration
My specific question:
- Is the scenario I have described above achievable while setting the backdate_start_date field to be 2/1 but to have billing_cycle_anchor on 3/1 and add a discount that applies for 1 month?
- Where the discount that applies for 1 month would only be for the customer's who are prorated because they did not start on the 1st of the month
Hello my colleague had to step out but I can help. Catching up here
I think your discount idea makes sense, either that or a credit note is how I typically see the first month made free.
I am unclear on what exactly your second question is asking. Can you rephrase it a bit?
For this - it was a specification that the discount would be the proration.
I think the question I had specifically was whether I understood this correctly - I have included an image from the stripe docs
I can set the backdate to be set to 2/1 and then just set billing cycle anchor to 3/1 and it will:
- begin charging the customer 3/1 w/ the initial discount
- Is able to apply 2 different discounts on that 3/1 date
- But the subscription - on record - shows that it is from 2/1/2025 -> 2/1/2026
Unfortunately I don't think there is a good way to do your first and third bullet point at the same time. The billing cycle anchor defines when the subscription actually charges the user, so with your current setup the subscription would create an invoice for 2/1-3/1 and then start its next cycle on 3/1 that would be 3/1/2025-3/1/2026
If you want it to cycle on 2/1/26, you'd need to set that as the billing cycle anchor. I think that that means you would need to find some way to schedule charging your customer for 11 months on 3/1
I actually did notice that in test mode. Which is why I came here to ask.
- When I created a subscription with backdate_start_date it created an invoice for the period of time from the back-date -> billing cycle anchor
I see.
So from what I gathered from your statements:
- If I were to do the method that I explained: (backdate start date to 2/1 + billing cycle anchor 3/1) then what will end up happening is that the customer would be invoiced for Feb & March?
Is there a way to Just have these two happen?
- begin charging the customer 3/1 w/ the initial discount
- Is able to apply 2 different discounts on that 3/1 date
I guess we'd just have to make an 11 month subscription right?
I thought that this statement:
indicates that what I thought would happen the way I described, could you scenario it for me?
If I were to do the method that I explained: (backdate start date to 2/1 + billing cycle anchor 3/1) then what will end up happening is that the customer would be invoiced for Feb & March?
Yes, there would be an immediate invoice for 2/1-3/1 and then an invoice for 3/1-3/1
begin charging the customer 3/1 w/ the initial discount
Subscription schedules can do this, but I am not sure if it is worth the complication here. You could have the schedule start the subscription on 3/1 and then have the second phase start on 2/1 withproration_behavior: 'none'which would tell us to start a full year cycle then. The caveat there is that backdating with schedules is a bit broken, so it is currently impossible for it to have it create a first invoice that says 2/1 anywhere
Is able to apply 2 different discounts on that 3/1 date
Our API now supports multiple discounts on subscriptions so yes
wait I do not want it to make an invoice on 2/1 with backdating. I believe we might be misunderstanding each other.
-
I do NOT want to charge the customer on 2/1 becuase they paid up front separately. We don't need that accounting to appear on stripe (sometimes we might just charge directly on stripe)
-
Multiple discounts sounds great thank you!
I guess what I ultimately want is to be able to say a subscrpition is from 2/1 /2025 -> 2/1/2026, but only charge starting 3/1
And so a schedule might be a tad overkill.
I guess I'll try it out in test mode and see if I can get it to do the thing!