Skip to Content
HelvetlyDocs
API referenceExpenses

Export expenses as CSV

Needs a token with the read:expenses scope (or write:expenses). Authentication

Try in Playground sends a real request to app.helvetly.com with a token you paste. It stays in this browser tab only (session storage) and goes to no one else.

GET
/api/v1/expenses/export

Streams the expenses matching the filter (same filters as list_expenses, without paging) as UTF-8 CSV with a BOM, one row per expense, file name expenses-YYYY-MM-DD.csv. Columns: number, status, document_date, supplier, supplier_vat_number, supplier_country, reference, description, account_code, category, currency, net_total, vat_total, total, exchange_rate, exchange_rate_date, exchange_rate_source, base_currency, base_net_total, base_vat_total, base_total, input_tax, deductible_vat, base_deductible_vat, payment_status, paid_on, payment_method, paid_by, reimbursed_on, receipts, booked_at, created_at. Void expenses are left out unless status asks for them.

Authorization

bearerAuth
headerAuthorizationBearer <token>

A personal API token, hvt_…, with scopes such as read:* or write:invoices

Query Parameters

ids?string

Comma-separated expense ids: export only these.

search?string

Matches supplier, description, reference, supplier VAT number and the number.

status?string

Comma-separated: draft, booked, void.

payment?string

Payment state.

Value in"unpaid""paid""overdue""to_reimburse"
incomplete?boolean

true: only drafts with missing fields.

category_id?string

Comma-separated category ids.

currency?string

Comma-separated ISO codes.

from?string

Document date on or after.

Formatdate
to?string

Document date on or before.

Formatdate
sort?string

number, document_date, supplier, total, created_at; prefix - for descending. Default -document_date.

Response Body

The CSV file.

response?filetext/csv
Formatbinary
Example Request
curl -X GET 'https://app.helvetly.com/api/v1/expenses/export'
Example Response
"string"