Webhooks Overview

RecurrBase sends HTTP POST requests to your configured webhook URL when subscription events occur.


How Webhooks Work

  1. Configure a webhook URL in the RecurrBase dashboard
  2. Select which events to receive
  3. RecurrBase sends POST requests to your URL
  4. Verify the signature header to ensure authenticity

Webhook URL

Your webhook endpoint must:

  • Accept POST requests
  • Return 200 status code
  • Respond within 10 seconds

Webhooks that don't respond within 10 seconds will be retried. Ensure your endpoint is fast and reliable.


Signature Verification

Each webhook request includes a RecurrBase-Signature header:

RecurrBase-Signature: base64(secret + ":" + JSON.stringify(payload))

Verify this signature to ensure the request is from RecurrBase.

See Verifying Signatures.


Event Types

  • SUBSCRIPTION_CREATED - New subscription created
  • SUBSCRIPTION_RENEWED - Subscription renewed
  • SUBSCRIPTION_EXPIRED - Subscription expired
  • BILLING_FAILED - Renewal attempt failed

See Event Types for payload details.


Retry Logic

If your webhook endpoint fails:

  • Retry after 2 minutes
  • Retry after 4 minutes
  • Retry after 8 minutes
  • Mark as GAVE_UP after 3 attempts

Webhook retries use exponential backoff. Make sure your endpoint is idempotent.


Testing

Use the test webhook feature in the dashboard to verify your endpoint.

See Testing Webhooks.