#sabrina_best-practices
1 messages ¡ Page 1 of 1 (latest)
đ Welcome to your new thread!
â˛ď¸ We'll be here soon! We typically respond in a few minutes, but in some cases we might need a bit more time (e.g., server's busy, you've got a complex question, etc.).
âąď¸ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can 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/1257501664538136656
đ Have more to share? Add details, code, screenshots, videos, etc. below.
Here is an example of the flow:
- Customer purchases annual subscription on January 1st, 2024. Subscription end date is January 1, 2025
- The subscription is paused on January 1st, 2024
- On April 1st, the subscription is unpaused.
- At this point we'd like to change the subscription end date to April 1st 2025. This would ensure the user receives 12 full months of an active subscription. We do not want to bill the customer or use trialing <---- How can we do this??
Thanks for waiting! Could you share the subscription (sub_xxx) that you have attempted to change the billing cycle, but was prorated, so that I can understand how your integration works at the moment?
sub_1PQrv4Jaf89hC41I1wKcbyDG
sub_1PWXmuJaf89hC41IWO9EXZhX
This is a new feature so examples are only available in test mode.
Here is a summary of what we were trying with these subscriptions:
- Create Subscription Normally: Ensures the subscription is created and paid for upfront.
- Pause Subscription: Prevents the subscription from starting until the user is ready.
- Resume Subscription: Activates the subscription when the user is ready to start using the service.
- Extend the Subscription Period: Adds a negative invoice item to adjust the billing period without changing the
billing_cycle_anchor.
Hi @halcyon goblet I'm taking over this thread, give me a sec to catch up.
Hmm, I don't see any request to pause the subscription (https://docs.stripe.com/api/subscriptions/update#update_subscription-pause_collection)
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
Can you tell me how you paused these subscriptions?
Here is an example of a subscription that is currently paused. We have not tried to unpause it and adjust the subscription end date yet: sub_1PXeUiJaf89hC41I3wH45Nq2
Ok, I can see that this subscription is currently paused. So you question is how to automatically cancel this subscription after 12 billing cycles?
No, my question is related to the paused period. If the subscription stays paused for 3 months and is then unpaused, how can we add back the 3 month paused period to the subscription so that customer has 12 full months of active subscriotion.
Ideally, after unpausing the subscription the subscription end date would be extended to account for the paused period.
What do you mean by "dd back the 3 month paused period "?
And what do you mean by "end date to be extended" ?
I dont' see this subscription has a schedule attached to it.
Does this example of the desired flow help?
- Customer purchases annual subscription on January 1st, 2024. Subscription end date is January 1, 2025
- The subscription is paused on January 1st, 2024
- On April 1st, the subscription is unpaused.
- At this point we'd like to change the subscription end date to April 1st 2025. This would ensure the user receives 12 full months of an active subscription. We do not want to bill the customer or use trialing
Ok, here's the thing
We have not attached a schedule.
The subscription is an anual subscription, which means it only generate invoice once a year.
So the first invoice is generated on 1st Jan 2024 when your custom subscribed it, and the second invoice will be generated on 1st Jan 2025.
When you pause the subscription on 1st April 2024, it doesn't really have an impact to this subscription because there's no new invoices generated in that month.
Yes, understood. But how can we change the next invoice date? In my example, we'd like to change the next invoice date and all future renewal dates from January 1st to April 1st.
I think what you want to achieve is changing the billing_cycle_anchor of the subscription https://docs.stripe.com/billing/subscriptions/billing-cycle
Specifically this one https://docs.stripe.com/billing/subscriptions/billing-cycle#use-billing-cycle-anchor
Will this result in the customer being billed at the time we change the billing cycle anchor?
No, the customer will only be billed at the time of change if you set proration_behavior to always_invoice.
And I think you want to set proration_behavior to none to disable proration
Can you update an existing subscription in this manner? I am looking at this doc: https://docs.stripe.com/billing/subscriptions/billing-cycle#changing
Can I Reset the billing cycle anchor to the current time and set proration = none?
Did I lose you?
Do you plan to reset the billing cycle anchor to current or future timestamp?
It could be current. For example, if I unpause the subscription today, I would want the next invoice date to be July 1st, 2025.
If this is the case, then
Can I Reset the billing cycle anchor to the current time and set proration = none?
Yes! This is correct. The next billing cycle will be July 1st, 2025 without proration
Would the invoice on January 25th 2025 be for the full price of the subscription ($299 in this case) or more? I am concerned that Stripe will recognize an unpaid period when we change the billing date and add this to the next invoice.
Changing the billing cycle anchor will change the next billing date. If the billing cycle anchor is updated to now, the next invoice will be on July 1st 2025 instead of Jan 25th at the full price
Yes, I understand that but how will the invoice amount be calculated?
With proration_behavior: 'none', the invoice amount will not have any proration. If the full price of the subscription is $299, the invoice will be $299 in the next billing cycle on July 1st, 2025
What if the subscription was originally started on January 1st 2024. If I set 'billing_cycle_anchor' => 'now' on today, July 1st, would the next invoice will be only $299 on July 1 2025?
By setting proration_behavior: 'none' and billing_cycle_anchor: 'now', it will create a new full price invoice now. For example,
- Subscription created on Jan 1, 2024 - customer will be charged at $299
- Subscription changed the billing cycle anchor to Jun 1, 2024 when setting
proration_behavior: 'none'andbilling_cycle_anchor: 'now'- customer will be charged at $299 - Next billing cycle will be on Jun 1, 2025 - customer will be charged at $299
At step 2, it will overcharge since a full price invoice is created. The only way to not charge at Step 2 is by using the trial period: https://docs.stripe.com/billing/subscriptions/billing-cycle#add-a-trial-to-change-the-billing-cycle
How will the trial period impact our MRR metrics in Stripe?
This channel is for technical integration questions such as API. I'm afraid we are unfamiliar how the trial period will affect the MRR metrics
I'd recommend checking with Support https://support.stripe.com/contact how the trial will affect the MRR metrics
Find help and support for Stripe. Our support site provides answers on all types of situations, including account information, charges and refunds, and subscriptions information. Get your questions answered and find international support for Stripe.
Thank you