Skip to content
HTKapp
Browse the documentation

CSV import and export

For reading or correcting your stock in a spreadsheet.

Options → CSV import / export.

Exporting

Export the stock produces a file with thirteen columns, one line per batch — a product stored in two places or with two dates makes two lines, its fields repeated on each:

Nom · Quantité · Catégorie · Emplacement · Péremption · Prix · Description · Code-barres · Unité · Type de date · Seuil · Après ouverture · Ouvert le

The quantity is written with a dot (1.333) and read back with a dot or a comma. The unit is its symbol — kg, g, mg, L, cL, mL, m3 — or nothing for pieces. Type de date is DDM for a best-before date, empty for a use-by date; Seuil is the product's restock threshold; Après ouverture, its keep-after-opening days; Ouvert le, the batch's opening date. All of these columns are optional on import.

An item's image is not exported: use a backup to keep it.

The separator is the semicolon, which French Excel expects, and the file carries the UTF-8 mark without which Excel mangles accents. It is placed in Files → TrackInvent → Exports, and the share button sends it directly.

Column headers stay in French: the file is an interchange format, and making it vary with the language would break re-reading a file exported from another device.

Importing

Import a CSV file adds the file's contents to the stock. Nothing is replaced: it is an addition. Lines that share the same name (or the same barcode) form one product with several batches.

The import is forgiving, because a hand-edited file rarely is:

  • the separator is detected — semicolon, comma or tab
  • headers are recognised without accents or capitals: peremption matches Péremption
  • prices accept a comma as well as a dot
  • dates accept 31/12/2026 and 31.12.2026 as well as 2026-12-31
  • only the Nom column is required; a missing quantity counts as 1

Categories and locations are matched to yours by name, ignoring case, and created if missing. An item with no location is attached to an existing one.

Rows without a name are skipped, and the app tells you which.

Before a large import

Take a backup. An import cannot be undone.

Screenshots

1 screenshot — click to enlarge