Import an item list from a spreadsheet (CSV)

Turn the item list you already keep in a spreadsheet into document rows, with item codes and prices intact.

If you keep your products, parts or services in a spreadsheet, you do not have to type them into each estimate, invoice, purchase order or packing slip. Save the sheet as a CSV file and import it into the rows. This guide shows how to prepare the file so that nothing gets lost on the way.

1. Set up the columns

Use one row per item and one header row on top. These five columns cover most lists:

Item code Description Qty Unit Unit price
00412 Hinge, 3.5 in, satin nickel 120 pcs 1.85
00987 Wood screws #8 × 1-1/4 in, box of 100 30 box 6.40
01250 Cabinet pull, 96 mm, black 10 pcs 4.79

The column names do not have to match these words, and the order does not matter: you choose which column is which during the import. Extra columns, such as a supplier name or a stock count, can stay in the file; you simply do not map them.

Keep each cell to one value. Put the unit in its own column rather than writing “120 pcs” in the quantity, and leave currency symbols out of the price (“1.85”, not “$1.85”), so the numbers can be read.

2. Keep item codes as text

Spreadsheets often turn 00412 into 412 because they treat it as a number. Before you type or paste codes, select the item code column and set its format to Text. If the zeros are already gone, saving the CSV will not bring them back; fix the codes in the sheet first. The import itself never changes a code: what is in the file is what you get, zeros included.

3. Save the sheet as CSV

  • Excel: File → Save As, and choose CSV UTF-8 (Comma delimited) as the file type.
  • Google Sheets: File → Download → Comma-separated values (.csv). This saves the current tab only.
  • LibreOffice Calc: File → Save As, choose Text CSV (.csv), tick Edit filter settings, and pick Unicode (UTF-8) as the character set.

UTF-8 keeps characters such as é, ñ, ü, ×, ² and ½ intact. A CSV file holds one sheet, no formatting and the values as displayed, so check that prices are not shown rounded (for example 0.115 displayed as 0.12) before you save.

4. Commas, semicolons and decimal commas

A CSV file separates cells with a delimiter. Where the decimal mark is a point (12.50), it is usually a comma. Where the decimal mark is a comma (12,50), spreadsheets often use a semicolon instead, so that the decimal comma is not mistaken for a new cell. Both kinds of file can be imported.

What matters is that the preview reads them correctly. Before you confirm the import, look at a price with cents:

  • 12,50 in the file should show as 12.50, not 1250 and not as an error.
  • A price with a thousands separator, as in 1.250,00 or 1,250.00, should be read as one thousand two hundred fifty, not as 1.25.

If the columns run together into one, or prices look wrong, the delimiter or the decimal mark was read wrongly; change it in the import and check the preview again.

5. Map the columns and import

Choose Add lines from a spreadsheet (CSV) in the document editor and pick your file (or paste rows copied from a spreadsheet and choose Read pasted rows). Each column of your file gets a menu: choose what it holds (item code, description, quantity, unit, unit price…) or Ignore. Common headings are recognized and preselected. The preview shows the first rows as they will be imported; then choose Add to lines or Replace all lines. The amounts are calculated as if you had typed them.

On a packing slip, map your quantity column to Ordered; on the other documents it becomes Qty. Prices are not used on packing slips.

6. Timesheet entries, expense lines and stock count lines

The same import fills the lines of a timesheet, an expense report and an inventory count sheet. On a timesheet the button is Add entries from a spreadsheet (CSV) and the dialog counts entries; on the other two it is Add lines from a spreadsheet (CSV) and counts lines. One row of the file becomes one entry or line, and each column can fill one of these fields:

Document Fields a column can fill
Timesheet Date, Start, End, End date, Break (min), Tag, Client, Billable, Rate, Notes
Expense report Date, Category, Merchant, Description, Currency, Amount, Tax, Payment method, Reimbursable, Receipt ref.
Inventory count sheet Item code, Description, Location, Unit, Expected, Counted, Unit cost, Min, Target
  • Dates and times. Write dates as 2026-09-14 and times in 24-hour form, such as 09:00 or 17:30; the break is in minutes. Fill End date only for a shift that ends the next day.
  • Yes / no columns (Billable, Reimbursable) read yes or no, 1 or 0, true or false; an empty cell is no. Without a Billable column, every entry is billable.
  • Currency is a code such as EUR or JPY. Without a Currency column, expense lines take the report’s currency. Amounts are imported as they are, never converted.
  • Hours, amounts and count differences are calculated, as when you type the lines; they are not imported.

7. Check what was imported

  • Invalid numbers. A quantity or price that is not a plain number, such as “about 5”, “n/a” or “1.85 USD”, is kept as written in its field, marked as invalid and counted as 0 in the totals until you correct it. Check before you send lists every invalid field.
  • Text that starts with =, +, - or @. A description such as “=SUM(A1:A3)”, “+1 555 0100” or “-10 mm spacer” is imported as plain text and shown exactly as written. Nothing in the file is ever run as a formula.
  • Empty rows at the end of a sheet are common; delete any blank rows that came in.

Privacy

The file is read in your browser. Its contents and its name are not uploaded, logged or sent to any server. If you tick Keep my documents on this device, the imported rows are stored with the document like anything you typed.

Reuse the same list

One item list can feed every document: import it into a purchase order to buy, into a packing slip to ship and into an estimate or invoice to sell. Keep the master list in your spreadsheet, update prices there, and save a fresh CSV when they change.

Frequently asked questions

Why did my item codes lose their leading zeros?
The spreadsheet read them as numbers before you saved the file. Format the item code column as text, retype or restore the codes, and save the CSV again. The import itself keeps codes exactly as they are in the file.
My file uses semicolons and decimal commas. Will it work?
Yes. Semicolon-separated files and prices such as 12,50 are common where the comma is the decimal mark. Check the preview: a price of 12,50 must show as 12.50 before you import.
What happens to a cell like =SUM(A1:A3)?
It is imported as plain text and shown exactly as written. Nothing in the file is ever run as a formula.

Last reviewed:

Related pages