Automatic creation of sub-app, subdomain DNS, SSL

My question is how to manage sub-app subscriptions. If a client of mine decides to downgrade to the hobby plan, is there a way of doing this without the client having to log in to Bubble? Meaning, I am creating an account management page for my clients, and ideally, if they wanted to cancel, they could do it from this account management page, without having to log in to bubble. What I am hoping to avoid is a scenario where I wake up to receiving notifications that clients have cancelled and that I manually have to go into their sub-app and downgrade.

It also seems dangerous to have clients log in to Bubble as there are many things clients could break by mistake.

So it would be nice to have plan level subscriptions as something exposed by Bubble api endpoints, or some sort of simple account management page that allows a client to upgrade/downgrade without touching the database or editor etc.

Just thinking outloud here, but if the Stripe Subscription ID was exposed, maybe this would be all we need and a Stripe webhook could communicate with Bubble that the subscription is cancelled?

@emmanuel maybe you can please explain how the following scenario would be managed: 10,000 loan agents, each with their own sub-app/unique domain. If a hundred decided to cancel from personal down to hobby, can this be done without having to have some instructional video on how a loan agent logs in to bubble? I guess if I had a 100 clients cancel on me, theoretically it’s a good problem to have, because I must have gotten 1000 clients if 100 are cancelling, but I really am hoping to avoid messages from clients like “I have no clue how to unsubscribe from Bubble, help!” People must have figured out a solution to this already… @sridharan.s my eight ball says you may have some clue about this, or maybe i’m taking the wrong approach here, or just need to cross this bridge when it comes…