# Data Migration Guide

## Supported inputs

- COLORJET JSON backup
- Item ledger CSV
- Future XLSX/CSV import via upload module

## Preview first

```bash
cd backend
npm run import:colorjet -- --file ../data/migration-input/colorjet-service-pro-backup-2026-07-02.json --preview
npm run import:ledger -- --file ../data/migration-input/colorjet-item-ledger-2026-07-02.csv --preview
```

## Import

```bash
npm run import:colorjet -- --file ../data/migration-input/colorjet-service-pro-backup-2026-07-02.json
npm run import:ledger -- --file ../data/migration-input/colorjet-item-ledger-2026-07-02.csv
```

## Duplicate logic

- Customer: legacy ID, phone, normalized company/name.
- Product: legacy ID and SKU.
- Invoice: legacy ID/invoice number.
- Ticket: legacy ID/ticket number.
- Machine: legacy ID/serial number.
- LC/TT: legacy ID, LC number, payment reference.

## Rollback policy

The API marks rollback review status. It does not silently delete production records. Correction must be performed from import audit and management approval.
