Skip to content

CSV Import

Eryxon MES includes a CSV import wizard for batch data import from spreadsheets or ERP exports.

  1. Navigate to Admin → Data Import
  2. Or directly visit /admin/data-import

Choose the type of data you want to import:

EntityDescription
JobsSales orders and manufacturing jobs
PartsParts, components, and assemblies
OperationsManufacturing operations and routing steps
CellsManufacturing cells and work centers
ResourcesTools, fixtures, molds, and equipment
  • Drag and drop your CSV file or click to browse
  • Download a template if you need the correct column format
  • File must be in CSV format (comma-separated values)

Match your CSV columns to Eryxon fields:

  • Required fields are marked with an asterisk (*)
  • Columns can be mapped to ”— Ignore —” to skip them
  • Auto-mapping attempts to match columns by name

Review validation results before importing:

  • Valid Records - Ready to import
  • Invalid Records - Have errors that need fixing

Common validation errors:

  • Missing required fields
  • Invalid date formats (use YYYY-MM-DD)
  • Reference not found (e.g., job_external_id doesn’t exist)

Click “Start Import” to process your data.

  • Records are processed in batches of 100
  • Progress is shown in real-time
  • Each record shows created/updated/error status

See a summary of your import:

  • Total records processed
  • Created count
  • Updated count
  • Error count with details
FieldRequiredDescription
job_numberYesUnique job identifier
customerNoCustomer name
due_dateNoDue date (YYYY-MM-DD)
priorityNoPriority (0-10)
notesNoAdditional notes
external_idNoERP identifier for sync
external_sourceNoSource system name
FieldRequiredDescription
part_numberYesPart number
job_external_idYesExternal ID of parent job
materialNoMaterial type
quantityNoQuantity to produce
notesNoAdditional notes
external_idNoERP identifier for sync
external_sourceNoSource system name
FieldRequiredDescription
operation_nameYesOperation name
part_external_idYesExternal ID of parent part
cell_nameYesName of the cell/work center
sequenceNoOrder in routing
estimated_time_minutesNoEstimated time
notesNoInstructions or notes
external_idNoERP identifier for sync
external_sourceNoSource system name
FieldRequiredDescription
nameYesCell/work center name
colorNoHex color (e.g., #3b82f6)
sequenceNoDisplay order
activeNotrue/false
external_idNoERP identifier for sync
external_sourceNoSource system name
FieldRequiredDescription
nameYesResource name
typeYestooling, fixture, mold, material, equipment
descriptionNoDescription
identifierNoAsset tag or identifier
locationNoPhysical location
statusNoavailable, in_use, maintenance
external_idNoERP identifier for sync
external_sourceNoSource system name
job_number,customer,due_date,priority,notes,external_id,external_source
JOB-2024-001,Acme Corp,2024-12-31,5,Rush order,SO-12345,SAP
JOB-2024-002,TechCo,2025-01-15,3,,SO-12346,SAP
part_number,job_external_id,material,quantity,notes,external_id,external_source
BRACKET-A,SO-12345,Steel 304,25,,SO-12345-10,SAP
PLATE-B,SO-12345,Aluminum 6061,50,,SO-12345-20,SAP
operation_name,part_external_id,cell_name,sequence,estimated_time_minutes,notes,external_id,external_source
Laser Cut,SO-12345-10,Cutting,1,30,Use 1000W laser,SO-12345-10-010,SAP
Bend 90°,SO-12345-10,Bending,2,15,,SO-12345-10-020,SAP

For a complete data migration, import in this order:

  1. Cells - Must exist before operations reference them
  2. Resources - No dependencies
  3. Jobs - No dependencies
  4. Parts - Requires jobs to exist (via job_external_id)
  5. Operations - Requires parts and cells to exist

When external_id is provided:

  • New record: If external_id doesn’t exist, creates new record
  • Existing record: If external_id exists, updates the record

This allows re-running imports without creating duplicates.

The parent record doesn’t exist yet. Check:

  • For Parts: job_external_id must match an existing job’s external_id
  • For Operations: part_external_id and cell_name must exist

Use ISO date format: YYYY-MM-DD (e.g., 2024-12-31)

Ensure all required fields have values. Empty cells for required fields will fail validation.