Now taking on Q4 projects — automation and custom software for small and mid-sized businessesGet in touch
All articles
Automation5 min read

Durable workflows beyond Zapier: Cloudflare and Windmill

Visual automation builders are unbeatable for stitching two SaaS tools together in an afternoon. Once a workflow needs to sleep for fourteen days, parse a ten-thousand-row file without timing out, or put an approval screen in front of staff without paying fifty dollars per seat, code-first durable engines take over.

OmnisgenEngineering team
inX
A durable execution architecture diagram showing a top four-step timeline from Webhook through a 14-day zero-CPU sleep and Human Gate to Ledger Sync, paired below with a Checkpoint Store verifying saved step state and idempotency alongside a live Self-Hosted Admin UI with zero seat tax.
Durable execution architecture: checkpointing each step so multi-day waits, API retries, and human approvals survive restarts without losing state.

Almost every growing operations team starts in the same sensible place: a handful of Zapier or Make scenarios moving leads into a CRM, posting alerts into Slack, and creating draft invoices in Xero or QuickBooks. For two-step notifications at modest volume, writing custom software instead of using an off-the-shelf connector is wasted effort.

The friction arrives six months later when those quick scenarios quietly become core business infrastructure. A supplier sends a four-hundred-page PDF catalogue that exceeds a thirty-second webhook timeout. A quote follow-up sequence needs to pause for fourteen days, wait for a salesperson's sign-off, and resume without firing twice if an API hiccups. Meanwhile, adding an internal exception dashboard in Retool introduces a per-user monthly bill that punishes you for giving the whole back office visibility.

Where visual builders hit their ceiling

Low-code platforms price and schedule work around short, stateless HTTP calls. When step four of a seven-step scenario fails because an accounting API is rate-limiting requests, replaying the run safely without duplicating steps one through three requires awkward branching and external state tables that become harder to read than actual code.

Code-first durable execution flips that model. Each step in a TypeScript or Python workflow is checkpointed to persistent storage the instant it succeeds. If an external service goes down for twenty minutes — or if the workflow deliberately sleeps for two weeks waiting on a customer signature — compute spins down to zero cost and resumes on the exact line where it paused.

Platforms in a modern durable stack
Cloudflare WorkflowsServerless durable state

Runs multi-step TypeScript pipelines directly on Cloudflare Workers with checkpointed retries, multi-day sleeps at zero idle CPU cost, and event pauses for human approvals — with no servers to patch.

Trigger.devHeavy background jobs

Open-source TypeScript task runner built for workloads that blow past standard serverless timeouts: large CSV imports, batch OCR extraction, and rate-limited ERP syncs with strict concurrency caps.

WindmillScripts + internal UIs

Self-hostable engine that turns plain TypeScript and Python scripts into scheduled workflows, webhooks, and auto-generated internal admin screens — replacing per-seat internal tool subscriptions.

Zapier, Make & n8nFast SaaS connectors

Still the fastest way to prototype and connect thousands of off-the-shelf apps when payloads are small, execution finishes in seconds, and visual inspection matters most.

Four patterns that keep infrastructure lean and client-owned

Upgrading an operations stack rarely means ripping out every existing Zap or Make scenario. The cleanest builds separate lightweight SaaS triggers from stateful core logic across four boundaries:

Move multi-day waits and retries into durable steps

Instead of chaining fragile delay blocks across visual scenarios, run quote follow-ups, onboarding sequences, and overdue invoice cadences inside Cloudflare Workflows. Each completed step is persisted automatically, long sleeps consume zero compute, and a transient API error retries only the failed call.

Isolate heavy file parsing and rate-limited syncs

Route large CSV reconciliations, multi-page PDF extraction, and bulk catalogue updates to a dedicated background worker such as Trigger.dev. Built-in concurrency queues let you trickle writes into rate-limited accounting or inventory APIs at a safe pace without dropping webhooks during busy hours.

Self-host internal approval screens without per-seat fees

When twenty operations and warehouse staff only need a clean table to review flagged orders or approve credit notes, paying per-seat enterprise UI licences adds up quickly. Deploying Windmill or a lightweight Next.js portal inside your own cloud account gives the whole team role-based access for a flat hosting bill.

Centralize OAuth token refresh outside individual scripts

Custom API integrations often break in month two because an OAuth refresh token silently expires or rotates. Pairing code-first workflows with a dedicated credential layer — such as self-hosted Nango or a central encrypted token store — keeps QuickBooks, Xero, and HubSpot connections alive with proactive health alerts.

Version control is an operational safety net

Because code-first workflows live in a GitHub repository you own, every pricing rule or approval threshold change has a timestamped diff, a staging test, and a thirty-second rollback — something drag-and-drop canvases struggle to match once ten people edit them.

Use visual tools where speed of connection matters most; use durable code where losing state or paying per seat costs more than writing a script.

Common questions

When should a small business use Cloudflare Workflows or Trigger.dev instead of Zapier?

Keep Zapier or Make for straightforward, short-lived notifications between off-the-shelf SaaS apps. Move to Cloudflare Workflows or Trigger.dev when a process needs to pause for days waiting on an approval, survive third-party API outages without duplicating earlier steps, process large files that hit 30-second webhook timeouts, or run tens of thousands of monthly steps without escalating task bills.

Can self-hosted Windmill replace Retool for internal dashboards and approval queues?

Yes, particularly for 15-to-100-person companies where most staff only open an internal tool to approve an exception, trigger a backfill, or check an order status. Windmill generates clean forms and tables directly from TypeScript, Python, or SQL scripts in your own cloud account, avoiding per-user seat charges while keeping business logic in Git.

What is durable execution in workflow automation, and why does it prevent duplicate actions?

Durable execution records the output of every individual step to persistent storage as the workflow runs. If a server restarts or step four fails due to a network timeout, the engine replays the workflow using the saved results of steps one through three rather than re-running them — preventing duplicate invoices, double emails, or repeated payment charges.

Want us to run this exercise with you?

Send the process that costs you the most time. We'll reply with what could be automated this quarter and roughly what it takes.

Get in touch

Keep reading

All articles