E-Commerce
Subscription Plan Switcher
Accessible plan selection for an existing subscription, showing the current plan and collecting explicit confirmation. Billing and proration remain in the host app.
$ velocityx add subscription-plan-switcher
Built for react.
Needs react already installed
as a peer dependency.
An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.
Full docs for Subscription Plan Switcher →
Needs a licence key —
subscribe here, then
velocityx loginonce.
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| plans | array | No | [] | |
| currentPlanId | undocumented | Yes | ||
| onConfirm | undocumented | Yes | ||
| currency | string | No | 'AUD' | |
| locale | string | No | 'en-AU' | |
| busy | boolean | No | false | |
| title | string | No | 'Change your plan' |
3 fields in this table have an undocumented type — see source for the exact shape.
File this creates
The CLI writes this path into your project, relative to its root — nothing else moves.
components/velocity/subscription-plan-switcher/SubscriptionPlanSwitcher.jsx Using the Subscription Plan Switcher component
Install it with velocityx add subscription-plan-switcher.
The CLI writes the source straight into your project — no runtime dependency, no registry
lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.
Related components
More from E-Commerce.
Primary CTA with loading, success checkmark and error states around an async add-to-cart handler.
reactRight-docked cart drawer on desktop and a three-snap-point bottom sheet on mobile, with no backdrop-blur scrim, focus trap and Escape to close.
reactSingle cart row with thumbnail, variant text, quantity stepper, line total and a fade-out remove action.
reactTwo-column shipping and payment form with native HTML5 validation and a submit button with a loading state.
react