Expenses

Full update an expense

Replace all fields on an existing expense record.

put/v1/expenses/{expenseId}

Request

  • Base URL: https://api.frihet.io
  • URL: https://api.frihet.io/v1/expenses/{expenseId}
  • Auth: API key in header X-API-Key

Path parameters

expenseIdstring required

Expense unique identifier

Request body

descriptionstring required

Expense description

amountnumber required

Expense amount

datestring date

Expense date in ISO format

paidDatestring date nullable

Effective payment date (fecha de pago, YYYY-MM-DD). Drives cash-basis period assignment for Modelos 111/115/130. When absent: under accrual (devengo) criteria the expense date is used; under the opt-in Modelo 130 cash-basis criterion (criterio de cobros y pagos) an absent paidDate means not yet paid and the expense is excluded until paid. On PATCH, an explicit null clears the field.

categorystring

Expense category

vendorstring

Vendor or supplier name

taxDeductibleboolean

Whether the expense is tax deductible

currencystring

ISO 4217 transaction currency. Defaults to EUR.

exchangeRatenumber

Exchange rate used to convert amount into functionalCurrency.

exchangeRateSourcestring

Source/provider of the exchange rate snapshot.

exchangeRateDatestring date

Exchange rate date (YYYY-MM-DD).

functionalCurrencystring

Workspace/reporting currency. Defaults to EUR.

functionalAmountnumber

Amount converted into functionalCurrency.

Example request

{
  "description": "Office supplies",
  "amount": 45.99,
  "date": "2026-03-09",
  "paidDate": "2026-03-12",
  "category": "office",
  "vendor": "Office Depot",
  "taxDeductible": true,
  "currency": "EUR",
  "functionalCurrency": "EUR",
  "recurring": {
    "enabled": true,
    "frequency": "monthly",
    "nextDate": "2026-04-01",
    "endDate": "2027-03-31",
    "maxOccurrences": 12
  }
}

Response

Expense updated

idstring

Unique identifier

createdAtstring date-time
updatedAtstring date-time
descriptionstring required

Expense description

amountnumber required

Expense amount

datestring date

Expense date in ISO format

paidDatestring date nullable

Effective payment date (fecha de pago, YYYY-MM-DD). Drives cash-basis period assignment for Modelos 111/115/130. When absent: under accrual (devengo) criteria the expense date is used; under the opt-in Modelo 130 cash-basis criterion (criterio de cobros y pagos) an absent paidDate means not yet paid and the expense is excluded until paid. On PATCH, an explicit null clears the field.

categorystring

Expense category

vendorstring

Vendor or supplier name

taxDeductibleboolean

Whether the expense is tax deductible

currencystring

ISO 4217 transaction currency. Defaults to EUR.

exchangeRatenumber

Exchange rate used to convert amount into functionalCurrency.

exchangeRateSourcestring

Source/provider of the exchange rate snapshot.

exchangeRateDatestring date

Exchange rate date (YYYY-MM-DD).

functionalCurrencystring

Workspace/reporting currency. Defaults to EUR.

functionalAmountnumber

Amount converted into functionalCurrency.

Example response

{
  "description": "Office supplies",
  "amount": 45.99,
  "date": "2026-03-09",
  "paidDate": "2026-03-12",
  "category": "office",
  "vendor": "Office Depot",
  "taxDeductible": true,
  "currency": "EUR",
  "functionalCurrency": "EUR",
  "recurring": {
    "enabled": true,
    "frequency": "monthly",
    "nextDate": "2026-04-01",
    "endDate": "2027-03-31",
    "maxOccurrences": 12
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.