Billing#

Create Stripe Checkout sessions for paid Brandwave plans and process Stripe-driven billing synchronization.

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#

NameTypeRequiredDescription
organizationIdstring (UUID)RequiredOrganization identifier to create Checkout for.
plan'starter' | 'growth' | 'scale'RequiredSelected 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.

Owner only
bash
POST /v1/billing/portal-session
Authorization: Bearer {token}
Content-Type: application/json

{
  "organization_id": "org_123"
}

Parameters#

NameTypeRequiredDescription
organizationIdstring (UUID)RequiredOrganization identifier to launch Stripe Customer Portal for.

Response#

Returns { data } with the result.

Underlying SDK method: bw.billing.createPortalSession(params)