Skip to main content
The Stripe API in test mode, for the money side of an ecommerce agent: charge a customer, survive a decline and retry the same intent, answer a dispute before its deadline, reconcile a payout against the balance transactions inside it. Stripe’s own stripe-mock returns spec-shaped fixtures and remembers nothing; this twin’s whole point is the state stripe-mock gives up on — it remembers the charge you made, moves money from pending to available when time advances, and lets an unanswered dispute deadline become lost. Slug: stripe

What it models

Weird money states come from directives — open_dispute, settle_balance, force_decline, fail_payout, network_flake and friends — because no provider call can create them, which is exactly why they are worth modelling.

Not modelled

Everything subscription-shaped (subscriptions, invoices, checkout sessions, setup intents), Connect, Issuing, Terminal, Radar, Treasury, tax, files and webhook delivery (events exist as a queryable log; nothing is pushed). An operation Stripe has that the twin has not built answers an explicit 501 refusal with a code Stripe never sends, never a plausible response; a URL Stripe does not have gets Stripe’s own unrecognized-URL 404, verbatim.