- Home
- Blog
- EDGEBIC How-To
- How to Import Customers from Excel in EDGEBIC
Importing customers from Excel into EDGEBIC by User Solutions means building a Customer import mask once, mapping the name column, and clicking Do It: the run reports every row as Created, Updated, Reused, or Failed. Customers are matched by name, so a spreadsheet of contacts loads in two clicks after the mask exists, and re-running never creates duplicates. Here is the whole task.
For the mechanics that apply to every import, see how to import products from Excel, and once the mask is built, how to re-run a saved import mask. Every task in this library is mapped on the EDGEBIC how-to hub.
Before You Start
- Your file is
.xlsx,.csv,.txt, or.tsv. These are the formats the import readers understand. - One column holds each customer's name. Name is the natural key, so a blank name cell fails the row.
- You can reach the Settings tab. Import lives inside Settings, which is permission-controlled, so ask your administrator if you cannot see it.
Step 1: Open Import and Pick the Customer Entity
Open the Settings tab and click the Import tab. On the Import Data page, select Customer in the Entity Type list on the left.
The list offers eight entity types. Customer is the one for your contact and account master data, distinct from SalesOrder, which is where the jobs those customers order come in.
Step 2: Define the Mask
Click Define New. In the mask window, enter a Name for the mask, such as Customer Master Load, then click Get File and pick your spreadsheet. For an Excel file, choose the worksheet in the Sheet box. EDGEBIC reads the headings and lists them under File Header Titles.
Step 3: Map the Name Column, Then the Rest
Drag the customer-name heading from File Header Titles onto the Source Header cell of the Name row in the field-mapping grid. Name is ticked in the Req column because it is mandatory, and the mask will not run until it is mapped.
Map the optional columns you have: contact person, address lines, tax fields, and credit fields all map the same way, by dragging a heading onto the matching row. Leave a target field unmapped and it simply stays empty on import.
| Field | Required | Notes |
|---|---|---|
| Name | Yes | The natural key; matching is not case-sensitive |
| Contact / address fields | No | Map if your file carries them |
| Tax / credit fields | No | Map only what you maintain |
Click Save. The mask now appears under Saved Masks.
Step 4: Run It and Read the Counts
Select the mask and click Do It. If the remembered file path is stale, a file picker opens so you can point at this week's file. When the run finishes, the Import Result dialog shows a summary line: Created ... Updated ... Reused ... Failed ..., with one grid row per file row carrying Row, Status, Key, Message, and Id.
A bad row does not stop the run by default. It is marked Failed and the import continues, so one typo never blocks 299 good rows.
Step 5: Decide Whether to Update Existing Records
By default, a customer that already exists is counted Reused and left exactly as it is. That is the safe mode for a first load.
When the run's purpose is to refresh details, such as new phone numbers or credit limits, select the mask, click Options, and tick UpdateExistingRecords. On an update, blank cells in your file preserve the existing value rather than wiping it, so map only the columns you actually intend to change.
What Changes When You Import
New and updated customers appear immediately in the customer grid and in every customer dropdown, including the one on new sales orders and quotes. Nothing is scheduled, because imports change data, not the plan. One log file is written per run and kept until you delete it, reachable from the result dialog's Open Log File button.
How to Check It Worked
Open the customer list and confirm the new names are present with the fields you mapped. Cross-check the result counts against your expectation: if you loaded 300 rows and the summary reads Created 300, every one landed. If it reads Created 280 Failed 20, open the log to see the twenty reasons, almost always blank name cells. Re-running a corrected file is safe: fixed rows import, and the rest come back Reused.
Common Mistakes
- A blank name cell. Name is the key. A blank fails the row with a clear "is required" message.
- Expecting updates without turning them on. With Update Existing Records off, every match is Reused. Tick it in the mask options when you mean to change values.
- Mapping a full column of blanks on an update. Blank cells preserve, but a column of zeros writes zeros. Map only what you intend to change.
- Waiting to see imported customers on the Gantt. Customers are master data. They never appear on a schedule; their jobs do, after you schedule them.
Next Steps
- Bring in the orders those customers placed with how to import sales orders from Excel.
- Tune each mask's behavior with how to set import options for a mask.
- See how customer demand drives the plan on the EDGEBIC product page.
Expert Q&A: Deep Dive
Q: We are switching a legacy system over and have 300 customers in a spreadsheet. What is the fastest safe path?
A: Build one Customer mask, map the name column plus whatever contact and address columns you have, and dry-run it on ten rows first. Ten rows prove the mapping without risk. When the counts look right, run the full 300. Leave Update Existing Records off for the first load so nothing existing is touched, and check the log after the run if any rows failed, since the result dialog shows counts while the log names the exact row and reason. Nothing you import schedules anything, so this is purely a master-data load.
Q: Half my customer rows came back Failed. How do I find out why without guessing?
A: Click Open Log File on the result dialog. The dialog gives you the headline counts, but the per-run log records every row's outcome and, for failures, the exact reason, usually a blank name cell where the natural key is required. Fix the blank cells in the source file and re-run the same mask. Already-imported customers simply come back Reused or Updated, so re-running a corrected file is safe and never doubles anyone up.
Frequently Asked Questions
Ready to Transform Your Production Scheduling?
User Solutions has been helping manufacturers optimize their production schedules for over 35 years. One-time license, 5-day implementation.

User Solutions Team
Manufacturing Software Experts
User Solutions has been developing production planning and scheduling software for manufacturers since 1991. Our team combines 35+ years of manufacturing software expertise with deep industry knowledge to help factories optimize their operations.
Share this article
Related Articles
How to Create a Watched-File Integration in EDGEBIC
Create a watched-file integration in EDGEBIC: point it at the file your ERP drops, pick the target entity and import mask, set the debounce, and let a new file trigger the run.
How to Rehearse an Integration With the EDGEBIC Simulator
Use the built-in Simulator to provision demo data, watch real integration runs happen, and prove the mechanism before you point anything at a live ERP. Includes the tear-down rule.
How to Run an Integration Now and Pause All Schedules in EDGEBIC
Force one integration to run with Run Now, cancel a run in progress, disable a single definition, or tick Pause all schedules to stop every automatic sync for the session.
