How Valkyrie works
This is our open-book page: a direct explanation of what happens when you connect your Stripe account, written without marketing language.
Step by step
You connect your Stripe account
You click "Connect with Stripe" and approve read-only access through Stripe's own OAuth screen. You never give us a password or API key directly, and Stripe handles the authorization.
We scan your last 90 days of charges
We pull every charge from the last 90 days and look at which ones failed. For each failed charge, we check whether a later charge to the same customer succeeded, and if so, whether it used the same card or a different one.
We sort failures into four buckets
Same card succeeded later = Stripe's own retry, not billable. Different card succeeded before we ever contacted them = the customer fixed it themselves, not billable. Different card succeeded after we emailed them = a real recovery, this is what we bill 25% on. Still failed = unresolved, nothing to bill yet.
You decide whether to activate
You see the real numbers before committing to anything. Connecting is free and read-only. If you activate, you preview the exact email your customers will receive first, then add a payment method for our fee (only charged after we actually recover something).
We email affected customers
Only customers whose failed payment we classified as "worth chasing" get an email, asking them to update their card. The link goes to a Stripe-hosted page. We never see or store the new card number.
We detect the recovery and wait 7 days
When a customer's new card succeeds, we log it as a recovery and wait 7 days (in case of a refund or dispute) before charging our 25% fee.
Exactly what we can and can't see
We can see
- · Your charges, their amounts, statuses, and failure reasons
- · Customer IDs and the email addresses attached to failed payments
- · Your business name (used to personalize recovery emails)
- · Whether a later charge to the same customer succeeded, and with which payment method
We can't see / can't do
- · Full card numbers. Stripe never gives these to connected apps
- · Your Stripe balance or ability to move money. Our access is read-only for account data
- · Anything outside the last 90 days of charges at initial connect (we do re-scan daily once activated, to catch new failures going forward)
- · Your account settings. We cannot change them, and you can revoke our access at any time from your own Stripe Dashboard
Stripe's retry vs. our recovery
Stripe automatically retries many failed payments on its own, often succeeding with the exact same card that failed the first time. That's Stripe's own retry logic, and we never bill for it. We only count a recovery when a previously-failed charge succeeds with a differentpayment method, for a customer we actually emailed, meaning our outreach plausibly caused the fix, not Stripe's automation.
If you cancel
Revoke our access from your Stripe Dashboard (Settings → Connected applications) at any time. That immediately stops any further scanning or outreach. You're still responsible for the fee on any recovery already confirmed and within its 7-day hold at the moment you cancel; nothing is billed after that. You can also request full deletion of your data; see our Privacy Policy for how.