CRM Integration Guide

How to Connect Your CRM and ERP

To connect a CRM and an ERP, decide which system owns each record, match accounts and items with shared external IDs, choose real time or scheduled sync for each flow, and build an error queue so failed records are fixed instead of lost. Tepia connects Salesforce, HubSpot and Dynamics 365 to ERPs such as NetSuite, Acumatica and QuickBooks through Node.js or .NET middleware with logging and retry.

The essentials at a glance

A CRM to ERP connection works when every record has exactly one owner and every failure has somewhere to go.

dream-app

One Owner Each

Tepia assigns every shared record, from customer accounts to item lists, a single system of record before any API work begins.

Read: ERP Integration Services
connect-audience

Errors Visible

Failed syncs land in a queue with the reason and payload, and Tepia gives operations a screen to fix and replay them in minutes.

Read: Middleware and Integration Layer Development
smart-product

Shared External IDs

Each account, contact and item carries the other system's ID, so updates match the right record instead of creating duplicates.

Read: CRM Integration and Automation Services
optimize-ecommerce

Sales Sees Orders

Reps see open orders, shipments and credit holds from the ERP inside the CRM, without asking finance or opening another system.

The numbers matter.

Figures Tepia plans around when connecting CRM and ERP systems.

28%

Time Spent Selling

Salesforce's State of Sales research found reps spend only about 28 percent of their week selling, with much of the rest on admin.

39%

IT Time On Integrations

MuleSoft's 2025 Connectivity Benchmark found IT teams spend 39 percent of their time building custom integrations between business systems.

4.5

Average App Rating

Tepia clients report apps averaging 4.5 stars, including sales and field apps that read live ERP data through an integration.

What a CRM and ERP integration actually moves

Sales lives in the CRM, while fulfillment, inventory and accounting live in the ERP. Without a connection, reps call the warehouse to ask whether an order shipped, finance rekeys new customers from a sales email, and nobody is sure which address is current. Tepia starts every CRM and ERP project by listing the specific moments where people copy data between the two.

The usual flows look similar from company to company, though the details never are:

  • A won opportunity in the CRM becomes a sales order in the ERP, with line items, terms and a ship to address.
  • A new account created in the CRM is checked for credit and set up as a customer in the ERP.
  • The item master, stock levels and lead times flow from the ERP into the CRM product catalog.
  • Order status, shipments, open balances and credit holds flow back to the CRM account.
  • Returns and service cases link to the original order on both sides.

Manufacturers and distributors add contract terms, customer specific item lists and rebate programs. Tepia maps each flow with the people who touch it before choosing any tools.

Step by step: connecting your CRM and ERP

  1. List the flows. Write each one as a sentence with a trigger, a direction and an owner, for example: when an opportunity is marked won, create a sales order in NetSuite.
  2. Assign record ownership. Name the system of record for each shared entity. The ERP usually owns items, inventory, terms and financial status, the CRM owns leads, contacts and pipeline, and accounts are split field by field.
  3. Match existing records. Clean duplicates and link accounts and items across systems with external IDs before the first sync, or the integration will create thousands of copies on day one.
  4. Choose a pattern per flow. Use real time API calls or webhooks for orders and credit holds, scheduled batches for large catalogs, and change data capture where the ERP supports it.
  5. Build the middleware. A small service between the systems handles authentication, field mapping, retries, rate limits and logging, so neither system calls the other directly.
  6. Design error handling. Every failure goes to a queue with its payload and reason, alerts the right person and can be replayed after the fix.
  7. Test real scenarios. Cover partial shipments, split orders, credit memos, merged accounts and a record edited in both systems at the same moment.
  8. Roll out in stages. Start read only so reps see ERP data in the CRM, then turn on write flows once the mappings are proven.

Tepia often ships the read only stage in the first release, because it gives sales value before the riskier write flows go live.

Choosing a sync pattern for each flow

No single pattern fits every flow; each one gets the approach that matches its volume and urgency. Tepia uses this guide as a starting point.

Flow Recommended pattern Why
Won deal to sales order Real time on event, with an idempotency key Prevents duplicate orders if the event fires twice
New account to ERP customer Real time with an approval step Credit and tax setup often need a person
Item master and stock levels Scheduled batch plus change events High volume, and a few minutes of delay is acceptable
Order status and shipments Webhook or frequent polling Reps need it during customer calls
Open balances and credit holds Scheduled every few minutes Changes during ERP posting runs
Contact updates Bidirectional with field level ownership Each field still has exactly one owner

Whole record bidirectional sync is the pattern Tepia avoids most. Two systems writing the same field always ends in a loop or a silent overwrite, so ownership is split field by field instead.

Middleware, connectors and the tools in between

Prebuilt connectors, Zapier or Make are fine for simple, low volume flows such as copying a new HubSpot company into QuickBooks, and Tepia recommends them when they cover the flow without workarounds. They struggle with multi line orders, custom objects, partial failures and the volume of a nightly item sync, and they rarely give operations a clear view of what failed.

For those flows Tepia builds a dedicated integration layer in Node.js or .NET on AWS or Azure. It keeps field mappings in code under version control, uses a queue so a slow ERP never blocks the CRM, logs every message with a correlation ID, and includes a small admin screen for replays. See middleware and integration layer development and our NetSuite integration work for more detail.

Systems Tepia commonly connects include:

  • Salesforce, HubSpot and Microsoft Dynamics 365 on the CRM side.
  • NetSuite, Acumatica, Epicor, SAP Business One, Dynamics 365 Business Central and QuickBooks on the ERP side.
  • EDI feeds, warehouse systems and ecommerce platforms that create the same orders.

How Tepia approaches CRM and ERP integration

Tepia applies its six phase process with sales, operations and finance in the room from the start.

  1. Discovery: flow mapping workshops, an API and permission review for both systems, and a data quality check on accounts and items. Deliverables are an Investigation Summary, an Interview Summary and User Stories such as a rep seeing a credit hold before promising a ship date.
  2. Design: a field mapping specification, an ownership matrix, the error handling design and wireframes of the CRM panels that display ERP data.
  3. Development and Testing: an Alpha against sandbox instances of both systems, then a Beta in production with read only flows first, with test plans covering every scenario in step 7.
  4. Training: sessions for sales on the new ERP panels and for operations on the error queue and replays.
  5. Launch: initial record matching and backfill, staged activation of write flows, and support reps on watch through the first month end close.
  6. Support: monitoring, issue resolution, mapping changes when fields are added and new flows as requests arrive.

Discovery generally runs 1 to 3 months, development and QA 2 to 6 months, and launch about a month, though a read only first release can arrive sooner. See our process and ERP integration services, or talk to Tepia about your systems.

Frequently asked questions

Which system should own customer data, the CRM or the ERP?
Usually both own part of it. Tepia assigns ownership field by field, typically leaving contacts and sales details with the CRM and billing terms, credit status and tax settings with the ERP.
Can we connect HubSpot or Salesforce to NetSuite without custom code?
For simple, low volume flows, a prebuilt connector or Zapier can work and Tepia will recommend it. Multi line orders, custom objects and high volume item syncs usually need a dedicated integration layer with error queues.
How do you stop a CRM and ERP sync from creating duplicates?
Tepia matches existing records with external IDs before the first sync and uses idempotency keys on every write. A repeated event then updates the same record instead of creating a second one.
What happens when a record fails to sync between systems?
In Tepia’s integrations, failures go to a queue with the payload and reason, alert the owner and can be replayed after a fix. Nothing is dropped silently.
How long does a CRM and ERP integration take?
Tepia generally plans 1 to 3 months of Discovery, 2 to 6 months of development and QA, and about a month for launch. A read only first release that shows ERP data inside the CRM often ships earlier.

What Our Customers Say.

A paragraph or two with information on your product/service or describes a problem your product/service is designed to solve.

Jascotina

CEO

“They customized the website’s backend to my business' specific needs and I am absolutely thrilled with the result.”

Water Saver Solutions

Senior Project Manager

"Tepia Co was always willing to go the extra mile for us."

Onward Engineering

VP & Operations Manager

"There are no hidden things, there are no surprises. We know what's going on."

Put sales and finance on the same record