Webhooks Overview
RecurrBase sends HTTP POST requests to your configured webhook URL when subscription events occur.
How Webhooks Work
- Configure a webhook URL in the RecurrBase dashboard
- Select which events to receive
- RecurrBase sends POST requests to your URL
- 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 createdSUBSCRIPTION_RENEWED- Subscription renewedSUBSCRIPTION_EXPIRED- Subscription expiredBILLING_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_UPafter 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.