Skip to main content
With Autumn, you don’t need webhooks for managing billing — subscription state, usage tracking, and access control are all synchronized automatically. However, webhooks can still be useful for specific use cases where you want to trigger actions in your own systems.
Webhooks are currently in beta. Please reach out to us on Discord or email us at [email protected] to enable webhooks for your account.

Use Cases

While Autumn handles billing complexity for you, webhooks are helpful for:
  • Sending activation emails — Welcome new subscribers or notify users when their plan changes
  • Triggering workflows — Start onboarding sequences, provision resources, or update CRM records
  • Syncing with external systems — Keep your database, analytics, or other tools in sync with subscription changes
  • Deprovisioning access to services — Shut off access to downstream services when a customer cancels their subscription

Available Events

customer.products.updated

Fired when a customer’s product or plan changes. The scenario field indicates what type of change occurred.
ScenarioDescription
newCustomer subscribed to a new product
upgradeCustomer upgraded to a higher-tier plan
downgradeCustomer downgraded to a lower-tier plan
renewSubscription renewed for another billing period
cancelSubscription was canceled
expiredSubscription has expired
past_duePayment is past due
scheduledA plan change has been scheduled
Example payload:
{
  "type": "customer.products.updated",
  "data": {
    "scenario": "new",
    "customer": {
      "id": "user_123",
      "name": "John Doe",
      "email": "[email protected]",
      "balances": { ... },
      "subscriptions": [ ... ]
    },
    "updated_product": {
      "id": "pro_plan",
      "name": "Pro Plan",
      "features": [ ... ]
    }
  }
}

customer.threshold_reached

Fired when a customer reaches a usage threshold for a feature. This is useful for notifying users before they hit hard limits.
Threshold TypeDescription
limit_reachedCustomer has reached their usage limit
allowance_usedCustomer has exhausted their allowance
In most cases, these events will fire at the same time, as the included allowance is the same as the user’s usage limit. However, you may have a feature with a different included allowance and a different “max purchase” limit. Eg: 100 API calls included, then 0.1 per API call, with a maximum purchase limit of 1000 API calls. Example payload:
{
  "type": "customer.threshold_reached",
  "data": {
    "threshold_type": "limit_reached",
    "customer": {
      "id": "user_123",
      "name": "John Doe",
      "email": "[email protected]",
      "balances": { ... }
    },
    "feature": {
      "id": "api_calls",
      "name": "API Calls",
      "type": "metered"
    }
  }
}

Setup

Once webhooks are enabled for your account, you can configure your webhook endpoints in the Autumn dashboard:
1

Navigate to Developer Settings

Go to the Developer section in your Autumn dashboard and select the Webhooks tab.
2

Add an Endpoint

Click Add Endpoint and enter the URL where you want to receive webhook events.
3

Select Events

Choose which events you want to subscribe to. You can select all events or specific ones.
4

Save and Test

Save your endpoint configuration. You can use the Send Test Event button to verify your endpoint is receiving events correctly.

Webhook Security

Autumn uses Svix for reliable webhook delivery. Each webhook request includes signature headers that you can use to verify the request is genuinely from Autumn:
  • svix-id — Unique message identifier
  • svix-timestamp — Timestamp of when the message was sent
  • svix-signature — Signature for verifying authenticity
You can use the Svix libraries to easily verify webhook signatures in your application.

Retry Policy

If your endpoint returns an error or is unavailable, Autumn will automatically retry the webhook with exponential backoff. You can view delivery attempts and retry failed webhooks from the dashboard.