Data Import & Migration Hub
Version: v4.2.0
Status: Production Ready
The Data Import & Migration Hub provides a comprehensive solution for importing and migrating data from various formats (CSV, XLSX, XML, JSON) into Lager Guru, with automatic mapping, validation, deduplication, and rollback capabilities.
Overview
The Import Hub enables administrators to:
- Import large datasets from external systems (SAP, ERP, spreadsheets)
- Automatically map source columns to Lager Guru fields
- Validate data before import
- Detect and handle duplicates
- Rollback imports if needed
- Track import history and statistics
Features
Supported Formats
- CSV - Comma-separated values with header detection
- XLSX/XLS - Excel files with multi-sheet support
- XML - XML files with SAP/ERP format support
- JSON - JSON arrays or objects
Import Types
- SKU / Items - Import inventory items with SKU, name, barcode, etc.
- Stock Levels - Import current stock quantities by zone
- Zones - Import warehouse zones with coordinates
- Equipment - Import equipment records
- Drivers - Import driver information
- Safety Data - Import safety-related data
- Multi-Format - Flexible import for mixed data
Core Capabilities
1. Auto-Mapping Engine
- Automatically matches source columns to target fields
- Uses pattern matching and confidence scoring
- Supports manual override
- Handles common field name variations (e.g., "SKU_NUMBER" → "sku", "LAGERPLATZ" → "zone")
2. AI Deduplication
- Detects duplicate or similar records
- Uses fuzzy string matching
- Prioritizes barcode matches
- Shows duplicate warnings in UI
3. Validation Engine
- Validates required fields
- Checks data types (string, number, date, UUID, email)
- Validates field lengths and ranges
- Checks zone references
- Validates SKU uniqueness
- Shows validation errors per record
4. Rollback System
- Creates snapshots before import
- Allows complete rollback of imports
- Restores previous data state
- Admin-only access for safety
Database Schema
import_jobs
Tracks import job metadata and status.
Fields:
id- Unique identifiertenant_id- Tenant isolationcreated_by- User who created the jobstatus- pending, processing, completed, failed, rollbacktype- Import type (sku, stock, zones, etc.)file_name- Original file namefile_ref- Supabase Storage referencemapping- Column mapping configuration (JSONB)stats- Import statistics (JSONB)error_log- Error messages if failed
import_records
Individual records from import files.
Fields:
id- Unique identifierjob_id- Reference to import jobrow_number- Original row numberraw_data- Original row data (JSONB)normalized_data- Mapped data (JSONB)validation_errors- Array of validation errors (JSONB)status- valid, invalid, skipped, imported
import_rollback
Rollback snapshots for imported records.
Fields:
id- Unique identifierjob_id- Reference to import jobtable_name- Target table namerecord_id- Record ID in target tableprevious_data- Snapshot before import (JSONB)
Edge Functions
process-import-job
Processes import job and parses file data.
Input:
json
{
"job_id": "uuid"
}Output:
json
{
"success": true,
"job_id": "uuid",
"file_type": "csv",
"stats": {
"total_rows": 100,
"valid_rows": 95,
"invalid_rows": 5
}
}apply-import-job
Applies validated records to target tables.
Input:
json
{
"job_id": "uuid"
}Output:
json
{
"success": true,
"imported_count": 95,
"message": "Successfully imported 95 records"
}rollback-import-job
Rolls back an import job, restoring previous state.
Input:
json
{
"job_id": "uuid"
}Output:
json
{
"success": true,
"rolled_back": 95,
"message": "Rolled back 95 records"
}UI Workflow
1. Upload File
- Drag & drop or click to select file
- Choose import type
- Preview first 5 rows
- Upload to Supabase Storage
2. Field Mapping
- Auto-mapping with confidence scores
- Manual override for unmapped columns
- Visual column-to-field mapping
- Save mapping configuration
3. Validation Review
- View validation results
- See errors per record
- Duplicate detection warnings
- Proceed if valid records exist
4. Import Execution
- Execute import for valid records
- Progress tracking
- Success/failure notification
- Statistics display
5. Rollback (if needed)
- Admin-only rollback option
- Confirmation dialog
- Complete data restoration
6. History & Details
- View all import jobs
- Filter by status/type
- View job details and statistics
- Access individual record data
Integration Points
Safety Intelligence
- Imported zones with coordinates automatically link to Hazard Map
- Zone risk scores can be recalculated after import
Inventory Vision
- Imported SKUs with barcodes can be immediately scanned
- Vision recognition works instantly for new items
Inventory Module
- SKU imports create/update inventory items
- Stock imports create stock movements
- Zone imports create/update zones
Security & Permissions
- RLS Policies: All tables protected with Row-Level Security
- Tenant Isolation: Complete multi-tenant support
- Role-Based Access:
- Admin: Full access (including rollback)
- Worker: Read/write access
- Driver: No access
- Safety Officer: No access
Performance
- Batch Processing: Records processed in batches
- Streaming: Large files handled efficiently
- Low Memory: Optimized for large datasets
- Retry-Safe: Idempotent operations
Usage Examples
Import SKUs from CSV
- Upload CSV file with columns:
SKU_NUMBER,ITEM_NAME,BARCODE - Auto-mapping detects:
SKU_NUMBER→sku,ITEM_NAME→name,BARCODE→barcode - Validation checks: SKU uniqueness, required fields
- Execute import
- New items appear in inventory
Import Stock Levels from Excel
- Upload XLSX file with stock data
- Map columns:
SKU→sku,ZONE→zone,QUANTITY→quantity - Validation ensures zones exist
- Execute creates stock movements (inbound)
- Stock levels updated
Rollback Import
- Navigate to import history
- Select completed job
- Click "Rollback"
- Confirm action
- All imported data restored to previous state
Limitations
- File Size: Recommended max 10MB per file
- Row Limit: No hard limit, but performance degrades with 100k+ rows
- Real-time: Import is not real-time (batch processing)
- Concurrent Imports: One import per tenant at a time recommended
Future Enhancements
- Scheduled imports (cron-based)
- API-based imports
- Incremental imports (delta updates)
- Import templates (save mapping configurations)
- Email notifications on completion
- Export functionality (reverse import)
- Advanced transformation rules
- Multi-file batch imports