Allow members to upgrade/downgrade without Portal modal

Coming from Patreon, I’ve created custom membership plan and account pages for my new Ghost(Pro) site because the Portal modal doesn’t allow sufficient customization to support the “extended” plans that will remain on Patreon (at least until Ghost supports additional/arbitrary plan tiers). This is also meant to allow my current patrons to self-manage their migration from the complimentary plans I’ve set up for them.

I would like for my members to be able to visit the membership page (Matthew Rasnake | Author) and click an “Upgrade to X” button for the plan they’d like to switch to, and be directed to a Stripe checkout page that will allow them to update their subscription to the selected plan.

Unfortunately, the current Members API actively throws a 403 error from “create-stripe-checkout-session” for active members (even those on complimentary plans) when using the data-members-plan="<plan>" attributes for these buttons.

Is there a way to achieve this functionality for a Ghost(Pro) site without resorting to the Portal modal for member plan management?