Release guide
Connect MRRdue safely
Connect read-only billing access, import the history window included in your plan, and work a ranked failed-payment queue with copyable recovery emails. No write access to your billing.
Connect your billing provider
After you create a workspace, open onboarding and connect Stripe or Dodo Payments: paste a restricted Stripe API key, or a Dodo Payments API key. MRRdue verifies the key against your account, stores it encrypted, and starts your 14-day trial on the first successful connection. A first sync runs automatically so you land on the dashboard with real recovery signals instead of an empty queue.
First sync
The initial import pulls the history window included in your plan (trial 3 months, Pro 24 months, full history for legacy custom accounts). Failed-payment cases and retention-risk scores appear in the dashboard once the sync completes. Use Sync now on onboarding or in settings any time you want a fresh pull. Manual syncs respect your plan's daily limit; in production, your provider's webhooks and scheduled jobs keep data current between manual runs — see Webhook Doctor & reliability.
Read-only credentials
For Stripe, create a restricted key in the Stripe Dashboard with read access to Customers, Subscriptions, Invoices, Products, and Prices, and no write permissions for charges, refunds, customer edits, or subscription changes. For Dodo Payments, use a Dodo API key and (optionally) a webhook secret; MRRdue verifies the key is read-only before storing it. Either way, MRRdue only needs to read billing state. Stripe test mode keys work for local development; live keys are for production workspaces. Full permission matrix on the Security page.
Sensitive data boundary
MRRdue stores billing metadata only: object IDs, invoice amounts, statuses, failure reasons, customer names/emails when present, hosted invoice links, and recovery activity. It does not ask for or store card numbers, CVCs, bank details, or raw payment method data. The same boundary applies to every surface that can read this data, including the MCP server: read-only in, no write path out.
Local sample data
For fuller local test data, use Stripe test mode and run npm run stripe:seed. The seed flow creates tagged test customers, subscriptions, invoices, and at least one failed-payment case, then syncs the data through the same import path as the app. More in Billing & local dev.
Ready to connect?
Explore the demo with sample data first, or sign up and connect a read-only billing provider on onboarding.