Hello lovely people of this forum and the wonderful Ghost team, I take a bow!
… to the lovely platform you’ve created. Thanks to Ghost my client makes a living (and pays me to setup analytics)
Some background and the goal
My client runs an independent media publication, and uses Ghost + Stripe to sell paid subscriptions to fund their journalism.
I’m trying to integrate Amplitude (or GA4) to setup a revenue dashboard which can attribute revenue collected to articles, authors or tags.
Problem
- I’m not able to do much with the server-side hooks that Stripe gives, unless we can pass the Ghost UUID to Stripe before passing to payment screen.
- Amplitude (and probably others) don’t recommend using email id to identify a reader on their analytics platform (for good reasons - they can change).
- There’s no event for renewals unless its from Stripe’s end using server side webhooks.
Questions
- Is it possible to pass Ghost UUID to Stripe as metadata without modifying the source? This would solve everything needed for analytics.
I think Ghost might already have this information (“Member Attribution”) - does Amplitude/GA4 provide something on top of Ghost? Or can you ingest the data Ghost already has/create custom dashboards? (I’m assuming you can get this data, but the API might not be stable)
To your integration question - it looks like Ghost uses the member’s email to map them to the Stripe Customer. This might be fine internally (since they probably have handling for email addresses changing), but I get why it might not make sense for integrations. If you’re already running server-side code for Stripe’s events, is there anything stopping you from using the Ghost Admin API to map the member email to the UUID?
1 Like
Hey @vikaspotluri123 - thanks for your detailed reply.
No we don’t have server-side code.
But, I am trying to get this done by consuming Stripe webhooks on Zapier (which you can say is like server-side code). But I will look into passing the email to Ghost Admin API to get back the UUID.
Update:
- I am able to get Ghost member ID by using the email (on Zapier) - this is great!
As long as email on stripe callback is always going to be the email on ghost (which I assume would be), everything is good!
Thank you for pointing me in the right direction
@vikaspotluri123
3 Likes