Expenses
Expenses represent expenses associated with an account.
The expense object
Properties
idstring
Unique identifier for the object.
namestring
The name of the expense.
amountnumber
The amount of the expense.
archiveboolean
True if the entity is archived.
clientobject
The client.currencyobject
The currency.dueDatedate
The due date of the expense.
expenseDatedate
The date of the expense.
externalReferencestring
The external reference of the expense.
fileembedded
The file associated with the expense.invoiceobject
The invoice linked to the expense.jobstring
The job id.
labelobject
The label of the expense.notesstring
The notes linked to the entity.
outsourcingstring
The outsourcing id.
paidboolean
True if the entity is paid.
paymentDatedate
The payment date of the expense.
pinnedboolean
True if the entity is pinned.
purchaseOrderobject
The linked purchase order.supplierobject
The supplier linked to the expense.taxesobject
The taxes.totalnumber
The total.
userobject
The user that created the expense.createdAtdate
The date and time the entity was created.
updatedAtdate
The date and time the entity was last updated.
Expense object
{
"id": "673b0abc23b8c71a21e1942a",
"name": "First job",
"amount": 90,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft"
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"dueDate": "2024-12-17T23:00:00.000Z",
"expenseDate": "2024-11-17T23:00:00.000Z",
"job": "6718a1350e27164043ce9f2f",
"label": {
"id": "6718a0fd0e27164043ce97b0",
"name": "Outsourcing",
"color": "#15803D"
},
"notes": null,
"object": "expense",
"outsourcing": "6718a1a20e27164043cea544",
"paid": false,
"pinned": false,
"purchaseOrder": {
"id": "673b0ab223b8c71a21e1914b",
"number": "003"
},
"supplier": {
"id": "6718a1a20e27164043cea4e8",
"name": "Caroline Dupont"
},
"taxes": {
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 18.9
}
},
"total": 108.9,
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"createdAt": "2024-11-18T09:37:00.109Z",
"updatedAt": "2024-11-18T09:37:00.123Z"
}
List all expenses
This endpoint allows you to retrieve all the expenses. This endpoint is paginated.
Request
curl -G https://api.lsp.expert/v2/expenses/ \
-u {key}:
Response
{
"items": [
{
"id": "673b0abc23b8c71a21e1942a",
"name": "First job",
"amount": 90,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft"
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"dueDate": "2024-12-17T23:00:00.000Z",
"expenseDate": "2024-11-17T23:00:00.000Z",
"job": "6718a1350e27164043ce9f2f",
"label": {
"id": "6718a0fd0e27164043ce97b0",
"name": "Outsourcing",
"color": "#15803D"
},
"notes": null,
"object": "expense",
"outsourcing": "6718a1a20e27164043cea544",
"paid": false,
"pinned": false,
"purchaseOrder": {
"id": "673b0ab223b8c71a21e1914b",
"number": "003"
},
"supplier": {
"id": "6718a1a20e27164043cea4e8",
"name": "Caroline Dupont"
},
"taxes": {
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 18.9
}
},
"total": 108.9,
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"createdAt": "2024-11-18T09:37:00.109Z",
"updatedAt": "2024-11-18T09:37:00.123Z"
},
// ...
],
"pageSize": 20,
"page": 1,
"totalPages": 1,
"totalItems": 2,
"hasNextPage": false,
"hasPreviousPage": false
}
Create an expense
This endpoint allows you to add a new expense.
Parameters
namestring Required
The name of the expense.
amountnumber Required
The amount of the expense.
currencystring Required
The currency code (ISO, e.g., EUR).
dueDatestring,null
The due date of the expense.
exchangeRatenumber,null
The exchange rate.
expenseDatestring Required
The date of the expense.
externalReferencestring,null
The external reference of the expense.
invoicestring
The invoice id linked to the expense.
jobstring
The job id linked to the expense.
labelstring Required
The label id linked to the expense.
notesstring,null
The notes linked to the entity.
outsourcingstring
The outsourcing id linked to the expense.
paidboolean
True if the entity is paid.
paymentDatestring,null
The payment date of the expense.
supplierstring
The supplier id linked to the expense.
tax1string,null
The first tax id linked to the expense.
tax1Amountnumber,null
The amount of the first tax.
tax2string,null
The second tax id linked to the expense.
tax2Amountnumber,null
The amount of the second tax.
Request
curl https://api.lsp.expert/v2/expenses/ \
-u {key}: \
-d amount=90 \
-d currency="EUR" \
-d expenseDate="2024-11-17T23:00:00.000Z" \
-d label="6718a0fd0e27164043ce97b0" \
-d name="First job" \
-d paid=false \
-d tax1="6718a0fd0e27164043ce97ae" \
-d tax1Amount=18.9 \
-d exchangeRate=null \
-d job="6718a1350e27164043ce9f2f" \
-d outsourcing="6718a1a20e27164043cea544"
Response
{
"id": "673b0abc23b8c71a21e1942a",
"name": "First job",
"amount": 90,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft"
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"dueDate": "2024-12-17T23:00:00.000Z",
"expenseDate": "2024-11-17T23:00:00.000Z",
"job": "6718a1350e27164043ce9f2f",
"label": {
"id": "6718a0fd0e27164043ce97b0",
"name": "Outsourcing",
"color": "#15803D"
},
"notes": null,
"object": "expense",
"outsourcing": "6718a1a20e27164043cea544",
"paid": false,
"pinned": false,
"purchaseOrder": {
"id": "673b0ab223b8c71a21e1914b",
"number": "003"
},
"supplier": {
"id": "6718a1a20e27164043cea4e8",
"name": "Caroline Dupont"
},
"taxes": {
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 18.9
}
},
"total": 108.9,
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"createdAt": "2024-11-18T09:37:00.109Z",
"updatedAt": "2024-11-18T09:37:00.123Z"
}
Retrieve an expense
This endpoint allows you to retrieve an expense by providing their id.
Request
curl https://api.lsp.expert/v2/expenses/673b0abc23b8c71a21e1942a \
-u {key}:
Response
{
"id": "673b0abc23b8c71a21e1942a",
"name": "First job",
"amount": 90,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft"
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"dueDate": "2024-12-17T23:00:00.000Z",
"expenseDate": "2024-11-17T23:00:00.000Z",
"job": "6718a1350e27164043ce9f2f",
"label": {
"id": "6718a0fd0e27164043ce97b0",
"name": "Outsourcing",
"color": "#15803D"
},
"notes": null,
"object": "expense",
"outsourcing": "6718a1a20e27164043cea544",
"paid": false,
"pinned": false,
"purchaseOrder": {
"id": "673b0ab223b8c71a21e1914b",
"number": "003"
},
"supplier": {
"id": "6718a1a20e27164043cea4e8",
"name": "Caroline Dupont"
},
"taxes": {
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 18.9
}
},
"total": 108.9,
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"createdAt": "2024-11-18T09:37:00.109Z",
"updatedAt": "2024-11-18T09:37:00.123Z"
}
Update an expense
This endpoint allows you to perform an update on an expense. Any parameters not provided will be left unchanged.
Parameters
namestring
The name of the expense.
amountnumber
The amount of the expense.
archiveboolean
True if the entity is archived.
currencystring
The currency code (ISO, e.g., EUR).
dueDatestring,null
The due date of the expense.
exchangeRatenumber,null
The exchange rate.
expenseDatestring
The date of the expense.
externalReferencestring,null
The external reference of the expense.
labelstring
The label id linked to the expense.
notesstring,null
The notes linked to the entity.
paidboolean
True if the entity is paid.
paymentDatestring,null
The payment date of the expense.
pinnedboolean
True if the entity is pinned.
tax1string,null
The first tax id linked to the expense.
tax1Amountnumber,null
The amount of the first tax.
tax2string,null
The second tax id linked to the expense.
tax2Amountnumber,null
The amount of the second tax.
Request
curl -X PUT https://api.lsp.expert/v2/expenses/673b0abc23b8c71a21e1942a \
-u {key}: \
-d paid=true
Response
{
"id": "673b0abc23b8c71a21e1942a",
"name": "First job",
"amount": 90,
"archive": false,
"client": {
"id": "6718a1350e27164043ce9e80",
"name": "Microsoft"
},
"currency": {
"code": "EUR",
"symbol": "€"
},
"dueDate": "2024-12-17T23:00:00.000Z",
"expenseDate": "2024-11-17T23:00:00.000Z",
"job": "6718a1350e27164043ce9f2f",
"label": {
"id": "6718a0fd0e27164043ce97b0",
"name": "Outsourcing",
"color": "#15803D"
},
"notes": null,
"object": "expense",
"outsourcing": "6718a1a20e27164043cea544",
"paid": true,
"paymentDate": "2024-11-18T09:44:51.432Z",
"pinned": false,
"purchaseOrder": {
"id": "673b0ab223b8c71a21e1914b",
"number": "003"
},
"supplier": {
"id": "6718a1a20e27164043cea4e8",
"name": "Caroline Dupont"
},
"taxes": {
"tax1": {
"id": "6718a0fd0e27164043ce97ae",
"name": "VAT",
"amount": 18.9
}
},
"total": 108.9,
"user": {
"id": "6718a0b50e27164043ce912e",
"name": "Cédric Doe"
},
"createdAt": "2024-11-18T09:37:00.109Z",
"updatedAt": "2024-11-18T09:44:51.433Z"
}
Delete an expense
This endpoint allows you to delete an expense.
Request
curl -X DELETE https://api.lsp.expert/v2/expenses/673b0abc23b8c71a21e1942a \
-u {key}: