We are in the process of migrating to Ghost from another membership platform.
In our current platform Stripe is used for maintaining members, payment methods and payment history.
The membership tiers (products), prices, currencies, terms and subscriptions are all stored in the membership system itself (not in Stripe).
To facilitate our migration we need to create Subscriptions in Stripe for each user to attach them to the Ghost-created membership tiers (Stripe products) in line with their current subscriptions. We are using the Stripe Billing Toolkit for the migration but have run into an issue.
Specifically we are following this scenario to migrate users in the appropriate stage of their subscription.
When import the users via the migration toolkit the Subscriptions are created appropriately in Stripe and a subsequent import of the users into Ghost links everything up appropriately.
However in the scenario where we log in as a user on an annual subscription and attempt to downgrade them to a monthly subscription there is no resulting change to their membership in Ghost and the following error is shown in Stripe:
"The subscription is managed by the subscription schedule `sub_sched_1QMMyeAxYIlj1waLhg7OFoG3`, and updating any cancelation behavior directly is not allowed. Please update the schedule instead."
Users who are created directly in Ghost on an annual plan can downgrade to a monthly plan without issue.
In comparing the two scenarios (user with Subscription created directly in Ghost vs user with Subscription created via the Migratoin Toolkit import) I can see that the subscriptions are different in Stripe.
Subscriptions created via the Migration Toolkit have an associated Subscription Schedule. Subscriptions I create from Ghost directly (by registering new users) do not have a Subscription Schedule in Stripe.
This Subscription Schedule seems to override the ability for users to downgrade their subscription via Ghost.
I’m hoping someone else may have experienced this issue and uncovered a solution. I think there are a few options:
1 - Is it possible to create subscriptions without a subscription schedule via Stripe’s migration toolkit?
2 - If not, is there some way to configure the subscription schedule so that it’s more flexible during the import?
3 - Alternatively, would we be better off to do the subscription migration via the API and would this allow us to avoid the subscription schedule issues?
Thanks for any help/advice. I have emailed Stripe support about this but they’re not very responsive.