The CSV import tool in Settings → Import lets you bring inventory in from a spreadsheet — useful for migrating from a legacy system, recording a fresh shipment of 50+ items, or doing a one-time data refresh.Documentation Index
Fetch the complete documentation index at: https://docs.jingjaiops.com/llms.txt
Use this file to discover all available pages before exploring further.
When to use CSV import
Use CSV import when:- You’re starting fresh and have an existing inventory list in a spreadsheet
- You’re adding many items at once (a fresh shipment of 20+ items)
- You’re migrating from another rental system
CSV template
Get the template from Settings → Import → Download Template. The template includes one header row and example rows you can replace. Required columns:| Column | Notes |
|---|---|
name_en | English item name |
category | Must match an existing category name (Camera, Lighting, etc.) |
rate | Numeric, e.g. 1500 |
rate_type | daily, weekly, or monthly |
condition | good, fair, or damaged |
| Column | Notes |
|---|---|
name_th | Thai item name |
serial_number | Manufacturer’s serial |
manufacturer | Brand |
model | Model number |
purchase_date | YYYY-MM-DD |
purchase_price | Numeric |
ownership | owned, subrented, consignment |
storage_location | Free text |
notes | Free text |
One row per physical item
This is the most important rule of the import: one row per physical unit. If you own 5 identical Sony FX6 cameras, your CSV should have 5 rows — one for each camera. JingjaiOps will create 5 inventory items with 5 different Asset IDs (CAM-001 through CAM-005).
Don’t put quantity: 5 on a single row — JingjaiOps doesn’t support that. Each physical unit has to exist separately so it can be tracked, scanned, and condition-marked individually.
If your legacy spreadsheet has a single row per “model” with a quantity column, expand it before importing. Most spreadsheet tools have a “duplicate row N times” macro or you can use a quick Python script.
Importing from a legacy spreadsheet
If your existing spreadsheet has different column names than the JingjaiOps template, the easiest path is:Map columns
Copy each existing column into the matching JingjaiOps column. Skip ones that don’t fit — the optional fields can be empty.
Expand quantity rows
For any row with
quantity > 1, duplicate the row that many times. (In Google Sheets, the =ARRAYFORMULA and =FLATTEN functions help; or just do it by hand for small lists.)Preview before import
JingjaiOps doesn’t import blindly. After you upload the CSV, you see a Preview screen:- Total rows in the file
- Rows that would be imported successfully
- Rows with errors (missing required field, unknown category, invalid rate, etc.)
- Per-row diff of what JingjaiOps will create
- Fix the CSV and re-upload
- Skip error rows and import only the clean ones
- Cancel entirely
Matching sheet PDF
After a successful import, JingjaiOps generates a Matching Sheet PDF. This is a one-page-per-item PDF showing:- The new Asset ID (e.g.,
CAM-001) - The barcode
- The item name and any details from your CSV
Importing kits and customers
The import tool only handles inventory items. To import kits or customers in bulk, use:- Kits — currently no bulk import; build kits manually in the UI
- Customers — separate Settings → Import → Customers tool with its own template