Data
Importing leads and customers
How to map fields, run a test import and resolve the problems that most often cause rows to be rejected or land in the wrong place.
Import brings existing leads and customers into MyERPZ from a CSV file. This page covers field mapping, the test-batch workflow, and what to do when rows do not arrive as expected.
Clean your data before you start — preparing your data for migration covers deduplication and normalisation, which are far easier before import than after.
Prepare the file
- Save as CSV, UTF-8 encoded. Other encodings mangle accented characters and currency symbols.
- One header row, with names that describe the content.
- One record per row. If a person appears three times, that is three rows to merge first.
- Dates in a single consistent format.
YYYY-MM-DDis unambiguous and sorts correctly.
Map the fields
You match each column in your file to a field in MyERPZ. A few mappings need thought rather than the obvious choice:
Owner must match an existing user. Rows assigned to somebody who is not in your organization will either be rejected or land unassigned — and unassigned records are records nobody actions. Create your users before importing.
Stage must match one of your configured pipeline stages exactly, including capitalisation. Map every legacy value to exactly one current stage before you start.
Company is a separate entity, not a text field on the contact. If your spreadsheet is one row per person with the company name repeated, split it into companies and contacts first.
Phone is stored as entered. Normalise the format beforehand if you intend to search or deduplicate on it later.
Columns you leave unmapped are ignored. Nothing is silently invented.
Run a test batch first
Import about twenty rows before the full file.
Then actually open them. Check that:
- Names are in name fields, not shifted by a column
- Dates parsed as dates rather than as text
- Owner assignment worked
- Nothing arrived truncated
- Company records were created and linked, not duplicated
Fix the mapping, delete the twenty, import again. Fifteen minutes here saves a full re-import after your team has already started adding notes to broken records.
When rows are rejected
Rejections are reported with a row number and a reason. The usual causes:
| Reason | Fix |
|---|---|
| Required field empty | Fill it in the source file, or map a different column |
| Invalid email format | Correct it, or clear the cell — a malformed address is worse than none |
| Owner not found | Create the user first, or map to someone who exists |
| Stage not recognised | Map it to one of your configured stages |
| Duplicate detected | Decide whether to merge or skip |
Always reconcile the counts. If you imported 1,200 rows and 1,187 arrived, find the 13. A silently short import is the kind of problem discovered months later when someone asks why a customer is missing.
After importing
- Spot-check twenty random records against the source file.
- Confirm each owner sees what they should — and only what they should.
- Keep the source file read-only for a month, then delete it. Running the spreadsheet in parallel guarantees the spreadsheet wins.