---
title: "Create Stripe Customer Portal session"
method: POST
path: "/billing/customer-portal"
tags: ["billing"]
---

# Create Stripe Customer Portal session

`POST /billing/customer-portal`

## Request

- Base URL: `https://catalyst.stratogenic.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://catalyst.stratogenic.ai/billing/customer-portal`
- Auth: API key in header `X-API-Key`

Returns a Stripe-hosted Customer Portal URL where the tenant can self-serve upgrade, downgrade, or cancel their subscription.

When the user makes a plan change in the portal, Stripe fires a `customer.subscription.updated` webhook and Catalyst updates the tenant's plan automatically.

Requires X-API-Key.

## Query parameters

- `return_url` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/stratogenic/apis/stratogenic-catalyst-api.md) · [All operations](https://skmtc.dev/stratogenic/apis/stratogenic-catalyst-api/llms.txt) · [OpenAPI document](https://skmtc.dev/stratogenic/apis/stratogenic-catalyst-api/revisions/ad906ad7a85d?raw)
