Expense report header for employee expense lines. Employees create and submit expense reports, consisting of individual line items, to receive reimbursement for approved out-of-pocket costs related to their jobs.
The employees' managers must then approve the expenses. After approval, the expense reports become reimbursement request candidates for the accounting department to process into pending reimbursements, from which checks are printed.
Returns up to 100 employee expense objects from the collection with a key, ID, and link for each expense. This operation is mostly for use in testing; use the query service to find expense objects that meet certain criteria and to specify the properties that are returned.
OK
Bad Request
{- "ia::result": [
- {
- "key": "84",
- "id": "EXP-00001",
- "href": "/objects/expenses/employee-expense/84"
}, - {
- "key": "85",
- "id": "EXP-00002",
- "href": "/objects/expenses/employee-expense/85"
}, - {
- "key": "60",
- "id": "EXP-00003",
- "href": "/objects/expenses/employee-expense/60"
}
], - "ia::meta": {
- "totalCount": 3,
- "totalSuccess": 3,
- "totalError": 0,
- "start": 1,
- "pageSize": 5,
- "next": 0,
- "previous": 0
}
}
Creates a new employee expense. You must specify a unique employee expense ID when creating an employee expense unless document sequencing is configured, in which case the ID is auto-generated.
Creates an employee expense
createdDate required | string <date> Date the employee expense was created. Example: "2024-11-11" | ||||||||||||||||||||||||||||||||||
required | object Employee that incurred the expense. | ||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
required | Array of objects Line items of the employee expense. | ||||||||||||||||||||||||||||||||||
Array
| |||||||||||||||||||||||||||||||||||
state | string Default: "submitted" Status of the employee expense in its life cycle. Expenses are posted to the general ledger when approved. Example: "draft" | ||||||||||||||||||||||||||||||||||
object Base payment details for the employee expense report. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
object Reimbursement details. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
expenseReportNumber | string Report number associated with the employee expense. Example: "EXP-00001" | ||||||||||||||||||||||||||||||||||
object Expense summary that this expense is reported on. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
memo | string Memo. Example: "Paid to employee" | ||||||||||||||||||||||||||||||||||
description | string Reason for the expense. Example: "Supplies for customer training" | ||||||||||||||||||||||||||||||||||
reclassificationNotes | string If an expense is reclassified, reason for the reclassification. Example: "Classified as supplies, not travel expense" | ||||||||||||||||||||||||||||||||||
object An attachment for employee expenses.(Company subscription with permissions to Add and Edit Attachments.) | |||||||||||||||||||||||||||||||||||
|
Created
Bad Request
{- "state": "submitted",
- "expenseReportNumber": "EXP-00001",
- "employee": {
- "id": "102"
}, - "createdDate": "2025-03-11",
- "expenseSummary": {
- "postingDate": "2025-01-31",
- "title": "Expenses - Q1 batch"
}, - "basePaymentInformation": {
- "baseCurrency": "USD"
}, - "reimbursement": {
- "reimbursementCurrency": "EUR"
}, - "description": "Travel expense",
- "memo": "Paid to employee",
- "lines": [
- {
- "account": null,
- "id": "6775.30",
- "paidTo": "paid To",
- "paidFor": "paid For",
- "isBillable": false,
- "form1099": {
- "isForm1099": "true",
- "type": "MISC",
- "box": "3"
}, - "paymentType": {
- "key": "1",
- "name": "Non-reimburse",
- "isNonreimbursable": false
}, - "quantity": "10",
- "unitrate": "20",
- "txnCurrency": "INR",
- "txnAmount": "100",
- "transactionToReimburseConversion": {
- "exchangeRateDate": "2025-03-11",
- "exchangeRateTypeId": "Intacct Daily Rate"
}, - "dimensions": {
- "location": {
- "id": "1"
}, - "department": {
- "id": "1"
}, - "class": {
- "id": "REST_CLS_001"
}, - "item": {
- "id": "Case 13"
}, - "employee": {
- "id": "102"
}, - "vendor": {
- "id": "1605212096809"
}, - "customer": {
- "id": "113"
}, - "project": {
- "id": "NET-XML30-2"
}, - "warehouse": {
- "id": "WH01"
}, - "task": {
- "id": "tet"
}
}
}
]
}
{- "ia::result": {
- "key": "124",
- "id": "124",
- "href": "/objects/expenses/employee-expense/124"
}, - "ia::meta": {
- "totalCount": 1
}
}
Returns detailed information for a specified employee expense.
key required | string System-assigned key for the employee expense. Example: 99 |
OK
Bad Request
{- "ia::result": {
- "expenseReportNumber": "ER-0152",
- "employeeContact": {
- "lastName": "Glenn",
- "firstName": "Thomas",
- "id": "Glenn, Thomas"
}, - "id": "1383",
- "key": "1383",
- "createdDate": "2025-01-02",
- "expenseSummary": {
- "postingDate": "2025-01-02",
- "title": "Expenses (USD): 2025/01/02 14:57:49:249 Batch",
- "id": "2131",
- "key": "2131",
- "state": "open",
- "preventGLPosting": false,
- "href": "/objects/expenses/employee-expense-summary/2131"
}, - "basePayment": {
- "totalEntered": "1000.00",
- "totalPaid": "0.00",
- "totalSelected": "0.00",
- "totalDue": "1000.00",
- "paidDate": null,
- "baseCurrency": "USD"
}, - "state": "draft",
- "reimbursement": {
- "totalEntered": "1000.00",
- "totalSelected": "0.00",
- "totalPaid": "0.00",
- "totalDue": "1000.00",
- "reimbursementCurrency": "USD"
}, - "description": null,
- "audit": {
- "modifiedDateTime": "2025-01-03T00:43:06Z",
- "createdByUser": {
- "key": "158",
- "href": "/objects/company-config/user/158"
}, - "createdBy": "158",
- "createdDateTime": "2025-01-02T00:00:00Z",
- "modifiedByUser": {
- "key": "158",
- "href": "/objects/company-config/user/158"
}, - "modifiedBy": "158"
}, - "employee": {
- "id": "102",
- "key": "102",
- "href": "/objects/company-config/employee/102"
}, - "nonReimbursable": {
- "baseTotalEntered": "0.00",
- "reimbursementTotalEntered": "0.00"
}, - "attachment": {
- "id": null,
- "key": null
}, - "memo": "Travel for Atlanta meeting",
- "entity": {
- "key": null,
- "id": null,
- "name": null
}, - "lines": [
- {
- "id": "5101",
- "key": "5101",
- "employeeExpense": {
- "id": "1383",
- "key": "1383",
- "href": "/objects/expenses/employee-expense/1383"
}, - "glAccount": {
- "key": "259",
- "id": "6254",
- "name": "Travel",
- "href": "/objects/general-ledger/account/259"
}, - "entryDate": null,
- "paidTo": "Travel expense",
- "paidFor": null,
- "baseAmount": "1000.00",
- "reimburseToBaseConversion": {
- "exchangeRateDate": null,
- "exchangeRateTypeId": null,
- "exchangeRate": "1.00000"
}, - "dimensions": {
- "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "department": {
- "key": "1",
- "id": "1",
- "name": "IT",
- "href": "/objects/company-config/department/1"
}, - "customer": {
- "key": "13",
- "id": "113",
- "name": "Jack In the Box",
- "href": "/objects/accounts-receivable/customer/13"
}, - "vendor": {
- "key": "357",
- "id": "1605212096809",
- "name": "Boston Properties",
- "href": "/objects/accounts-payable/vendor/357"
}, - "employee": {
- "key": "102",
- "id": "102",
- "name": "Glenn, Thomas",
- "href": "/objects/company-config/employee/102"
}, - "item": {
- "key": null,
- "id": null,
- "name": null
}, - "project": {
- "key": "2",
- "id": "NET-XML30-2",
- "name": "Binford Implementation",
- "href": "/objects/projects/project/2"
}, - "class": {
- "key": "731",
- "id": "REST_CLS_001",
- "name": "Education",
- "href": "/objects/company-config/class/731"
}
}, - "lineNumber": 1,
- "expenseType": {
- "key": "7",
- "id": "Travel",
- "href": "/objects/expenses/employee-expense-type/7"
}, - "reimbursementAmount": "1000.00",
- "totalSelected": "0.00",
- "totalPaid": "0.00",
- "isBillable": null,
- "isBilled": null,
- "state": "draft",
- "form1099": {
- "isForm1099": "false",
- "type": null,
- "box": null
}, - "paymentType": {
- "key": "1",
- "id": "PaymentType1",
- "isNonReimbursable": false,
- "href": "/objects/expenses/employee-expense-payment-type/1"
}, - "quantity": null,
- "unitRate": null,
- "audit": {
- "createdByUser": {
- "key": "158",
- "href": "/objects/company-config/user/158"
}, - "createdBy": "158",
- "modifiedByUser": {
- "key": "158",
- "href": "/objects/company-config/user/158"
}, - "modifiedBy": "158",
- "createdDateTime": "2025-01-02T22:57:49Z",
- "modifiedDateTime": "2025-01-03T00:43:06Z"
}, - "txnCurrency": "USD",
- "txnAmount": "1000.00",
- "transactionToReimburseConversion": {
- "exchangeRateDate": "2025-01-02",
- "exchangeRateTypeId": "Intacct Daily Rate",
- "exchangeRate": "1.00000"
}, - "electronicReceiptLine": {
- "id": null,
- "key": null
}, - "electronicReceipt": {
- "id": null,
- "key": null
}, - "href": "/objects/expenses/employee-expense-line/5101"
}
], - "href": "/objects/expenses/employee-expense/1383"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Updates an existing employee expense by setting field values. Any fields not provided remain unchanged.
key required | string System-assigned key for the employee expense. Example: 99 |
createdDate | string <date> Date the employee expense was created. Example: "2024-11-11" | ||||||||||||||||||||||||||||||||||
object Employee that incurred the expense. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
state | string Default: "submitted" Status of the employee expense in its life cycle. Expenses are posted to the general ledger when approved. Example: "draft" | ||||||||||||||||||||||||||||||||||
object Base payment details for the employee expense report. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
object Reimbursement details. | |||||||||||||||||||||||||||||||||||
expenseReportNumber | string Report number associated with the employee expense. Example: "EXP-00001" | ||||||||||||||||||||||||||||||||||
object Expense summary that this expense is reported on. | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
memo | string Memo. Example: "Paid to employee" | ||||||||||||||||||||||||||||||||||
description | string Reason for the expense. Example: "Supplies for customer training" | ||||||||||||||||||||||||||||||||||
reclassificationNotes | string If an expense is reclassified, reason for the reclassification. Example: "Classified as supplies, not travel expense" | ||||||||||||||||||||||||||||||||||
object An attachment for employee expenses.(Company subscription with permissions to Add and Edit Attachments.) | |||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||
Array of objects Line items of the employee expense. | |||||||||||||||||||||||||||||||||||
Array
|
OK
Bad Request
{- "memo": "Covered by customer"
}
{- "ia::result": {
- "key": "124",
- "id": "124",
- "href": "/objects/expenses/employee-expense/124"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Deletes an employee expense.
key required | string System-assigned key for the employee expense. Example: 99 |
No Content
Bad Request
{- "ia::result": {
- "ia::error": {
- "code": "invalidRequest",
- "message": "A POST request requires a payload",
- "errorId": "REST-1028",
- "additionalInfo": {
- "messageId": "IA.REQUEST_REQUIRES_A_PAYLOAD",
- "placeholders": {
- "OPERATION": "POST"
}, - "propertySet": { }
}, - "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
}
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 0,
- "totalError": 1
}
}
Queries an object for filtered data.
object | string Object type to query, in the form Example: "expenses/employee-expense" | ||||||||
fields | Array of strings List of fields to include in the response. Can be any combination of these:
Example: ["key","id","max:vendor.creditLimit"] | ||||||||
Array of equal (object) or not equal (object) or less than (object) or (less than or equal (object)) or greater than (object) or (greater than or equal (object)) or in (object) or not in (object) or between (object) or not between (object) or contains (object) or does not contain (object) or has (object) or starts with (object) or does not start with (object) or ends with (object) or does not end with (object) Filter conditions to select the objects to return based on their field values. You use operators and conditions to build your filter, such as Example: [{"$eq":{"status":"active"}},{"$gt":{"totalDue":"1000"}},{"$contains":{"name":"Acme"}}] | |||||||||
Array Any of: Field value must be equal to this specified value. For date fields, you can use these macro values that are relative to the current date or the
These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the For example,
| |||||||||
filterExpression | string Default: "and" Logical operators to apply when there are multiple filter conditions. The conditions in the Shortcuts:
Example: "(1 and 2) or 3" | ||||||||
| |||||||||
Array of objects Set the order of the results by specifying field names to sort by and whether they should be in ascending or descending order. Example: [{"totalDue":"asc"},{"lastPaymentMadeDate":"desc"}] | |||||||||
Array
| |||||||||
start | integer First record of the result set to include in the response. Example: 1 | ||||||||
size | integer Number of records to include in the result set, 4000 maximum. Example: 100 |
OK
Bad Request
{- "object": "expenses/employee-expense",
- "filters": [
- {
- "$eq": null,
- "employee.name": "Dosorio"
}
], - "fields": [
- "key",
- "id",
- "reimbursement.totalPaid",
- "href"
], - "orderBy": [
- {
- "id": "asc"
}
]
}
{- "ia::result": [
- {
- "key": "880",
- "id": "880",
- "reimbursement.totalPaid": "0.00",
- "href": "/objects/expenses/employee-expense/880"
}, - {
- "key": "881",
- "id": "881",
- "reimbursement.totalPaid": "0.00",
- "href": "/objects/expenses/employee-expense/881"
}, - {
- "key": "883",
- "id": "883",
- "reimbursement.totalPaid": "0.00",
- "href": "/objects/expenses/employee-expense/883"
}
], - "ia::meta": {
- "totalCount": 3,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}