Durable Execution
Stripe :: Sutyr :: Recovered

Your failed payments
have a recovery strategy.
You're not running it.

SaaS companies on Stripe lose 4–9% of MRRIndustry benchmark across mid-market B2B SaaS. Hard declines average 2–4% of MRR monthly; involuntary churn from payment friction compounds the remainder. Source: Stripe Smart Retries benchmarks; Recurly Subscription Benchmark Report. to failed payments every month. The retry logic treats a temporarily empty card the same as a stolen one.

Stripe Workflows runs in seconds. Sutyr workflows run for days, classifying, sleeping, and waking on signals.

Built on Temporal Cloud, the durable execution engine at Snap, Coinbase, HashiCorp, and Datadog.

[01]The Pain
Weight :: Evidence

This is what
involuntary
churn looks like.

Every sphere is a failed charge. Every charge carries a decline_code. Your retry loop reads none of them, retrying on the same schedule whether the card was temporarily empty or reported stolen.

customers failing0
MRR lost to silent retry$0
decline codes unread27
n = 480 customersillustrative
every 15s, one more

Not a bug. A policy.

cost model
n = 480 customersillustrative
Your numbers
ARPU $420×24mo lifetime+CAC $2,500
Your cost
$12,580
lost LTV per uncorrected failure

480customers × 7.5% failure rate × $12,580 = $452,880 in recoverable LTV per year.

Based on a 480-customer mid-market SaaS base, scaling linearly with your customer count. Source: 7.5% industry-standard involuntary churn rate.

[02]What Sutyr Does
Stripe Events :: Durable Workflows

Twenty-seven decline codes.
Three strategies.
One workflow each.

Sutyr receives every Stripe billing event and reads the decline code, not just the failure. The code routes the event to a durable workflow. Retryable codes wait. Action-required codes pause. Terminal codes stop.

Not a retry queue. A workflow that holds state, sleeps for days, and wakes the moment something changes upstream.

[03]Architecture
Webhook :: Workflow

From webhook to recovered.

~/sutyr/architecturelive
1// Webhook payload received
2{
3 "id": "evt_1PqR7qKmT2a",
4 "type": "invoice.payment_failed",
5 "data": {
6 "customer": "cus_Np9xQr",
7 "amount": 84000,
8 "currency": "usd",
9 "decline_code": "insufficient_funds",
10 "idempotency_key": "ik_inv_840_002"
11 }
12}

Connect your Stripe account and forward every billing event to Sutyr.

  • Stripe OAuth. Connected in 60 seconds
  • Zero webhook endpoint changes on your side
  • Credentials sealed at rest with KMS-backed envelope encryption
[04]Webhook Lab
Observe :: Debug

We built the testing tool.
Now we're building the fix.

Webhook Lab generates schema-accurate Stripe billing events and fires them at your endpoint, with valid HMAC signatures. The same classification engine powers the Sutyr platform. What the lab tests, Sutyr orchestrates.

18 event types | 5 billing scenarios | 700+ tests | Apache 2.0
lab.sutyr.com
Webhook Lab — before firingWebhook Lab — after firing
Launching soon
Try Webhook LabView on GitHub

Zero telemetry. Runs against any endpoint. Your events never touch our servers.

[05]Outcome
Decline :: Retained

A failed payment should not become a forgotten job.

Sutyr keeps the recovery path alive after the first decline: decline-code classification, durable waits, signal-driven wake, and an immutable audit trail from failure to retained account.

01

State is preserved

Customer, invoice, decline code, strategy, attempt history, and next action stay attached to the recovery.

02

Waiting is durable

The workflow can sleep through deploys, restarts, webhook delays, and long recovery windows without losing position.

03

Signals wake the right workflow

A customer card update wakes the recovery path immediately, before a blind retry schedule would run again.

Not another retry.

Reliable recovery.

[06]Questions, answered.
Asked :: Answered

What founders ask before they apply.

How is this different from Stripe Workflows?

Stripe Workflows runs sequenced actions in seconds. It does not classify decline codes, does not coordinate across related entities, and does not support long-running waits. Sutyr workflows run for days, classify by decline_code, and wake on signals like payment_method.attached or charge.dispute.created. Workflows is excellent for short action sequences. Sutyr is the durable recovery layer on top.

Isn’t this just dunning with extra steps?

No. Dunning tools send emails and SMS. Sutyr decides whether the underlying retry should happen at all, when, and on what schedule. We integrate with your email tool, we don’t replace it. The classification, the signal-driven wake, and the durable execution are the parts no email tool has.

What about Churnkey, Stunning, Butter Payments, Churn Buster?

Those tools optimize retry timing and run customer communications. At most they treat a decline as binary — soft-retry or hard-stop — and some don’t read the decline code at all. Sutyr classifies all 27 Stripe decline codes into three strategies, runs each on a durable Temporal workflow, and coordinates across customer entities. Different architectural layer.

You’re pre-revenue. Why should I trust this?

Webhook Lab is public proof of how we approach correctness: Apache 2.0, 700+ tests, 18 event types, valid HMAC signatures, zero telemetry. The founding cohort is up to ten companies, each with direct founder access through the founding period. Founding pricing is locked through December 31, 2027.

What’s not in scope?

Sutyr is Stripe-only. We don’t route across payment processors. We don’t replace your billing platform. We don’t send dunning emails or SMS. We don’t run cancel-flow surveys. We classify decline codes, run durable recovery workflows, and coordinate them on a signal mesh. That’s the whole product.

What if Stripe builds this themselves?

Stripe shipped 288 products at Sessions 2026. None of them are decline-code-strategy classification. Stripe builds horizontal infrastructure for every merchant in the world; Sutyr builds vertical depth for SaaS companies on Stripe. The gap is structural, not temporary.

What about security and compliance?

Privacy posture spans 13 jurisdictions including Quebec Law 25, GDPR, and UK GDPR. Ten named sub-processors under Standard Contractual Clauses. Self-hosted analytics; cloud error monitoring with PII masked and email hashed. SOC 2 Type I in progress. Full detail in the sub-processor disclosure.

Pricing?

Founding cohort: $599/month, locked through December 31, 2027. Up to ten companies.

Includes the full Sutyr platform: decline-code classification, durable workflows, signal-mesh coordination, Webhook Lab, DPA on request, and direct founder access through the founding period.

General availability pricing finalizes with founding cohort feedback. Founding members lock their founding rate through their lock period. Enterprise contracts available for Connect platforms and high-volume buyers.

No payment collected at application. Billing begins at platform launch.

[07]Apply
Founding :: Cohort

Founding cohort open now. Platform launching shortly.

Your billing infrastructure
should never drop a call.
Let us prove it.

We're selecting up to ten founding companies before general availability. Full platform access and direct founder access through the founding period.

Complex billing logic should be stateful, durable, and invisible. That's what I'm building.

Toufic Jrab, McGill Engineering, Montreal

Founding cohort

$599/ month

locked through December 31, 2027

Up to ten founding companies.

The platform

  • 27 decline codes classified into 3 recovery strategies
  • Durable workflows that survive restarts, deploys, and multi-day waits
  • Signal-mesh coordination across a customer’s invoices and disputes
  • Queryable workflow state with a full audit trail
  • Recovery policies you tune to your own business logic

Founding access

  • Direct founder access through the founding period
  • Roadmap influence on what ships next
  • Cohort Slack and quarterly syncs
  • DPA on request

GA pricing finalizes with founding cohort feedback. Founding members lock their founding rate through their lock period.

No payment collected at application. Billing begins at platform launch.

Running at higher volume, or need a custom contract? Reach out at toufic@sutyr.com.

Get early access
What's your stage?

I'll personally email you within 24 hours.
Toufic, founder