IntegrationERPCustom softwareMethod
CRM ERP integration: what to sync, which tool to use, and when custom integration pays off
11 min read

Connect your CRM and ERP by starting with a handful of data flows, each with one system of record, one direction and an agreed frequency: customer accounts, products and prices, signed orders, then invoices and balances coming back. Use the native connector if it covers your needs, an integration platform if several tools exchange data under simple rules, and a custom integration when your business rules are unique or one of the systems has no usable API.
A word on this topic: the first page of Google is almost entirely owned by CRM vendors, ERP vendors and integration platforms, each with a product to sell. This guide recommends none of them. It helps you work out what you actually need to connect, and which route gets you there at the lowest total cost. For the difference between the two systems, start with ERP vs CRM.
Why connect them at all
Without integration, the same customer exists twice, typed by two people, spelled two ways. The symptoms are always the same:
- a salesperson quotes a price the ERP changed last month;
- the sales operations team retypes every signed order;
- a salesperson learns in a meeting that the customer has three overdue invoices;
- nobody can tell whether the promised delivery has shipped;
- the sales dashboard and the finance report disagree on revenue.
Each symptom maps to a specific data flow. Start from those flows, not from the technology.
Map the data flows
| Data | Usual system of record | Direction | Typical frequency |
|---|---|---|---|
| Leads and opportunities | CRM | Stays in the CRM | Not applicable |
| Customer account (once signed) | Depends on your process | Both, with rules | Real time |
| Contacts | CRM | CRM to ERP | Daily |
| Products, price lists, discounts | ERP | ERP to CRM | Daily or on change |
| Available stock | ERP | ERP to CRM | Real time or hourly |
| Quotes | CRM, or ERP for complex pricing | Depends on the business | Not applicable |
| Signed order | CRM | CRM to ERP | Real time |
| Order and shipping status | ERP | ERP to CRM | Hourly |
| Invoices, balances, credit holds | ERP | ERP to CRM | Daily |
The tricky part is the customer account. Two models are common:
- The CRM creates, the ERP receives: the account is born with the salesperson and moves to the ERP on the first order. Simple, but billing data quality then depends on sales data entry.
- The ERP approves: the CRM proposes a new account, sales operations checks it and creates it in the ERP, which sends its account number back to the CRM. Slower, but far more reliable for payment terms and credit limits.
Whichever you choose, every data item needs exactly one system of record. Two systems editing the same field will sooner or later produce a conflict nobody can resolve.
Three design rules that prevent most failures
A shared identifier, set once
Every account, contact, product and order carries the other system's ID. Matching records by name or email creates duplicates at the first typo.
Written transformation rules
The two systems do not speak the same language: a "Closed won" stage in the CRM becomes an "Order to approve" in the ERP, tax codes need mapping, a percentage discount turns into a net price. Every mapping goes into a table signed off by sales and finance before any development starts.
Error handling with an owner
An order rejected by the ERP (blocked item, customer over credit limit, incomplete address) must reach a named person with the reason, and be replayable once fixed. This is the most underestimated part of every project, and what separates a reliable integration from one that silently loses orders. Our guide on integrating a custom app with an existing ERP covers these failure cases in detail.
The three technical routes
Native connector
Many CRMs and ERPs ship a connector to the most popular systems, maintained by one of the vendors or a partner. It is the fastest route when it covers your fields, including custom fields, and your transformation rules.
Check before choosing: who maintains it, which objects it really syncs, what it does on error, and what happens at the next major release of either system.
Integration platform (iPaaS)
An integration platform (Zapier, Make, n8n, or heavier enterprise offerings) connects several tools through configured workflows. It fits when flows are numerous but simple and your team can maintain the workflows. It hits its limits when rules get complex, when volumes push the subscription up, or when logic spreads across dozens of workflows nobody reviews. Our n8n vs custom code comparison goes into those limits.
Custom integration
An integration service built for you, often on top of a custom API, carries your rules in tested, versioned, documented code. It is justified in four cases:
- one of the systems has no usable API (legacy ERP, database only, file exchanges);
- your business rules are specific: channel pricing, stacked discounts, multi-level approvals;
- volumes make a platform subscription more expensive than building and maintaining the integration;
- the integration is business-critical: a lost order is costly and you want monitoring and tests to match.
A decision table
| Your situation | Best-fit route |
|---|---|
| Mainstream CRM and ERP, maintained connector covering your fields | Native connector |
| Several tools, simple rules, a team able to configure workflows | Integration platform |
| Legacy ERP with no API, or file-only exchanges | Custom integration |
| Pricing or approval rules specific to your business | Custom integration |
| Connector in place, but orders lost or retyped | Audit, then rebuild the critical flows |
| CRM abandoned by the sales team | Fix adoption before integrating |
The last row matters: connecting a CRM nobody fills in only spreads empty data. Our article on custom CRM development tackles that question.
E-invoicing raises the bar on customer data
Structured e-invoicing is becoming mandatory in more and more countries. France, for instance, has required every VAT-registered business to be able to receive e-invoices since September 1, 2026 (our guide to the French mandate has the details), and the EU's VAT in the Digital Age package makes structured e-invoicing and digital reporting the rule for intra-EU B2B supplies from July 2030 (European Commission).
For a CRM ERP integration, the consequence is practical: every customer must be identified unambiguously (company registration number, VAT number, billing address), and that data must be right from the moment it is created. If accounts are born in the CRM, that is where it must be captured and checked.
Personal data: what integration changes
Connecting two systems means copying personal data from one to the other: contact names, emails, phone numbers. Sync only what the other system needs (the ERP has no use for meeting notes), and make sure a deletion or opt-out recorded in the CRM is propagated to the ERP. Otherwise, an erasure request handled on one side is ignored on the other, which is a problem under the GDPR and similar laws.
What drives integration cost
Price ranges published by vendors and integrators vary wildly because they describe very different projects. Real cost depends on five factors:
- the number of flows and objects synced;
- the state of existing data: duplicates, orphan customers, missing IDs. Cleanup often costs more than the integration itself;
- how open each system is: documented API, database only, or files;
- the complexity of the transformation rules;
- the level of monitoring you need.
For running costs, compare over several years: connector or platform subscription on one side, hosting and maintenance of a custom build on the other. Our guide to legacy data migration covers the cleanup that usually comes first.
Who owns the integration once it is live
An integration sits between two teams, which is exactly why it ends up belonging to nobody. Name one owner on the business side (often sales operations) who decides on mapping changes and handles rejected records, and one technical owner who watches the logs, applies updates and retests after every CRM or ERP release. Write both names into the project documentation before go-live, not after the first incident.
Common mistakes
- Syncing everything both ways. A recipe for conflicts. One direction per data item, unless there is a justified exception.
- Connecting before cleaning. An integration spreads duplicates faster than any manual entry.
- Matching by name. Without a shared ID, every typo creates a new customer.
- Ignoring errors. An integration without alerts loses orders and nobody knows.
- Testing in production. Both systems need a test environment, or at least a copy, before go-live.
- Forgetting the next upgrade. A new ERP or CRM version can change the API: decide who retests the integration at every upgrade.
Where to start
- List today's double entry between sales and operations: which data, who retypes it, how many times a week.
- Fill in the flow table above with your own systems, and name a system of record for each data item.
- Check how open both systems are: existing connector, documented API, or files only.
- Start with a single loop: from signed order to invoice, and back.
When the integration comes with new screens (a reseller portal, a unified customer view for sales), we build a free visual prototype, presented on a video call within 5 business days: your team sees where each piece of information comes from before anything is developed.