BrainTool[1] is local- and private-first, I don't even want to know how to connect a user and their data. But I do want to enable paid subscriptions. I ended up using a Firebase library[2] built by Stripe. With Firebase I can create an anonymous account and use that to integrate with Stripe. I store only a user ID string which then maps to a Stripe subscription I can query for.
A couple of notes: - Isn't Neologin becoming the third party SaaS you are trying to move away from? - Even for costless coupon-paid subscriptions, Stripe requires ID proofing. So my users still need to enter an email and credit card (or GPay). The fact that my app doesn't have access to this information is not necessarily clear to users. This is probably something you'll have to account for.
[1] https://braintool.org [2] https://firebase.google.com/products/extensions/stripe-fires...
Neologin is agnostic about how you map the users on your end, you can just match directly via email against the Stripe API or have a user table for more flexibility.
I think the biggest gain in my opinion is that you don't need to worry about how the users will login and how to authorize features or pages that's what I'm trying to address with Neologin.
Thanks for your feedback.