Billing#
Create Stripe Checkout and customer portal sessions for Brandwave plans.
Authentication required
All endpoints require a Bearer token in the
Authorization header. See the Authentication guide for setup instructions.POST /v1/billing/checkout-session#
Create a Stripe Checkout session for an unpaid organization and a selected Brandwave paid plan.
Owner only
bash
POST /v1/billing/checkout-session
Authorization: Bearer {token}
Content-Type: application/json
{
"organization_id": "org_123",
"plan": "..."
}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| organizationId | string (UUID) | Required | Organization identifier to create Checkout for. |
| plan | 'starter' | 'growth' | 'scale' | Required | Selected paid plan. |
Response#
Returns { data } with the result.
Underlying SDK method: bw.billing.createCheckoutSession(params)
POST /v1/billing/portal-session#
Create a Stripe Customer Portal session for a paid organization, optionally deep-linked to subscription plan updates.
Owner only
bash
POST /v1/billing/portal-session
Authorization: Bearer {token}
Content-Type: application/json
{
"organization_id": "org_123"
}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| organizationId | string (UUID) | Required | Organization identifier to launch Stripe Customer Portal for. |
| flow | 'subscription_update' | — | Optional Stripe Customer Portal deep-link flow to launch. |
Response#
Returns { data } with the result.
Underlying SDK method: bw.billing.createPortalSession(params)
POST /v1/billing/checkout-session/sync#
Update billing from a successful Stripe Checkout session, remove Brandwave Demo access, and activate the paid workspace.
Owner only
bash
POST /v1/billing/checkout-session/sync
Authorization: Bearer {token}
Content-Type: application/json
{
"organization_id": "org_123",
"session_id": "..."
}Parameters#
| Name | Type | Required | Description |
|---|---|---|---|
| organizationId | string (UUID) | Required | Organization identifier bound to Checkout. |
| sessionId | string | Required | Stripe Checkout session identifier returned to Brandwave. |
Response#
Returns { data } with the result.
Underlying SDK method: bw.billing.syncCheckoutSession(params)