A single flow of records leaving one system and arriving in another that a person actually reads.

Shopify integrations with clear data ownership

Which system holds the truth, what crosses the boundary, what happens when a call fails, and who is responsible for it a year later.

First question

Which system is telling the truth

Nearly every integration failure traces back to an unanswered version of this.

Two systems holding a stock number is not an integration problem until they disagree. Then it is the only problem, and it usually surfaces as an oversell on the busiest trading day of the year.

So the first thing a scope names is ownership. For each entity that crosses a boundary, one system holds the truth and the others hold a copy. Stock might be owned by the warehouse system, prices by the ERP, customer records by Shopify, and product content by whichever system the team actually edits. Those are business decisions, not technical ones, and they are made before any code exists.

The second thing it names is direction and timing. One way or two, on a schedule or on an event, and how much delay is tolerable before somebody notices. A ten-minute stock delay is fine for most catalogues and unacceptable for a single-unit resale business.

Common boundaries

Four systems Shopify usually has to talk to

Each with a different failure mode and a different urgency.

Swipe the systems

Stock

ERP and inventory

Stock levels, product data, purchase orders and multi-location availability. The most visible integration, because its failures are visible to customers.

  • Ownership of stock and price named explicitly
  • Multi-location mapping agreed before build
  • Reconciliation against source counts on a schedule

Money

Accounting and tax

Orders, refunds, payouts and fees reaching the finance system in a form that reconciles without manual repair.

  • Payout and fee handling agreed with whoever does the books
  • Refunds and partial refunds treated as first-class cases
  • Tax treatment per market confirmed, not inferred

Despatch

Fulfilment and carriers

Orders out, tracking back, and the exceptions that make up most of the real work: splits, holds, cancellations and partial shipments.

  • Exception paths specified, not just the happy path
  • Tracking and notification wording agreed
  • Cut-off times and service mapping documented

Marketing

CRM, email and feeds

Customer and order data reaching marketing systems with consent intact and identities that actually match.

  • Consent state carried, not assumed
  • Identity matching rules written down
  • Feed rules reviewed against what channels reject
The scope

Questions answered before an integration is built

A scope that cannot answer these is not a scope.

Integration scope questions and why they matter
QuestionWhat has to be decidedCost of skipping it
OwnershipWhich system holds the truth for each entityTwo systems disagree and neither is wrong by its own rules
IdentityHow records are matched across systems, and what happens to duplicatesSilent duplicate customers and orphaned orders
VolumeExpected records per day and per peak hour, against published rate limitsThe integration works in testing and stalls in November
FailureRetries, backoff, replay and what is safe to run twiceDuplicate orders, or a queue that quietly stops
VisibilityWho is alerted, where the log lives and how a failure is noticedA broken sync found by a customer, days late
Ownership after launchWho maintains it when an API version is deprecatedAn unmaintained integration that fails on someone else’s schedule

Where a middleware platform already covers a flow reliably, using it is usually the better answer. Bespoke code is worth writing when the flow is genuinely specific to the business.

Failure handling

What a production integration has to survive

The interesting cases are all failure cases.

An integration that only works when both systems are healthy is a demonstration. These are the conditions it has to hold up under.

  • The other system being unavailable for an hour, without losing records
  • Rate limits reached during a promotion, handled with backoff rather than dropped calls
  • The same message arriving twice, without creating a second order
  • A partial failure mid-batch, with a resumable position rather than a restart
  • A schema change at the other end, detected rather than silently ignored
  • Credentials expiring, alerting a person before customers notice
  • A reconciliation report that compares both systems on a schedule
  • A documented manual procedure for the day the automation cannot run

Reconciliation is the one most often left out and the one that catches the rest. If nothing compares the two systems periodically, a slow divergence is invisible until it is expensive.

The shape of it

Where an integration sits

Three stages, and the direction each record actually travels.

Shopify

  • ShopifyStorefront, orders and customer records

Integration service

  • Named ownership per entityOne system holds the truth, the others hold a copy
  • Direction and timingOne way or two, on a schedule or on an event
  • Failure handlingWhat happens when a call fails, decided before it does
  • ReconciliationCompared against source counts on a schedule

Connected systems

  • ERP and inventoryStock, product data, purchase orders and multi-location availability
  • Accounting and taxOrders, refunds, payouts and fees
  • Fulfilment and carriersOrders out, tracking back, and the exceptions
  • CRM, email and feedsCustomer and order data with consent state carried
Shopify, the integration service in the middle, and the categories of system on the other side of the boundary.

These are system categories, not named products. Which system owns each entity is a business decision, made before any code exists, and the specific systems are named per project rather than published here.

Money

What this work starts at

Published starting figures in GBP and USD, excluding VAT.

Integration delivery

Scoped after a technical review

One bounded piece

Project sprint

£1,500$2,000

One bounded improvement: landing pages, a template rebuild, an analytics implementation, or a build-readiness review credited against a larger project.

  • One defined outcome, agreed before work starts
  • Fixed price and a fixed finish line
  • Credited against a larger project where it leads to one

Fixed price

Plus, B2B, multi-market

Advanced Shopify

From £8,000From $10,500

Shopify Plus, B2B, multi-market, multi-language, custom integrations or headless work. These configurations are sized after discovery, not instant-priced.

  • Trade accounts, price lists and B2B rules
  • Multi-market and multi-language configuration
  • ERP, PIM, WMS and accounting integrations
  • Headless or custom storefront work where justified

Starting price · scoped after discovery

Ongoing responsibility

Monitoring and maintenance after launch

Per month

Optimisation

From £1,250From $1,650

A live improvement programme on one site. You set the priorities each month, we work the queue in order, and the month closes with what changed and what it did.

  • Outcome: measurable improvement to one live site
  • Queue: one active workstream, reprioritised monthly
  • Response: next working day
  • Scope: conversion, SEO, content and development work

Starting price

Per month

Development partner

From £3,000From $4,000

Continuous delivery across an agreed portfolio, with planning ahead of the work rather than a queue you have to keep feeding.

  • Outcome: continuous delivery across your estate
  • Queue: two active workstreams, planned a month ahead
  • Response: same working day, UK working days
  • Scope: Shopify and marketing-site delivery, plus roadmap planning

Starting price

Integration work is scoped after reviewing the other system’s API, its rate limits and the volumes involved. A published figure before that would be a guess, and integration guesses are expensive in one direction only.

Questions

Asked before this work is agreed

Do we need custom development, or will an app do?

An app or a middleware platform is usually the better first answer, because someone else maintains it against platform changes. Bespoke work earns its place where the flow is specific to how your business operates and no off-the-shelf mapping fits.

Who owns the integration afterwards?

Whoever is named in the scope. APIs are versioned and deprecated on the vendor’s schedule, not yours, so an integration without a maintenance owner is a fault waiting for a quiet week. That is agreed before it is built.

Can you integrate with a system that has no public API?

Sometimes, through scheduled exports, a database connection or a file drop. It is slower and more fragile than an API, so it is scoped with those limits stated rather than presented as equivalent.

How do we know it is still working?

Monitoring and a scheduled reconciliation report. Alerting on failure is not enough on its own, because the most expensive integration faults are the ones that succeed with the wrong data.


Send the systems and which one owns the stock.

That single answer, plus rough daily volumes, is usually enough to say whether this is an app, a middleware flow or a build.

Discuss a project