Home/Features/Webhooks & API

Integrations

Your recovery data,
connected to everything.

Subscribe to recovery events. Query your data. Signed delivery on every webhook. Connect Recurflux to your data warehouse, internal tooling, Slack workflows, or custom dashboards — without polling the dashboard.

8

Webhook event types across Rise and Surge plans

HMAC

SHA-256 signed delivery on every webhook

Retry attempts with exponential backoff on delivery failure

Recovery data shouldn't
live only in a dashboard.

Without webhooks & API

  • Recovery data sits in Recurflux — can't sync to your data warehouse or CRM
  • Your support team finds out a payment recovered by logging into yet another dashboard
  • Can't trigger downstream workflows when a dispute opens or a high-value subscriber churns
  • Building internal revenue reports means manual CSV exports

With Recurflux webhooks & API

  • Stream payment.recovered events into BigQuery, Intercom, Slack — any endpoint
  • Trigger a Slack alert to #revenue when a HIGH-LTV subscriber cancels
  • Query recovery rate by failure code programmatically for your internal dashboard
  • Schedule a manual retry via API when a customer tells support they've updated their details

Every event
you can subscribe to.

EventPlanDescription
payment.recoveredRise+A previously failed charge was successfully collected. Includes retry attempt number and recovery method.
payment.failedRise+A new payment failure occurred. Includes decline code, retry schedule, and LTV score of the subscriber.
subscription.cancelledRise+A subscription was cancelled. Includes cancellation reason (if collected) and LTV tier.
ltv_score.changedSurgeA subscriber moved from one LTV tier to another. Fires on every scoring recalculation that results in a tier change.
cancel_reason.collectedSurgeA cancellation reason was recorded from the flow. Includes reason, offer shown, save outcome, and subscriber LTV.
dispute.openedSurgeA chargeback or dispute was opened. Includes dispute amount, reason code, and evidence deadline.
retry.scheduledSurgeA retry was queued for a specific charge. Includes next retry timestamp and retry attempt number.
winback.sentSurgeA win-back email was dispatched to a churned subscriber. Includes sequence step, reason routing, and subscriber LTV.

Signed, retried,
and logged.

01

Add your endpoint

Paste your HTTPS endpoint URL in the Webhooks settings tab. Select the events you want to subscribe to. Recurflux generates a signing secret for that endpoint.

02

Verify the signature

Every delivery includes an X-Recurflux-Signature header — an HMAC-SHA256 of the raw request body, signed with your endpoint secret. Verify it server-side before processing the payload.

03

Automatic retry on failure

If your endpoint returns a non-2xx status, Recurflux retries the delivery up to 5 times with exponential backoff: 10s, 30s, 2m, 10m, 30m. Each attempt is logged with the response status and latency.

04

Query via API

Use your API key to query the same data you see in the dashboard: failed charges, recovery status, LTV scores, analytics. Full REST API with JSON responses. Read-only keys on Rise, read/write on Surge.

// Verify webhook signature (Node.js)

const sig = req.headers['x-recurflux-signature']

const expected = crypto

.createHmac('sha256', WEBHOOK_SECRET)

.update(req.rawBody)

.digest('hex')

if (sig !== expected) return res.status(401).end()

What's included
at each tier.

Rise

$59/mo

  • 3 webhook events (recovered, failed, cancelled)
  • 3 webhook endpoints
  • 1 read-only API key
  • Delivery logs (7 days)

Surge

$159/mo

  • All 8 webhook events
  • Unlimited webhook endpoints
  • 10 read/write API keys
  • Intelligence webhooks (LTV, cancel reason, dispute)
  • Manual retry via API
  • Delivery logs (90 days)

Rule

Custom

  • Everything in Surge
  • Native BigQuery + Snowflake sync
  • Unlimited API keys
  • Dedicated webhook SLA
  • Custom event schemas on request

Webhooks start on Rise. Intelligence webhooks and read/write API on Surge.

Compare plans →

Common questions.

Which events can I subscribe to via webhook?

Rise plan (3 events): payment.recovered, payment.failed, subscription.cancelled. Surge plan adds intelligence webhooks: ltv_score.changed, cancel_reason.collected, dispute.opened, dispute.resolved, retry.scheduled, winback.sent. All events include the full subscriber object, amount, failure code, and LTV score.

How are webhooks secured?

Every webhook delivery is signed with an HMAC-SHA256 signature using your webhook secret. The signature is included in the X-Recurflux-Signature header. Verify it server-side before processing. Recurflux retries failed deliveries up to 5 times with exponential backoff. Each delivery attempt is logged with status code and response time.

What does the API let me do?

The Recurflux API lets you query failed payments, recovery status, subscriber LTV scores, cancellation reasons, and analytics — all the data visible in the dashboard, accessible programmatically. Rise plan includes 1 read-only API key. Surge plan includes 10 read/write keys with write access to retry schedules and webhook configuration.

Can I use the API to trigger a retry manually?

Yes, on Surge. The POST /retries endpoint lets you schedule a manual retry for a specific charge ID at a specified time. Useful for support workflows where a customer tells you they've updated their bank details.

Is there a sandbox environment for testing webhooks?

Recurflux connects to your processor's test mode — so you can trigger test webhook events using your processor's sandbox. Every webhook event in test mode is identical to production events, including signature format and payload structure.

Can I send recovery data to my data warehouse?

Yes — two ways. Webhooks let you stream events into any destination in real time (your own endpoint → BigQuery, Snowflake, Redshift). The Rule plan also includes native data warehouse sync directly to BigQuery and Snowflake with no intermediate endpoint required.

Recovery data in
every system you use.

See pricing →

Live in under 5 minutes