Integration · Wholesale · ERP/CRM2025

Two-way ERP ↔ CRM sync

Orders, customers and notes lived in Brightpearl while sales worked in HubSpot. A two-way integration now keeps both systems in step: real time one way, daily the other.

10.4k

Brightpearl contacts migrated into HubSpot and kept in sync

Client
Aid Through Trade
Year
2025
Type
Integration · Wholesale · ERP/CRM

What was the problem?

Aid Through Trade runs orders, customers and its product catalog in Brightpearl, its ERP, while the sales team works in HubSpot. With no link between the two, notes and customer changes lived in one system or the other, and each drifted out of date.

What did I build?

  1. Real-time webhooks
  2. Daily jobs
  3. Loop protection
  4. Migration and cleanup
  1. 1Real-time HubSpot → Brightpearl webhooks for new contacts, property changes and notes.
  2. 2Daily Brightpearl → HubSpot jobs for contacts, order statistics, orders as deals with line items, and the product catalog.
  3. 3Loop protection, so a note synced one way never comes back as a duplicate.
  4. 4A historical migration and data cleanup.

What was the result?

  • 10,399 Brightpearl contacts migrated into HubSpot.
  • HubSpot changes reach Brightpearl in real time; Brightpearl data reaches HubSpot daily.
  • Orders show in HubSpot as deals with line items, so sales sees what each customer buys.

What is it built with?

  • Python
  • FastAPI
  • GCP Cloud Run
  • Firestore
  • Brightpearl API
  • HubSpot API
  • integration
  • erp
  • crm
  • wholesale

Have a similar problem? Let’s scope it.