I have migrated my newletter for a paid SaaS subscription service to Ghost. I use Stripe for my SaaS subscription management.
I want to use Ghost’s Stripe subscription integration to allow me to manage sending various newsletter posts to my existing subscribers.
I can see that in setting up Ghost paid subscriptions, a new Stripe product is auto-created.
Is it possible to point Ghost Paid Memberships at a pre-existing Stripe product, which presumably should mean that my existing subscribers would be recognised in Ghost as paid members?
No, not possible.
Ghost’s internal logic relies on owning the Stripe Customer object and making changes to it. There’s a high risk of conflicting changes to Stripe Customers if Ghost is connected to a Stripe account managed by another application.
Ghost’s Stripe Connection is currently only designed for publishers taking paid subscriptions directly, not syncing with existing paid subscriptions for another product.
If you want to safely sync external customers of another product in Ghost, the most reliable way to do this is usually by using API or Zapier, and labels:
- When a new customer is created in your app → Create member in Ghost with a label, eg. “Customer”
- When an existing customer cancels a subscription in your app → Find and update members in Ghost, remove the label, eg. “Customer”
You can then segment members in Ghost using the label
Some new blogging on bringing subscriptions into Stripe is here: How to upload a members CSV file using Node
(We’re apparently working on similar things this week, @Foxy!)
@John, I think your proposed approach doesn’t allow for use of tiers – I don’t think there’s a way to access labels in handlebars, is there?
But I do hear you that any support for importing Stripe customer IDs from elsewhere might be using functionality that isn’t necessarily imported or supported.