Case Study

How a Custom Integration API Replaced a Failing Zapier Stack for a UK B2B SaaS

A bespoke event-driven API layer connecting a UK B2B SaaS to HubSpot, Xero and Slack — lifting event delivery from 94% to 100%, saving £18,400 a year in Zapier fees and reconciliation, and paying back in the second month.

API DevelopmentHubSpotXeroWebhooks

100%

Event delivery (was 94%)

£18,400

Annual saving

5 weeks

Build time

The challenge

A Zapier stack quietly dropping 1 in 16 events — and a finance team chasing the gaps

The client's product fires a steady stream of internal events — trial sign-ups, plan upgrades, metered usage ticks, churn signals. Three years of growth had bolted on 21 Zaps and 4 Make scenarios to push that data into HubSpot (contacts, deals, lifecycle stages), Xero (usage-based invoice line items) and Slack (sales and ops alerts).

At their volume the Zapier stack was costing £412 per month, hitting task caps mid-month, and silently dropping roughly 6% of events. Finance was spending six hours a week reconciling missing invoice lines against the product's own database, and sales was missing upgrade alerts because a Zap had quietly errored two weeks earlier.

How it works

Inside the build

  1. 01

    Phase 1 — Event schema & contract

    Catalogued every event the product emits, defined a single versioned JSON schema, and agreed which downstream system owns which field. One source of truth before a line of integration code was written.

  2. 02

    Phase 2 — Signed webhook ingress

    Built a public ingress endpoint on TanStack Start with HMAC signature verification, payload validation and immediate persistence to Supabase. Producers stop worrying about downstream; the API owns durability.

  3. 03

    Phase 3 — Idempotent fan-out workers

    Per-destination workers push each event to HubSpot, Xero and Slack with idempotency keys, exponential backoff and a dead-letter queue. A duplicate event never creates a duplicate invoice or contact.

  4. 04

    Phase 4 — Replay UI & alerting

    Internal admin screen lets ops search any event by ID, see exactly which destinations succeeded, and replay failures with one click. Email + Slack alerts fire the moment anything lands in the dead-letter queue.

Benefits

What the business actually gains

100% event delivery

Up from roughly 94% on Zapier. Every product event now reaches every destination, with full audit trail.

£18,400 / year saved

Zapier subscription cancelled and six hours a week of finance reconciliation eliminated.

0 missed upgrade alerts

Sales gets real-time Slack pings on every plan change — no more discovering an upgrade two weeks late.

Xero invoices auto-built

Metered usage line items push into draft invoices on Xero nightly. Finance reviews and sends; no manual entry.

Replay in one click

Ops can resend any failed event from the admin UI without touching code or contacting engineering.

Paid back in month 2

Total build cost recovered inside 60 days of cutover through removed tool fees and reclaimed staff hours.

Features

Everything the platform delivers

  • HMAC-signed webhook ingress with replay protection
  • Versioned JSON event schema with Zod validation at the edge
  • Idempotency keys on every downstream call (no duplicate invoices or contacts)
  • Per-destination dead-letter queue with one-click replay UI
  • Exponential backoff with jitter and per-destination rate limiters
  • Full Supabase audit log: event ID, destination, status, response, retries

Technology

Built on a modern stack

TanStack StartSupabaseCloudflare WorkersHubSpot APIXero APISlack Web APIZod

Why it matters

This is what bespoke automation looks like

Three lessons worth carrying into any integration build.

1. The schema is the product. Spending a week pinning down a single versioned event schema saved months of downstream firefighting. Every Zapier mess we have ever unpicked started as undefined field semantics.

2. Idempotency is non-negotiable when money is involved. The same usage event arriving twice would have created duplicate Xero line items and double-charged customers. Idempotency keys eliminate that class of bug entirely.

3. Give ops a replay button. Engineering does not want to be the bottleneck for resending a stuck webhook. A simple admin screen turned a sev-2 page into a 10-second self-serve fix.

"Our Zapier bill is gone, finance has stopped chasing missing invoices, and sales actually trusts the Slack alerts again. It feels boring, in the best possible way."

CTO, UK B2B SaaS (anonymised)

Services used

Want the same on your site?

FAQ

Frequently asked questions

Could you replace our Zapier or Make stack with this approach?

Often yes. Once a Zapier bill is north of £200 a month, or task caps are throttling growth, a custom API typically pays back inside 2–4 months and removes the silent-failure class of bug entirely.

What if HubSpot or Xero changes their API?

Every integration is built against current stable API versions and monitored against vendor changelogs. The retainer covers proactive updates whenever a breaking change is announced, well before deprecation dates.

Do we own the code at the end?

Yes. The full source code, schema, infrastructure config and admin UI are handed over in your repo. You can host, extend or hand it to another developer at any time.

How long does a build like this usually take?

Typically four to six weeks for three to four destinations. Add roughly a week per additional destination or per significant business-logic branch (e.g. multi-entity Xero billing or HubSpot custom objects).

Ready to automate your business?

This is just one example of what's possible. If you have a repetitive process costing you time, we can build a custom tool to handle it.

Book a free call

More case studies

How We Eliminated 40 Hours of Weekly Admin for a UK E-Commerce Business

A custom AI workflow automation system that cut a £2.5M UK retailer's manual admin from 40 hours to 3 hours per week — saving roughly £26,000 per year and eliminating data entry errors entirely.

How a Custom Shopify-ERP Integration Eliminated Stock Discrepancies for a UK Retailer

A real-time bidirectional sync between Shopify and a legacy warehouse ERP — eliminating 12 monthly oversells, lifting inventory accuracy to 99.8% and cutting order processing from 4 hours to 40 minutes.

How Automated Keyword-Driven Content Updates Increased Organic Traffic by 187% in 6 Months

A B2B services firm connected to SerpAPI via our automated AI CMS — lifting organic traffic 187%, ranking keywords from 23 to 91 in the top 10, and reducing content update labour from 16 hours/month to zero.

Automating E-Commerce Product Data Collection for UK Businesses

A bespoke web application built by Streamline Digital that scrapes, enriches, and exports product data from 15+ e-commerce platforms — saving businesses up to 30 hours of manual work every week.

How a Custom Quotation Platform Cut Bournemouth Removal Quotes from Hours to Minutes

Inside the bespoke quotation system powering manandvanbournemouth.uk — an instant online quote form, AI Smart Intake, live PDF builder and itemised pricing that delivers a transparent, branded quote within minutes of any enquiry.

How We Built Our Own Growth Engine: The Streamline Digital Internal Platform

A single integrated platform — CMS, blog generation, backlink manager, LinkedIn automation, SERP and keyword intelligence, competitor analysis and lead capture — that runs this entire website with about fifteen minutes of human attention a week.

Inside the Admin Console We Built to Run Our Own Agency

Streamline Digital built a bespoke internal admin console that consolidates lead capture, CRM, SEO monitoring, blog automation, LinkedIn scheduling, and backlink outreach into one platform. It replaced approximately eight separate SaaS subscriptions and now runs the agency's entire marketing operation with minimal human oversight.

Hand-picked next steps from across our guides and services.