// Case study
NetSuite ↔ Salesforce bidirectional sync without duplicate orders
Order, invoice, and customer objects mapped across conflicting IDs, idempotent middleware and reconciliation dashboards.
- A manufacturing distributor, NetSuite ERP, Salesforce Sales Cloud, suffered duplicate opportunities when inside sales created quotes while ERP generated orders from EDI. Finance spent 12+ hours weekly reconciling mismatches.
- Simplileap built Node middleware on AWS with event-driven sync: Salesforce Platform Events and NetSuite RESTlets; canonical customer ID in PostgreSQL mapping table; dead-letter queue for failed rows.
- Problems: NetSuite sandbox refresh wiped external IDs, export/import tooling for mapping table; Salesforce validation rules blocked API updates on closed opportunities, adjusted integration user permissions with change control; timezone boundaries on invoice dates caused one-day offsets, normalized to UTC with display locale.
