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.