Comparison
Your homegrown Stripe checker vs a maintained detector
Most homegrown checkers encode correct proportional math — genuinely. What they lack is everything around the math: race handling, live-state discipline, currency edge cases, idempotent actions, alerting that survives contact with humans, and a test corpus asserting false positives as aggressively as positives. Price the bill before deciding ownership.
The hidden maintenance ledger
Payload-staleness fixes. Race windows needing delay-plus-lock. Zero-decimal currencies. Standalone fee refunds. Retry storms under keys. Backfill pagination inside serverless limits. Schema drift across Stripe API versions. Alert-fatigue tuning. Each item is small; the sum is a product.
Bus factor and runbooks
Scripts encode their author’s context; authors change jobs. The runbook nobody wrote becomes archaeology for whoever inherits both script and incidents.
Decision rubric
Unique ledger integration or regulatory constraints → build, informed by the full scope above. General detection feeding existing ops → adopt read-only and integrate outputs. Either way, validate math independently via the scanner first.
Common questions
Can we self-host FeeGuard?
Not currently — detection runs as a service; exports integrate with anything you keep.
How do we verify your math?
Published formulas, a paste-events scanner requiring no account, and a self-test corpus asserting negatives as hard as positives.