The Comtau journal of CRM integration engineering

HandshakeHow CRMs exchange data with the systems around them, and how to make that exchange correct, observable and recoverable.

A technical journal for engineering leaders, integration engineers and CRM administrators. Articles cover CRM APIs, synchronization, data models, migration and integration architecture, with the failure modes left in. Examples use fictional systems and data.

§01 · Topics

Three ports into CRM integration

Topics follow the informational searches in the CRM & Integrations research, not a vendor list. Each opens a page with every article in it.

  • P1 · 02 articles

    Integration architecture

    System-of-record decisions, CRM and ERP boundaries, platforms versus custom code

    • Which system should own each customer field?
    • Where does the CRM stop and the ERP start?
  • P2 · 02 articles

    CRM APIs & sync

    Working with CRM APIs: auth, pagination, rate limits, events and incremental sync

    • How do you authenticate a server-to-server CRM integration?
    • How do you sync only what changed, without missing records?
  • P3 · 02 articles

    CRM data & migration

    CRM data models, identity matching, deduplication and moving data between CRMs

    • What is actually inside a CRM database?
    • How do you match and deduplicate customer records?

§02 · Integration architecture

Decide where each record lives before you move it

System-of-record decisions, the CRM and ERP boundary, events versus schedules, and what it takes to run an integration you can trust.

The CRM owns accounts, contacts, deals and consent. Deal won events flow to the ERP, which owns orders and invoices and returns order status hourly. Support reads account data and writes closed cases back as events. Marketing automation receives contacts and consent nightly. Rejected writes go to a review queue.System of recordCRMaccounts · contactsdeals · consentFinanceERPorders · invoicesServiceSupportcases · SLAsCampaignsMarketing automationFailure pathReview queuedeal.wonhourly · statusaccount.readcase.closednightlyrejected
Fig. AA hypothetical topology: one owner per record, a trigger or schedule per connection, and a visible failure path.
  • Event-driven
  • Scheduled
  • Failure path
  1. 01

    Comparison

    ERP vs CRM: What Each System Owns and How to Connect Them

    ERP vs CRM explained by what each system owns: customers, deals, orders, invoices and stock. Where they overlap, who owns which field, and how to sync them.

    The short answer / What a CRM is built to do / What an ERP is built to do / Where the two overlap

  2. 02

    Decision framework

    Integration Platforms vs Custom Integration: How to Choose for CRM Data Flows

    A decision framework for CRM integrations: when native connectors, integration platforms (iPaaS) or custom code fit, judged on volume, logic and failures.

    What counts as an integration platform / Three ways to connect a CRM / The criteria that decide / Mixed architectures are normal

  3. 03

    Architecture deep dive

    Salesforce Integration Patterns: APIs, Events and Architecture Decisions

    Salesforce integration explained by pattern: request and reply, fire and forget, batch sync, remote call-in and change events, with the right API for each.

    The pattern catalogue comes first / Calling into Salesforce: REST, Bulk and composite requests / Getting changes out of Salesforce: events / Calling out from Salesforce

§03 · Practical integration guides

Runbooks you can follow with a real CRM API open

Step-by-step guides with the steps listed up front: what to decide, what to build, what to test and what to watch after go-live.

  1. RUNBOOK 01 · 9 steps · 12 min

    How to Build a CRM API Integration That Survives Production

    You leave with A working design for a CRM connector: auth, incremental reads, safe writes, verified webhooks, rate-aware retries, tests and run-time checks.

    1. 01Scope the integration before you open the API docs
    2. 02Authenticate as a service, not as a person
    3. 03Model the remote API behind one client
    4. 04Read incrementally with a cursor you control
    5. 05Make every write safe to retry
    6. 06Receive webhooks without trusting them
    7. 07Respect rate limits by design
    8. 08Test against contracts and a sandbox
    9. 09Operate it: logs, metrics, replay and reconciliation
  2. RUNBOOK 02 · 8 steps · 8 min

    How to Migrate CRM Data: A Step-by-Step Plan With Reconciliation

    You leave with A migration plan with a mapping spec, dedup rules, a dependency-ordered load, reconciliation checks and a cutover sequence with a rollback point.

    1. 01Inventory what you are actually moving
    2. 02Decide what not to migrate
    3. 03Write the mapping specification
    4. 04Clean and deduplicate before the load
    5. 05Load in dependency order with external IDs
    6. 06Run trial loads and reconcile
    7. 07Plan the cutover and the freeze
    8. 08Verify after go-live

All implementation guides

§04 · Comparisons and decisions

Two systems, one boundary. Several options, one choice.

Comparisons set out what each side owns; decision frameworks give the criteria, so the choice can be argued from your own volumes and risks.

§05 · Data & synchronization

Customer data, mapped to the section that handles it

Each data concern points to the part of an article that deals with it, the way a mapping spec points a source field to its target.

Data concerns and the article sections that cover them
ConcernExample fieldCovered in
Customer data ownershipaccount.owner_systemDecide ownership field by fieldin ERP vs CRM: What Each System Owns and How to Connect Them
Identity matchingcontact.external_idIdentifiers: the part integrations depend onin What Is a CRM Database? Objects, Relationships and Identifiers Explained
Duplicate handlingcontact.email_normalizedClean and deduplicate before the loadin How to Migrate CRM Data: A Step-by-Step Plan With Reconciliation
Field mappingdeal.stage_mapWrite the mapping specificationin How to Migrate CRM Data: A Step-by-Step Plan With Reconciliation
Incremental synchronizationsync.cursorRead incrementally with a cursor you controlin How to Build a CRM API Integration That Survives Production
Conflict resolutionfield.conflict_ruleSynchronization patterns between CRM and ERPin ERP vs CRM: What Each System Owns and How to Connect Them
Synchronization failuressync.dead_letterMake every write safe to retryin How to Build a CRM API Integration That Survives Production

§06 · Reading paths

Curated pipelines, read in order

Each path is a sequence where every article hands over to the next. Paths appear only when all of their articles are published.

Designing reliable CRM integrations

Decide which system owns what, choose how the integration is built, then build a connector that survives failures.

3 articles · 27 min

  1. Draw the boundaryERP vs CRM: What Each System Owns and How to Connect Them
  2. Choose the approachIntegration Platforms vs Custom Integration: How to Choose for CRM Data Flows
  3. Build the connectorHow to Build a CRM API Integration That Survives Production

From CRM API to production integration

Learn the mechanics on a neutral CRM API, see how one large platform shapes them, then decide what to run yourself.

3 articles · 27 min

  1. Learn the mechanicsHow to Build a CRM API Integration That Survives Production
  2. Apply them to a platformSalesforce Integration Patterns: APIs, Events and Architecture Decisions
  3. Decide what to operateIntegration Platforms vs Custom Integration: How to Choose for CRM Data Flows

Planning a CRM data migration

Understand the data model you are moving, plan and reconcile the migration, then keep the systems in step after cutover.

3 articles · 26 min

  1. Know the modelWhat Is a CRM Database? Objects, Relationships and Identifiers Explained
  2. Move the dataHow to Migrate CRM Data: A Step-by-Step Plan With Reconciliation
  3. Keep it in syncHow to Build a CRM API Integration That Survives Production

§07 · Latest

Latest articles

Subscribe with RSS to get new articles as they are published.

§08 · Explore all topics

Topic index

Every topic, the route it lives at and every article it contains.

/crm/blog/topics/integration-architecture/Integration architectureSystem-of-record decisions, CRM and ERP boundaries, platforms versus custom code
/crm/blog/topics/crm-apis-and-sync/CRM APIs & syncWorking with CRM APIs: auth, pagination, rate limits, events and incremental sync
/crm/blog/topics/crm-data-and-migration/CRM data & migrationCRM data models, identity matching, deduplication and moving data between CRMs

§09 · From reading to a project

Where these articles meet Comtau’s CRM work

Articles stand on their own. When a team needs the work done, these are the services they relate to.

  • CRM integration servicesComtau connects CRMs with ERP, billing, support and marketing systems, starting from field ownership, sync modes and conflict rules.Supported by 5 articles
  • API integration servicesComtau builds custom API connectors that handle authentication, rate limits, idempotent retries, contract tests and monitoring.Supported by 3 articles
  • Systems integrationComtau integrates business applications into end-to-end processes, with a data ownership map and observable workflows.Supported by 2 articles
  • CRM migration servicesComtau runs CRM migrations from a written mapping spec, with deduplication, trial loads, reconciliation reports and a cutover plan.Supported by 2 articles
  • CRM implementation & consultingComtau plans and configures CRM rollouts: discovery, data model, configuration, data import, training and go-live.Supported by 1 article