Integration · Ecommerce

Connecting an ERP, a CRM and an online store so nobody re-keys an order again.

A manufacturer was running sales through HubSpot, its online store through WooCommerce and operations through Infor SyteLine. I built and maintain the integration layer that keeps all three in step.

Client
Recreation products manufacturer
My role
Lead integration developer
Built at
Synapse Results
Warehouse aisles stacked with boxed inventory

The challenge

Three systems, three versions of the truth.

Orders came in through the website and through sales reps working deals in HubSpot, but fulfilment lived in SyteLine. Getting an order from one to the other meant copying it by hand, and every manual step was a chance for a wrong address, a missed line item or a deal that never turned into an order.

Small data problems made it worse. Postal codes stored as numbers quietly dropped their leading zeros, international addresses didn’t fit US-shaped fields, and the automation platform the workflows ran on was being retired, so the whole setup needed a new home.

The approach

How I tackled it.

  1. Map the data

    Documented every object that moves between the three systems, which system owns each field, and what should happen when they disagree.

  2. Build event-driven syncs

    Webhooks and scheduled jobs push orders, contacts and deals between systems, with validation before anything is written and retries when an API is down.

  3. Clean up and future-proof

    Migrated bad data in bulk with Python and pandas, then moved the workflows to a platform with proper logs, event history and a dashboard.

What I built

An integration layer the team can actually see into.

  • Order sync into the ERP Website and CRM orders create or update sales orders in SyteLine automatically, tested against a sandbox before anything touches production.
  • CRM kept current Contacts, companies and deals in HubSpot stay matched to ERP customer records.
  • Data that survives the trip Postal codes, international addresses and other edge cases are normalized so nothing gets mangled in transit.
  • Logs and alerts Every run is logged, failures are visible on a dashboard, and the team knows when something needs attention.
Diagram of an ERP, a CRM and a store connected through a sync hub
How the three systems connect through the sync layer.

The results

What changed.

Orders move from website or sales rep to fulfilment without being typed twice, and the team trusts that the CRM and the ERP are describing the same customer.

  • 3 systems kept in sync ERP, CRM and online store share one picture of every order and customer.
  • No double data entry Orders are created automatically instead of copied by hand, saving the team about 10 hours a week.
  • One source of truth Clear ownership rules for every field, so conflicts resolve the same way every time.

Tech stack

  • Infor SyteLine
  • HubSpot
  • WooCommerce
  • Python
  • pandas
  • Webhooks
  • Pipedream
  • Windmill

Dealing with something similar?

Tell me what's stuck. I'll reply within one business day with next steps.