Free scan
Scan for uncovered dispute losses — paste charge.dispute.closed events
Paste `charge.dispute.closed` events where status was lost, and the scanner pairs each against its source charge’s transfer to show which losses debited your platform while the seller kept funds — recoverable figure computed per case, dispute fee excluded because network rules never let it move.
Inputs and computation
Same accepted shapes as the transfer scanner. Per lost dispute with a transfer: recoverable = transfer.amount − amount_reversed, never dispute.amount (overstates by your fee), never including the $15-style fee. Partial wins read from balance transactions when present.
Output anatomy and caveats
Rows per case: disputed amount debited, recoverable remainder, reachability note based on reversal state. Open disputes do not appear — realised losses only, since pre-judging live disputes belongs to watch-lists, not scanners.
Privacy
The public scanner deliberately does not accept Stripe API keys: an unauthenticated endpoint collecting credentials would have no audit trail and no revocation path. Key-based monitoring happens only inside accounts where keys are encrypted with AES-256-GCM and revocable by their owners.
Common questions
Partial wins?
Handled via balance-transaction reads where data permits; rows annotate when fuller exports improve precision.
Fraud-coded disputes?
Same math; different strategy — early-reversal gating lives in the playbook, not the scanner.