v1

latestOpenAPI 3.1.02026-07-242735131.1 MB
Expenses

Create an expense for the authenticated employee

Creates a new expense record for the current employee.

Scopes

CategoryRead only ScopeWrite only Scope (read access implicit)
Manage expenses (employment_payments)-Manage expenses (expense:write)
post/v1/employee/expenses

Request body

amountinteger required

The expense amount in the specified currency, in cents.

category'car_rental' | 'coworking_office' | 'education_training' | 'entertainment' | 'flight' | 'fuel' | 'gifts' | 'insurance' | 'lodging' | 'meals' | 'other' | 'parking_toll' | 'subscription' | 'tech_equipment' | 'telecommunication' | 'transport' | 'utilities' | 'vaccination_testing' | 'visa' | 'wellness' | 'coworking' | 'home_office' | 'phone_utilities' | 'travel' nullable

Categories allowed for an expense (legacy, deprecated).<br/> Note: coworking, home_office, phone_utilities, travel are deprecated and will be removed in the future.

currencystring required

The three-letter code for the expense currency.<br/> Examples: "USD", "EUR", "CAD"

expense_category_slugstring nullable

Slug of the expense category from the hierarchical categories system (recommended). Takes precedence over legacy category field.

expense_datestring required

Date of the purchase, which must be in the past

tax_amountinteger

The tax portion of the expense amount, in cents. Use 0 if no tax applies.

timezonestring
titlestring required

A short description of the expense (e.g., "New keyboard", "Team dinner").

Example request

{
  "amount": 8000,
  "currency": "EUR",
  "expense_category_slug": "uuid-tech-equipment-slug",
  "expense_date": "2020-12-11",
  "receipt": {
    "content": "UGVyaW9kIEVuZCBEYXRlLFBheSBEYXRlLEVtcG...5jZSBPZiBSZXNpZGVuYdXJyZW50LEFsbG93",
    "name": "receipt.pdf"
  },
  "tax_amount": 0,
  "timezone": "Etc/UTC",
  "title": "new keyboard"
}

Response

Created

Example response

{
  "data": {
    "status": "ok"
  }
}