Documentation
Everything needed to get a workspace ingesting real failed payments and dispatching recovery messages.
1. Create your workspace
Sign up and a private workspace is created instantly — no approval step. The Finish setup checklist in the dashboard tracks the three things that make recovery live: a billing webhook, a WhatsApp sender and a first dispatched message.
2. Connect a billing provider
- Open Integrations in your dashboard and copy the workspace webhook URL.
- In Stripe, add an endpoint for invoice.payment_failed and charge.failed.
- Paste the signing secret back into RRLabs so we can verify every payload.
- Lemon Squeezy and Paddle follow the same pattern with their own signing secrets.
Access is read-only. RRLabs never charges cards, issues refunds or edits subscriptions.
3. Add a WhatsApp Cloud API sender
- Bring your own Meta Business phone number ID and Cloud API token.
- RRLabs verifies the sender live against Meta before saving it.
- Meta bills WhatsApp conversations directly to your Meta account.
- Template approval and opt-out handling stay in your Meta Business account.
4. How recovery runs
- A failure arrives by webhook and lands in your recovery feed.
- The decline code selects the retry delay: 48h, 72h, 36h or 24h.
- Copy generation runs a four-tier waterfall: cache, primary model, fallback model, deterministic template.
- Every message logs channel, model, latency and recovery score for audit.
Machine-readable references
AI crawlers and agents can read /llms.txt and /llms-full.txt for a structured summary of the architecture, pricing and decline routing. Full guides live in the journal.