Jonathan Bird Web Development
  1. Integrations
  2. ERP Integration
ER ERP & Accounting

ERP Integration for eCommerce & Custom Platforms

SAP, Cin7, Microsoft Dynamics, Pronto, Odoo and anything else with an API. The engineering is the same, and the engineering is the hard part.

Every ERP has a different API, and none of that is the difficult bit. The difficult bit is what happens when the ERP is down for maintenance during your busiest hour, when a webhook arrives twice, when a nightly sync fails halfway through, or when a vendor deprecates an endpoint without much warning. That is where integrations actually break, and it is the same problem regardless of whether the badge on the box says SAP, Cin7, Pronto, Dynamics, or Odoo. I design for those failures first, then write the vendor-specific code.

Talk to me about ERP
Works with Shopify Adobe Commerce WordPress Laravel & custom builds

Proven in production

Production ERP integrations against NetSuite, MYOB, Xero, Options ERP, and many more, including a nightly sync of around ten million rows at 100% success.

Capabilities

What I build with ERP

The ERP integration work I most often take on. If yours sounds like one of these, we should talk.

Any ERP With an API

SAP (including S/4HANA and Business One), Cin7 Core and Omni, Microsoft Dynamics 365 Business Central, Pronto Xi, Odoo, Infor M3, Apparel21, AdvanceRetail. If it exposes an API, it can be integrated. The vendor changes; the engineering discipline does not.

Designed Around the Failure Modes

Retries with backoff, idempotent writes, dead-letter queues, and reconciliation. Following the documentation gets you a demo. Designing for the API having a bad day gets you an integration that is still working in three years.

Built for Volume

Batched, diffed, and parallelised where it is safe to be. The Options ERP sync behind Impact Office Supplies moves around ten million rows every night and finishes before the business day starts.

B2B Pricing & Account Structures

Contract pricing, quantity breaks, parent and child accounts, and customer-specific catalogues surfaced from the ERP into your B2B storefront. This is normally the whole reason a wholesaler needs a real integration.

Monitoring From Day One

Integrations ship with monitoring, alerting, and reconciliation. If a sync fails, you hear about it from me or from an alert, not from a customer asking where their order went.

Kept working after launch

Vendors deprecate endpoints and change webhook formats. I watch the platforms your integrations depend on and update them when changes are announced, rather than waiting for something to break quietly.

How it works

A ERP integration built to last

The same approach behind every integration I ship, from the first conversation to the years of maintenance that follow.

01

Scope & map

We map exactly what needs to move between ERP and your store: orders, stock, pricing, customers, and where the awkward edge cases hide.

02

Build for redundancy

I build the integration around the failure modes: retries with backoff, idempotent writes, and reconciliation, so it holds up when the API has a bad day.

03

Test & reconcile

Tested against real data in a safe environment, with reconciliation reporting that proves ERP and your store actually agree before go-live.

04

Monitor & maintain

Monitoring and alerting from launch, so failures surface immediately, and the same developer who built it is the one who keeps it running.

The Difference

The website is the easy half. The ERP sync is the job.

For most agencies an ERP integration is the last item on the project plan, handed to whichever junior is free that sprint and shipped as soon as the happy path works. Then it fails quietly six months later, and nobody who wrote it is still on the account. I treat the integration as the heart of the project, because it is the part that decides whether the whole build actually works, and it has to be engineered for the failures so it keeps running reliably for years rather than becoming a recurring problem.

A typical agency

Integrations as plumbing, by juniors on docs.

  • Integration is treated as plumbing and handed to whichever junior is free this sprint.

  • The happy path is copied from the API documentation, with no error handling, retries, or reconciliation.

  • No monitoring once the integration "works". Failures stay silent until a customer complains.

  • A third party deprecates an endpoint and your integration breaks without warning.

  • After launch you are handed to a maintenance team that has never opened the integration code.

Working with me

Integration is the specialism.

  • Integration is my specialism. I have shipped ERP syncs, payment gateways, and bespoke API connections at production scale.

  • Error handling, retries, idempotency, and reconciliation are designed in from day one. Ten million rows nightly at 100% success is the standard.

  • Monitoring, alerting, and reconciliation from launch. Failures are caught before anyone outside notices.

  • I track the APIs you depend on and update the integration when vendors announce changes.

  • The same developer who built it stays with you. Most of my integration clients have been with me five to seven years.

FAQ

Common ERP Integration Questions

The questions I get asked most often about integrating ERP.

Which ERPs can you integrate with?

Any ERP with an API. I have shipped production integrations against NetSuite, MYOB, Xero, and Options ERP, and the same approach applies to SAP (including S/4HANA and Business One), Cin7 Core and Omni, Microsoft Dynamics 365 Business Central, Pronto Xi, Odoo, Infor M3, Apparel21, and AdvanceRetail. The vendor-specific part is the smaller half of the job. The engineering that keeps a sync correct under failure is the larger half, and it transfers.

Why not just use an off-the-shelf connector or an iPaaS?

If your trading is simple, do. A connector is cheaper and faster and there is no virtue in over-engineering. It starts to hurt when your business is not simple: customer-specific contract pricing, multi-location stock, parent and child accounts, unusual tax treatment, or a product model that does not map cleanly onto whatever the connector assumes. At that point you are either bending the business to fit the tool, or paying people to patch the gaps by hand every month.

What actually makes an ERP integration fail?

Almost never the API call itself. It is the missing retry, the non-idempotent write that duplicates an order when a request is retried after a timeout, the sync that fails halfway and leaves the two systems disagreeing, the deprecated endpoint nobody noticed, and above all the absence of monitoring, so that all of the above stay invisible until a customer complains. Those are design problems, and they are solvable up front.

Can the ERP drive customer-specific pricing on my B2B store?

Yes, and it usually should. Trade customers expect to log in and see their negotiated price, including quantity breaks and any account hierarchy. That pricing lives in the ERP, so the storefront needs to reflect it faithfully rather than approximate it. This is normally the single most valuable part of a B2B integration and the thing generic connectors handle worst.

How long does an ERP integration take?

A focused one-way sync is usually a few weeks. Full two-way syncing with contract pricing, multi-location inventory, and order round-tripping is a larger project measured in months. The scope depends more on how customised your ERP already is than on which ERP it is. Once that is defined, I can provide an accurate estimate.

Talk to me about your ERP integration

For over 15 years I've helped Australian enterprise, government, and not-for-profit organisations ship websites that are fast, secure, and accessible. Get in touch to discuss your project today.