---
title: "Stripe webhook receiver"
method: POST
path: "/stripe/webhook"
tags: ["stripe"]
---

# Stripe webhook receiver

`POST /stripe/webhook`

## 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/stripe/webhook`
- Auth: none declared

Receives Stripe webhook events and updates tenant billing state.

Security:
- Verifies Stripe signature using the configured webhook secret.
- Requires the raw request body and the 'stripe-signature' header.

Behaviour:
- Enforces idempotency by recording each Stripe event id once.
- Dispatches supported event types into internal billing handlers.

Notes:
- This endpoint is called by Stripe (not by users).
- Configure STRIPE_WEBHOOK_SECRET and STRIPE_SECRET_KEY in the environment.

## Response `200`

Successful Response

- unknown

---

[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)
