Skip to main content
POST
Handle Stripe Webhook
Receive and process webhook events from Stripe. This endpoint should be configured in your Stripe Dashboard to receive events for checkout completions, subscription changes, and payment updates.

Authentication

This endpoint does NOT use Bearer token authentication. Instead, it validates requests using the Stripe webhook signature.

Path Parameters

string (UUID)
required
The unique identifier of the project
string
required
Webhook mode: test or live

Headers

string
required
Stripe signature header for webhook verification

Request Body

Stripe sends event payloads as JSON. The body contains the event object with type and data.

Response

Returns 200 OK on successful processing.

Webhook URL Format

Use the Get Webhook URLs endpoint to get the correct URLs for your project.

Supported Events

The Cloud API processes these Stripe events:

Event Processing Flow

Webhook Verification

All webhooks are verified using the signing secret configured in your Stripe settings:
Security: Always use HTTPS for webhook endpoints. Never log or expose the webhook signing secret.

Configuring Webhooks

1

Get Webhook URLs

Call Get Webhook URLs to get your project’s webhook endpoints.
2

Create Endpoint in Stripe

Go to Developers > Webhooks in Stripe Dashboard and click Add endpoint.
3

Configure Events

Select the events to receive:
4

Save Webhook Secret

Copy the signing secret and save it using Update Stripe Config.

Local Development

Use Stripe CLI to forward webhooks to your local development server:

Event Payload Example

Error Responses

Retry Behavior

Stripe retries failed webhooks for up to 3 days with exponential backoff. Return 200 OK quickly to acknowledge receipt - process data asynchronously if needed.

Get Webhook URLs

Get your webhook endpoint URLs

Update Stripe Config

Save webhook signing secret

List Project Subscriptions

View created subscriptions

Path Parameters

project_id
string<uuid>
required
mode
string
required

Response

Successful Response