Chapter 5: The Sequential Ingestion Pipeline

Once the structural blueprint is verified in the sandbox and the 30-day testing buffer is complete, it is time to execute the final, live cutover.

However, a major misconception is that data can be exported from the old system in one massive file and dumped into the new CRM all at once. In a relational database, data is not flat — it is interconnected. A contact belongs to a company, a deal belongs to a contact, and a historical email belongs to a deal. If you import these records out of order, the relational scaffolding collapses, resulting in orphaned contacts and fragmented sales histories.

The Import Methods

Before executing the sequence, the Data Architect must choose how the data will move:

Regardless of the method, the data must enter the new system in the following sequential order.

Phase Walkthrough

Select each phase below to see detailed guidance for that import step.

${phases.map((p, i) => {
  const status = i < phaseIndex ? 'completed' : i === phaseIndex ? 'active' : 'pending';
  const color = status === 'completed' ? '#C1FF72' : status === 'active' ? '#2CE7EA' : 'rgba(255,255,255,0.2)';
  const bg = status === 'completed' ? 'rgba(193,255,114,0.1)' : status === 'active' ? 'rgba(44,231,234,0.1)' : 'transparent';
  return html`<div style="display:flex;align-items:center;gap:10px;padding:8px 12px;background:${bg};border-radius:6px;border-left:2px solid ${color};">
    <div style="width:24px;height:24px;border-radius:50%;background:${color};display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700;color:#000;flex-shrink:0;">
      ${status === 'completed' ? html`<span style="color:#fff;">✓</span>` : i + 1}
    </div>
    <div style="color:${status === 'pending' ? 'rgba(255,255,255,0.4)' : 'rgba(255,255,255,0.8)'};font-size:0.9rem;font-weight:${status === 'active' ? '600' : '400'};">${p}</div>
  </div>`;
})}
The Golden Rule of Cutover
Import active sales contacts LAST.
Active contacts represent live, breathing revenue cycles currently underway. Only move these records after the entire QA and testing phases are completely finalized. This guarantees you avoid disrupting the active sales cycle during the transition window.