Gilbert Zenner
← All case studies

Field services

Connecting a CRM, an ERP and a field app that never spoke

Installation and maintenance company

Problem

Customer data lived in the CRM, jobs in the ERP, and technician reports in a separate mobile app. Office staff copied information between all three every day, and the systems still disagreed by the end of the week.

Solution

A synchronisation layer keeps the three systems consistent. Each record has one owner system, changes propagate within seconds, and a conflict dashboard shows the rare cases that need a decision.

Result

3
systems kept in sync automatically
12 h
of weekly copying eliminated
<30 s
propagation time between systems

Office staff moved from maintaining data to serving customers. Reporting finally reflects reality because there is only one version of it.

Technical details
Architecture
Hub-and-spoke sync service with per-entity ownership rules, change-data capture, retry with exponential backoff, and a dead-letter queue surfaced in an operator dashboard.
Technologies
TypeScript · Node.js · PostgreSQL · Redis
Integrations & APIs
CRM REST API · ERP SOAP endpoints · Mobile app webhooks
AI / decision logic
Deterministic matching and conflict rules — no model in the critical path, by design.
Deployment
Containerised workers with health monitoring and alerting on sync lag.

Does this sound like your business?

Tell me which process costs your team the most time and I will tell you honestly whether it can be removed.

Let's Analyze Your Workflow