Importing costs from CSV

Bulk-add or bulk-update cost line items across your fleet via CSV.

Updated May 21, 2026

You can bulk-add or bulk-update vehicle cost line items via CSV. The flow lives in the Bulk CSV dialog on the Vehicles page; pick "Costs" on the first step.

When to use this

  • Pre-loading a vehicle's costs from a supplier invoice spreadsheet.
  • Adjusting many cost rows at once, for example updating dates after a month-end review.
  • Reconciling costs against an accountant's spreadsheet.

For one-off cost edits, the per-vehicle Costs section is usually faster.

How to access

  1. Open the Vehicles page.
  2. Click the Bulk CSV button at the top.
  3. Choose Costs.
  4. Choose Import new or Update existing.

Import new costs

Step 1, download the template

Click "Download Costs CSV template" in the dialog. The template has 10 columns; cost_id is left blank in Import mode.

Step 2, fill in the rows

ColumnRequiredNotes
cost_idNo (leave blank)Only used in Update mode.
stock_noYesMust match an existing vehicle in your organisation.
categoryYesOne of: purchase, transport, taxes_duties, parts_labour, preparation, other.
descriptionYesFree text, like "Container shipping APO-1234".
quantityYesNumber, greater than 0.
unit_amountYesPer-unit price. Total = quantity x unit_amount.
currencyNoISO code such as GBP or JPY. Blank uses your accounting currency.
conversion_rateWhen foreignRequired only when currency differs from your accounting currency.
dateNoYYYY-MM-DD. Blank uses today.
tax_treatmentNoOnly used when your tax is on and reclaimable. Blank uses the category's default.

Maximum 1000 rows per file. The tax_treatment values map to the per-line tax bands: standard_inclusive (tax included), standard_exclusive (tax added on top), import_tax (whole line reclaimable), zero (zero-rated), and none (no tax). See Tax on individual costs.

Step 3, upload, test, import

Pick the file. The dialog runs a dry-run (Test) and shows per-row results. Fix any errors in your spreadsheet and re-upload. When the test passes, click Import costs.

Update existing costs

Step 1, download current costs

Click Download costs as CSV in the dialog. Every cost in your organisation is included, with cost_id populated.

Step 2, edit your spreadsheet

Change whatever you need to update. Leave a cell blank to keep its current value. Don't change cost_id or stock_no.

You can update: category, description, quantity, unit_amount, currency, conversion_rate, date, tax_treatment. A tax_treatment value is applied only when it is filled in; leave it blank to keep the line's current treatment.

Step 3, upload in Update mode

Switch the dialog to Update existing and upload. The test shows what changed per row, including a "no changes" status for rows where nothing was edited.

What you cannot update via CSV

  • cost_id, this is the match key.
  • stock_no, moving a cost between vehicles is not supported via CSV. Delete and re-add the cost on the new vehicle instead.

Removing costs

CSV does not remove costs. Use the Costs section on the vehicle's page to remove a cost line.

See also

Was this helpful?

Related articles