Open a Stripe Checkout session for a monthly plan
Opens a Stripe subscription Checkout session for the plan tier tierId and returns the session id plus the hosted url a human must be redirected to. THIS MUTATES A RECURRING SUBSCRIPTION once that page is paid: the tier is written onto the wallet and its monthly credits are granted by the invoice.paid webhook on every renewal, not by this call. Never call it to inspect or compare plans — the catalogue operation does that, and is also the only source of a valid tierId; an unknown tier 404s. When Stripe is unconfigured the session is a local stub (dryRun: true).
Authorizations
Authorization: Bearer <token>. Accepts EITHER a Keycloak access token (scopes-in-token) OR an opaque POS session token; both resolve to the same pos.* scope vocabulary the route guards enforce.
Body
1Response
The opened subscription session. When Stripe is unconfigured this is instead a stub with dryRun: true, an empty url and id cs_dryrun_plan_<tierId>.

