#Miroslav
1 messages · Page 1 of 1 (latest)
For the upgrade flow, I understand that I somehow need to pass some parameters to the Customer Portal (through configuration), so that the "always_invoice" proration behavior is used in combination with pending updates, as I don't want them upgrades of the payment fails
Hi
AFAIK, you can't achieve this different proration behavior using Customer portal, you need to implement this logic using API
I see this for portal configuration, can that be used? https://stripe.com/docs/api/customer_portal/configurations/create#create_portal_configuration-features-subscription_update-proration_behavior
Yes of course, but that will be applied to all upgrade/downgrades
I though you want to apply it just in one type of updates
Yeah... I was thinking maybe to use different portal configurations, depending on the current plan of the customer. So:
- If the customer is on the Basic plan (we only have Basic/Premium plans), use a portal configuration where only an upgrade is allowed (by specifying only the Premium priceId in the allowed products) and set the proration behavior accordingly
- If the customer is on the more expensive, use a portal configuration where only a downgrade is allowed (by specifying only the Basic priceId in the allowed products)
does that make sense? Is someone else using the portal like that?
yeah you can create multiple customer portal for the same customer and for different situations.
even if that is doable, any idea on how I can achieve the "postponed downgrade" requirement through the portal?
If you set proration to none, that means like doing a postponed downgrade
I read this now: "When prorations are disabled, customers are billed the full amount at the new price when the next invoice is generated."
but does the plan get changed immediately in Stripe?
or the actual upgrade of the plan will be postponed as well (not just the payment)?
but does the plan get changed immediately in Stripe?
I think the plan will be changed immediately. I invite you to do some tests/simulations using Stripe test clocks:
https://stripe.com/docs/billing/testing/test-clocks
Create as much scenarios as you need in the test mode according to your exact business requirements
thanks, I'll check that out
I expected that behavior and that's not what I want unfortunately
I want to postpone the changing of the plan as well
This part you probably will need to implement a complete upgrade/downgrade integration for that with Subscription Schedulers
Got it. And schedules are not supported through the Customer Portal in any form, right?
You can create a customer portal for a the Subscription behind the scheduler but not managing the Subscription as scheduler.
Sorry, did not fully understand that. If I use schedules on a subscription, and then create a customer portal for a given customer that uses that subscription, what would he be able to do or see in the portal? I guess that "he won't be able to manage it" means that he won't be able to upgrade/downgrade/cancel?
Behind each Subscription Schedule there is a Subscription. When you create a Customer portal, you create it for a Customer, so they can manage all their Subscription/Payment Mehtods... the feature for managing a Subscription are the same for a Subscription Scheduler when using the Customer portal.
Meaning that they will be able to upgrade/downgrade/cancel, but that can potentially mess up the schedules?
I'm trying to understand the portal limitation when working with schedules. Is it a recommendation as data can get messed up, or it's not even possible for the client to do anything with the subscription through the portal when schedules are used?