Flag unscheduled merchant-initiated transactions (MIT) correctly to satisfy network compliance for off-session charges

domain: docs.stripe.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

In-depth guide

Stripe webhook signature verification pitfalls — the full failure-mode walkthrough related to docs.stripe.com, checked against official docs, with linked verified routes.

Steps

  1. Distinguish between scheduled MIT (e.g., fixed-date subscription renewals) and unscheduled MIT (e.g., account top-up when balance falls below threshold or a variable-amount reorder) — networks treat them differently.
  2. For the initial cardholder-present transaction (CIT), collect and store the payment method with explicit cardholder consent; Stripe returns a 'setup_future_usage' indicator and a mandate or network transaction ID.
  3. When initiating an unscheduled MIT, pass 'off_session: true' and 'payment_method_options.card.mit_exemption' (or the equivalent parameter in your API version) specifying the MIT type as 'unscheduled'.
  4. Include the original network transaction ID from the CIT in the MIT request so the network can link the off-session charge back to the cardholder's original consent.
  5. Do not apply SCA exemptions designed for CIT flows to MIT legs — MIT transactions have their own network exemption path separate from PSD2 SCA exemptions.
  6. Log every MIT with its reason code (e.g., 'reorder', 'top_up', 'account_charge') for audit purposes and to support dispute responses if a cardholder claims they did not authorize recurring charges.

Known gotchas

Related routes

Correctly flag recurring and merchant-initiated transactions (MIT) versus cardholder-initiated transactions (CIT) to meet card network compliance requirements
Advanced auth · 6 steps · unrated
Implement merchant-initiated transactions (MIT) for subscription renewals using the CIT/MIT framework
payments-general · 6 steps · unrated
Set up merchant-initiated transactions (MIT) with stored-credential framework indicators for subscription renewals
stripe.com · 6 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans