# Accounting API — Expense Reports

> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Expense-Reports

This document contains every operation on the `Expense Reports` resource.

---

# List Expense Reports

> **Accounting API** · `GET /accounting/expense-reports`
> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Expense-Reports/operation/expenseReportsAll

List Expense Reports

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `raw` | query | `boolean` | No | Include raw response. Mostly used for debugging purposes |
| `x-apideck-consumer-id` | header | `string` | Yes | ID of the consumer which you want to get or push data from |
| `x-apideck-app-id` | header | `string` | Yes | The ID of your Unify application |
| `x-apideck-service-id` | header | `string` | No | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. |
| `cursor` | query | `string` | No | Cursor to start from. You can find cursors for next/previous pages in the meta.cursors property of the response. |
| `limit` | query | `integer` | No | Number of results to return. Minimum 1, Maximum 200, Default 20 |
| `fields` | query | `string` | No | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation. <br /><br />Example: `fields=name,email,addresses.city`<br /><br />In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. |
| `filter` | query | `object` | No | Apply filters |

### Responses

#### 200 — Expense Reports

- `status_code` `integer` **required** — HTTP Response Status Code — example: `200`
- `status` `string` **required** — HTTP Response Status — example: `OK`
- `service` `string` **required** — Apideck ID of service provider — example: `netsuite`
- `resource` `string` **required** — Unified API resource name — example: `ExpenseReports`
- `operation` `string` **required** — Operation performed — example: `all`
- `data` `array of object` **required**
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `number` `string` — The expense report number. — example: `ER-001`
  - `title` `string` — Title or purpose of the expense report. — example: `Q1 Business Travel`
  - `employee` `object` **required** — The employee who submitted the expense report.
    - `id` `string` — A unique identifier for the employee. — example: `12345`
    - `display_name` `string` — The display name of the employee. — example: `John Doe`
  - `status` `string` — The status of the expense report. — enum: `draft`, `submitted`, `approved`, `reimbursed`, `rejected`, `reversed`, `voided` — example: `OK`
  - `transaction_date` `string` **required** — The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD — format: `date-time` — example: `2021-05-01T12:00:00.000Z`
  - `posting_date` `string` — The date the expense report was posted to the general ledger. — format: `date` — example: `2024-06-01`
  - `due_date` `string` — Date when reimbursement is due. — format: `date` — example: `2024-06-15`
  - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
  - `currency_rate` `number` — Currency Exchange Rate at the time entity was recorded/generated. — example: `0.69`
  - `sub_total` `number` — Subtotal amount, normally before tax. — example: `250`
  - `total_tax` `number` — Total tax amount applied to this transaction. — example: `25`
  - `total_amount` `number` — Total amount of all expense lines including tax. — example: `1250.75`
  - `reimbursable_amount` `number` — Total reimbursable amount (may differ from total if some expenses are non-reimbursable). — example: `1100`
  - `memo` `string` — The memo of the expense report. — example: `Business travel expenses for Q1 client meetings`
  - `department` `object`
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the resource. — example: `Acme Inc.`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `location` `object`
    - `id` `string` — The unique identifier for the location. — example: `123456`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the location. — example: `New York Office`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `account` `object`
    - `id` `string` — The unique identifier for the account. — example: `123456`
    - `name` `string` — The name of the account. — example: `Bank account`
    - `nominal_code` `string` — The nominal code of the account. — example: `N091`
    - `code` `string` — The code assigned to the account. — example: `453`
    - `parent_id` `string` — The parent ID of the account. — example: `123456`
    - `display_id` `string` — The display ID of the account. — example: `123456`
  - `accounting_period` `object` — The accounting period the expense report is posted to.
    - `id` `string` — A unique identifier for the accounting period. — example: `12345`
    - `name` `string` — The name of the accounting period. — example: `Q1 2024`
  - `line_items` `array of object` **required** — Expense line items linked to this expense report.
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `line_number` `integer` — Line number of the resource — example: `1`
    - `expense_category` `object` — The expense category this entity is linked to.
      - `id` `string` — The ID of the expense category. — example: `12345`
      - `downstream_id` `string` — The third-party API ID of the expense category. — example: `12345`
      - `display_id` `string` — The display ID of the expense category. — example: `Airfare`
      - `name` `string` — The name of the expense category. — example: `Airfare`
    - `account` `object`
      - `id` `string` — The unique identifier for the account. — example: `123456`
      - `name` `string` — The name of the account. — example: `Bank account`
      - `nominal_code` `string` — The nominal code of the account. — example: `N091`
      - `code` `string` — The code assigned to the account. — example: `453`
      - `parent_id` `string` — The parent ID of the account. — example: `123456`
      - `display_id` `string` — The display ID of the account. — example: `123456`
    - `description` `string` — The description of the expense line item. — example: `Flight to New York`
    - `quantity` `number` — example: `1`
    - `unit_price` `number` — example: `27500.5`
    - `amount` `number` **required** — The amount of the expense line item. — example: `275`
    - `tax_rate` `object`
      - `id` `string` — The ID of the object. — example: `123456`
      - `code` `string` — Tax rate code — example: `N-T`
      - `name` `string` — Name of the tax rate — example: `GST on Purchases`
      - `rate` `number` — Rate of the tax rate — example: `10`
    - `tax_amount` `number` — Tax amount — example: `27.5`
    - `total_amount` `number` — The total amount of the expense line item including tax. — example: `302.5`
    - `transaction_date` `string` — The date of the individual expense. — format: `date` — example: `2024-05-15`
    - `billable` `boolean` — Whether the expense is billable to a customer. — example: `true`
    - `reimbursable` `boolean` — Whether the expense is reimbursable to the employee. — example: `true`
    - `customer` `object` — The customer this entity is linked to.
      - `id` `string` — The ID of the customer this entity is linked to. — example: `12345`
      - `display_id` `string` — The display ID of the customer. — example: `CUST00101`
      - `display_name` `string` — The display name of the customer. — example: `Windsurf Shop`
      - `name` `string` — The name of the customer. Deprecated, use display_name instead. — example: `Windsurf Shop`
      - `company_name` `string` — The company name of the customer. — example: `The boring company`
      - `email` `string` — The email address of the customer. — example: `boring@boring.com`
    - `department` `object`
      - `id` `string` — A unique identifier for an object. — example: `12345`
      - `display_id` `string` — Id to be displayed. — example: `123456`
      - `name` `string` — The name of the resource. — example: `Acme Inc.`
      - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
    - `location` `object`
      - `id` `string` — The unique identifier for the location. — example: `123456`
      - `display_id` `string` — Id to be displayed. — example: `123456`
      - `name` `string` — The name of the location. — example: `New York Office`
      - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
    - `tracking_categories` `array of object` — A list of linked tracking categories.
      - `id` `string` — The unique identifier for the tracking category. — example: `123456`
      - `code` `string` — The code of the tracking category. — example: `100`
      - `name` `string` — The name of the tracking category. — example: `New York`
      - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
      - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
    - `receipt_url` `string` — URL to the receipt or attachment for this expense line. — example: `https://example.com/receipts/123.pdf`
    - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
    - `updated_by` `string` — The user who last updated the object. — example: `12345`
    - `created_by` `string` — The user who created the object. — example: `12345`
    - `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
    - `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `subsidiary` `object`
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the resource. — example: `Acme Inc.`
  - `tracking_categories` `array of object` — A list of linked tracking categories.
    - `id` `string` — The unique identifier for the tracking category. — example: `123456`
    - `code` `string` — The code of the tracking category. — example: `100`
    - `name` `string` — The name of the tracking category. — example: `New York`
    - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
    - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
  - `tax_inclusive` `boolean` — Amounts are including tax — example: `true`
  - `approved_by` `object` — The person who approved the expense report.
    - `id` `string` — A unique identifier for the approver. — example: `12345`
    - `display_name` `string` — The display name of the approver. — example: `Jane Smith`
  - `custom_fields` `array of object`
    - `id` `string` — Unique identifier for the custom field. — example: `2389328923893298`
    - `name` `string` — Name of the custom field. — example: `employee_level`
    - `description` `string` — More information about the custom field — example: `Employee Level`
    - `value` `string | number | boolean | object | array of string | number | boolean | object`
      - One of:
        - Option 1: string
        - Option 2: number
        - Option 3: boolean
        - Option 4: object

        - Option 5: array of string | number | boolean | object
  - `custom_mappings` `object` — When custom mappings are configured on the resource, the result is included here.
  - `row_version` `string` — A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. — example: `1-12345`
  - `updated_by` `string` — The user who last updated the object. — example: `12345`
  - `created_by` `string` — The user who created the object. — example: `12345`
  - `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `pass_through` `array of object` — The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources.
    - `service_id` `string` **required** — Identifier for the service to which this pass_through should be applied.
    - `operation_id` `string` — Optional identifier for a workflow operation to which this pass_through should be applied. This is useful for Unify calls that are making more than one downstream request.
    - `extend_object` `object` — Simple object allowing any properties for direct extension.
    - `extend_paths` `array of object` — Array of objects for structured data modifications via paths.
      - `path` `string` **required** — JSONPath string specifying where to apply the value. — example: `$.nested.property`
      - `value` `any` **required** — The value to set at the specified path, can be any type.
- `meta` `object` — Response metadata
  - `items_on_page` `integer` — Number of items returned in the data property of the response — example: `50`
  - `cursors` `object` — Cursors to navigate to previous or next pages through the API
    - `previous` `string` — Cursor to navigate to the previous page of results through the API — example: `em9oby1jcm06OnBhZ2U6OjE=`
    - `current` `string` — Cursor to navigate to the current page of results through the API — example: `em9oby1jcm06OnBhZ2U6OjI=`
    - `next` `string` — Cursor to navigate to the next page of results through the API — example: `em9oby1jcm06OnBhZ2U6OjM=`
- `links` `object` — Links to navigate to previous or next pages through the API
  - `previous` `string` — Link to navigate to the previous page through the API — example: `https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjE%3D`
  - `current` `string` — Link to navigate to the current page through the API — example: `https://unify.apideck.com/crm/companies`
  - `next` `string` — Link to navigate to the previous page through the API — example: `https://unify.apideck.com/crm/companies?cursor=em9oby1jcm06OnBhZ2U6OjM`
- `_raw` `object` — Raw response from the integration when raw=true query param is provided

#### 400 — Bad Request

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 401 — Unauthorized

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 402 — Payment Required

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 404 — The specified resource was not found

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 422 — Unprocessable

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### default — Unexpected error

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

---

# Create Expense Report

> **Accounting API** · `POST /accounting/expense-reports`
> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Expense-Reports/operation/expenseReportsAdd

Create Expense Report

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `raw` | query | `boolean` | No | Include raw response. Mostly used for debugging purposes |
| `x-apideck-consumer-id` | header | `string` | Yes | ID of the consumer which you want to get or push data from |
| `x-apideck-app-id` | header | `string` | Yes | The ID of your Unify application |
| `x-apideck-service-id` | header | `string` | No | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. |

### Request Body

_Required._

- `id` `string` — A unique identifier for an object. — example: `12345`
- `display_id` `string` — Id to be displayed. — example: `123456`
- `number` `string` — The expense report number. — example: `ER-001`
- `title` `string` — Title or purpose of the expense report. — example: `Q1 Business Travel`
- `employee` `object` **required** — The employee who submitted the expense report.
  - `id` `string` — A unique identifier for the employee. — example: `12345`
  - `display_name` `string` — The display name of the employee. — example: `John Doe`
- `status` `string` — The status of the expense report. — enum: `draft`, `submitted`, `approved`, `reimbursed`, `rejected`, `reversed`, `voided` — example: `submitted`
- `transaction_date` `string` **required** — The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD — format: `date-time` — example: `2021-05-01T12:00:00.000Z`
- `posting_date` `string` — The date the expense report was posted to the general ledger. — format: `date` — example: `2024-06-01`
- `due_date` `string` — Date when reimbursement is due. — format: `date` — example: `2024-06-15`
- `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
- `currency_rate` `number` — Currency Exchange Rate at the time entity was recorded/generated. — example: `0.69`
- `sub_total` `number` — Subtotal amount, normally before tax. — example: `250`
- `total_tax` `number` — Total tax amount applied to this transaction. — example: `25`
- `total_amount` `number` — Total amount of all expense lines including tax. — example: `1250.75`
- `reimbursable_amount` `number` — Total reimbursable amount (may differ from total if some expenses are non-reimbursable). — example: `1100`
- `memo` `string` — The memo of the expense report. — example: `Business travel expenses for Q1 client meetings`
- `department` `object`
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `name` `string` — The name of the resource. — example: `Acme Inc.`
  - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
- `location` `object`
  - `id` `string` — The unique identifier for the location. — example: `123456`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `name` `string` — The name of the location. — example: `New York Office`
  - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
- `account` `object`
  - `id` `string` — The unique identifier for the account. — example: `123456`
  - `name` `string` — The name of the account. — example: `Bank account`
  - `nominal_code` `string` — The nominal code of the account. — example: `N091`
  - `code` `string` — The code assigned to the account. — example: `453`
  - `parent_id` `string` — The parent ID of the account. — example: `123456`
  - `display_id` `string` — The display ID of the account. — example: `123456`
- `accounting_period` `object` — The accounting period the expense report is posted to.
  - `id` `string` — A unique identifier for the accounting period. — example: `12345`
  - `name` `string` — The name of the accounting period. — example: `Q1 2024`
- `line_items` `array of object` **required** — Expense line items linked to this expense report.
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `line_number` `integer` — Line number of the resource — example: `1`
  - `expense_category` `object` — The expense category this entity is linked to.
    - `id` `string` — The ID of the expense category. — example: `12345`
    - `downstream_id` `string` — The third-party API ID of the expense category. — example: `12345`
    - `display_id` `string` — The display ID of the expense category. — example: `Airfare`
    - `name` `string` — The name of the expense category. — example: `Airfare`
  - `account` `object`
    - `id` `string` — The unique identifier for the account. — example: `123456`
    - `name` `string` — The name of the account. — example: `Bank account`
    - `nominal_code` `string` — The nominal code of the account. — example: `N091`
    - `code` `string` — The code assigned to the account. — example: `453`
    - `parent_id` `string` — The parent ID of the account. — example: `123456`
    - `display_id` `string` — The display ID of the account. — example: `123456`
  - `description` `string` — The description of the expense line item. — example: `Flight to New York`
  - `quantity` `number` — example: `1`
  - `unit_price` `number` — example: `27500.5`
  - `amount` `number` **required** — The amount of the expense line item. — example: `275`
  - `tax_rate` `object`
    - `id` `string` — The ID of the object. — example: `123456`
    - `code` `string` — Tax rate code — example: `N-T`
    - `name` `string` — Name of the tax rate — example: `GST on Purchases`
    - `rate` `number` — Rate of the tax rate — example: `10`
  - `tax_amount` `number` — Tax amount — example: `27.5`
  - `total_amount` `number` — The total amount of the expense line item including tax. — example: `302.5`
  - `transaction_date` `string` — The date of the individual expense. — format: `date` — example: `2024-05-15`
  - `billable` `boolean` — Whether the expense is billable to a customer. — example: `true`
  - `reimbursable` `boolean` — Whether the expense is reimbursable to the employee. — example: `true`
  - `customer` `object` — The customer this entity is linked to.
    - `id` `string` — The ID of the customer this entity is linked to. — example: `12345`
    - `display_id` `string` — The display ID of the customer. — example: `CUST00101`
    - `display_name` `string` — The display name of the customer. — example: `Windsurf Shop`
    - `name` `string` — The name of the customer. Deprecated, use display_name instead. — example: `Windsurf Shop`
    - `company_name` `string` — The company name of the customer. — example: `The boring company`
    - `email` `string` — The email address of the customer. — example: `boring@boring.com`
  - `department` `object`
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the resource. — example: `Acme Inc.`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `location` `object`
    - `id` `string` — The unique identifier for the location. — example: `123456`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the location. — example: `New York Office`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `tracking_categories` `array of object` — A list of linked tracking categories.
    - `id` `string` — The unique identifier for the tracking category. — example: `123456`
    - `code` `string` — The code of the tracking category. — example: `100`
    - `name` `string` — The name of the tracking category. — example: `New York`
    - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
    - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
  - `receipt_url` `string` — URL to the receipt or attachment for this expense line. — example: `https://example.com/receipts/123.pdf`
  - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
  - `updated_by` `string` — The user who last updated the object. — example: `12345`
  - `created_by` `string` — The user who created the object. — example: `12345`
  - `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
- `subsidiary` `object`
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `name` `string` — The name of the resource. — example: `Acme Inc.`
- `tracking_categories` `array of object` — A list of linked tracking categories.
  - `id` `string` — The unique identifier for the tracking category. — example: `123456`
  - `code` `string` — The code of the tracking category. — example: `100`
  - `name` `string` — The name of the tracking category. — example: `New York`
  - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
  - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
- `tax_inclusive` `boolean` — Amounts are including tax — example: `true`
- `approved_by` `object` — The person who approved the expense report.
  - `id` `string` — A unique identifier for the approver. — example: `12345`
  - `display_name` `string` — The display name of the approver. — example: `Jane Smith`
- `custom_fields` `array of object`
  - `id` `string` — Unique identifier for the custom field. — example: `2389328923893298`
  - `name` `string` — Name of the custom field. — example: `employee_level`
  - `description` `string` — More information about the custom field — example: `Employee Level`
  - `value` `string | number | boolean | object | array of string | number | boolean | object`
    - One of:
      - Option 1: string
      - Option 2: number
      - Option 3: boolean
      - Option 4: object

      - Option 5: array of string | number | boolean | object
- `custom_mappings` `object` — When custom mappings are configured on the resource, the result is included here.
- `row_version` `string` — A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. — example: `1-12345`
- `updated_by` `string` — The user who last updated the object. — example: `12345`
- `created_by` `string` — The user who created the object. — example: `12345`
- `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
- `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
- `pass_through` `array of object` — The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources.
  - `service_id` `string` **required** — Identifier for the service to which this pass_through should be applied.
  - `operation_id` `string` — Optional identifier for a workflow operation to which this pass_through should be applied. This is useful for Unify calls that are making more than one downstream request.
  - `extend_object` `object` — Simple object allowing any properties for direct extension.
  - `extend_paths` `array of object` — Array of objects for structured data modifications via paths.
    - `path` `string` **required** — JSONPath string specifying where to apply the value. — example: `$.nested.property`
    - `value` `any` **required** — The value to set at the specified path, can be any type.

### Responses

#### 201 — Expense Reports

- `status_code` `integer` **required** — HTTP Response Status Code — example: `201`
- `status` `string` **required** — HTTP Response Status — example: `Created`
- `service` `string` **required** — Apideck ID of service provider — example: `netsuite`
- `resource` `string` **required** — Unified API resource name — example: `ExpenseReports`
- `operation` `string` **required** — Operation performed — example: `add`
- `data` `object` **required** — A object containing a unique identifier for the resource that was created, updated, or deleted.
  - `id` `string` **required** — The unique identifier of the resource — example: `12345`
- `_raw` `object` — Raw response from the integration when raw=true query param is provided

#### 400 — Bad Request

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 401 — Unauthorized

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 402 — Payment Required

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 404 — The specified resource was not found

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 422 — Unprocessable

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### default — Unexpected error

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

---

# Get Expense Report

> **Accounting API** · `GET /accounting/expense-reports/{id}`
> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Expense-Reports/operation/expenseReportsOne

Get Expense Report

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | `string` | Yes | ID of the record you are acting upon. |
| `x-apideck-consumer-id` | header | `string` | Yes | ID of the consumer which you want to get or push data from |
| `x-apideck-app-id` | header | `string` | Yes | The ID of your Unify application |
| `x-apideck-service-id` | header | `string` | No | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. |
| `raw` | query | `boolean` | No | Include raw response. Mostly used for debugging purposes |
| `fields` | query | `string` | No | The 'fields' parameter allows API users to specify the fields they want to include in the API response. If this parameter is not present, the API will return all available fields. If this parameter is present, only the fields specified in the comma-separated string will be included in the response. Nested properties can also be requested by using a dot notation. <br /><br />Example: `fields=name,email,addresses.city`<br /><br />In the example above, the response will only include the fields "name", "email" and "addresses.city". If any other fields are available, they will be excluded. |

### Responses

#### 200 — Expense Reports

- `status_code` `integer` **required** — HTTP Response Status Code — example: `200`
- `status` `string` **required** — HTTP Response Status — example: `OK`
- `service` `string` **required** — Apideck ID of service provider — example: `netsuite`
- `resource` `string` **required** — Unified API resource name — example: `ExpenseReports`
- `operation` `string` **required** — Operation performed — example: `one`
- `data` `object` **required**
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `number` `string` — The expense report number. — example: `ER-001`
  - `title` `string` — Title or purpose of the expense report. — example: `Q1 Business Travel`
  - `employee` `object` **required** — The employee who submitted the expense report.
    - `id` `string` — A unique identifier for the employee. — example: `12345`
    - `display_name` `string` — The display name of the employee. — example: `John Doe`
  - `status` `string` — The status of the expense report. — enum: `draft`, `submitted`, `approved`, `reimbursed`, `rejected`, `reversed`, `voided` — example: `OK`
  - `transaction_date` `string` **required** — The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD — format: `date-time` — example: `2021-05-01T12:00:00.000Z`
  - `posting_date` `string` — The date the expense report was posted to the general ledger. — format: `date` — example: `2024-06-01`
  - `due_date` `string` — Date when reimbursement is due. — format: `date` — example: `2024-06-15`
  - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
  - `currency_rate` `number` — Currency Exchange Rate at the time entity was recorded/generated. — example: `0.69`
  - `sub_total` `number` — Subtotal amount, normally before tax. — example: `250`
  - `total_tax` `number` — Total tax amount applied to this transaction. — example: `25`
  - `total_amount` `number` — Total amount of all expense lines including tax. — example: `1250.75`
  - `reimbursable_amount` `number` — Total reimbursable amount (may differ from total if some expenses are non-reimbursable). — example: `1100`
  - `memo` `string` — The memo of the expense report. — example: `Business travel expenses for Q1 client meetings`
  - `department` `object`
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the resource. — example: `Acme Inc.`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `location` `object`
    - `id` `string` — The unique identifier for the location. — example: `123456`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the location. — example: `New York Office`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `account` `object`
    - `id` `string` — The unique identifier for the account. — example: `123456`
    - `name` `string` — The name of the account. — example: `Bank account`
    - `nominal_code` `string` — The nominal code of the account. — example: `N091`
    - `code` `string` — The code assigned to the account. — example: `453`
    - `parent_id` `string` — The parent ID of the account. — example: `123456`
    - `display_id` `string` — The display ID of the account. — example: `123456`
  - `accounting_period` `object` — The accounting period the expense report is posted to.
    - `id` `string` — A unique identifier for the accounting period. — example: `12345`
    - `name` `string` — The name of the accounting period. — example: `Q1 2024`
  - `line_items` `array of object` **required** — Expense line items linked to this expense report.
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `line_number` `integer` — Line number of the resource — example: `1`
    - `expense_category` `object` — The expense category this entity is linked to.
      - `id` `string` — The ID of the expense category. — example: `12345`
      - `downstream_id` `string` — The third-party API ID of the expense category. — example: `12345`
      - `display_id` `string` — The display ID of the expense category. — example: `Airfare`
      - `name` `string` — The name of the expense category. — example: `Airfare`
    - `account` `object`
      - `id` `string` — The unique identifier for the account. — example: `123456`
      - `name` `string` — The name of the account. — example: `Bank account`
      - `nominal_code` `string` — The nominal code of the account. — example: `N091`
      - `code` `string` — The code assigned to the account. — example: `453`
      - `parent_id` `string` — The parent ID of the account. — example: `123456`
      - `display_id` `string` — The display ID of the account. — example: `123456`
    - `description` `string` — The description of the expense line item. — example: `Flight to New York`
    - `quantity` `number` — example: `1`
    - `unit_price` `number` — example: `27500.5`
    - `amount` `number` **required** — The amount of the expense line item. — example: `275`
    - `tax_rate` `object`
      - `id` `string` — The ID of the object. — example: `123456`
      - `code` `string` — Tax rate code — example: `N-T`
      - `name` `string` — Name of the tax rate — example: `GST on Purchases`
      - `rate` `number` — Rate of the tax rate — example: `10`
    - `tax_amount` `number` — Tax amount — example: `27.5`
    - `total_amount` `number` — The total amount of the expense line item including tax. — example: `302.5`
    - `transaction_date` `string` — The date of the individual expense. — format: `date` — example: `2024-05-15`
    - `billable` `boolean` — Whether the expense is billable to a customer. — example: `true`
    - `reimbursable` `boolean` — Whether the expense is reimbursable to the employee. — example: `true`
    - `customer` `object` — The customer this entity is linked to.
      - `id` `string` — The ID of the customer this entity is linked to. — example: `12345`
      - `display_id` `string` — The display ID of the customer. — example: `CUST00101`
      - `display_name` `string` — The display name of the customer. — example: `Windsurf Shop`
      - `name` `string` — The name of the customer. Deprecated, use display_name instead. — example: `Windsurf Shop`
      - `company_name` `string` — The company name of the customer. — example: `The boring company`
      - `email` `string` — The email address of the customer. — example: `boring@boring.com`
    - `department` `object`
      - `id` `string` — A unique identifier for an object. — example: `12345`
      - `display_id` `string` — Id to be displayed. — example: `123456`
      - `name` `string` — The name of the resource. — example: `Acme Inc.`
      - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
    - `location` `object`
      - `id` `string` — The unique identifier for the location. — example: `123456`
      - `display_id` `string` — Id to be displayed. — example: `123456`
      - `name` `string` — The name of the location. — example: `New York Office`
      - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
    - `tracking_categories` `array of object` — A list of linked tracking categories.
      - `id` `string` — The unique identifier for the tracking category. — example: `123456`
      - `code` `string` — The code of the tracking category. — example: `100`
      - `name` `string` — The name of the tracking category. — example: `New York`
      - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
      - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
    - `receipt_url` `string` — URL to the receipt or attachment for this expense line. — example: `https://example.com/receipts/123.pdf`
    - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
    - `updated_by` `string` — The user who last updated the object. — example: `12345`
    - `created_by` `string` — The user who created the object. — example: `12345`
    - `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
    - `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `subsidiary` `object`
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the resource. — example: `Acme Inc.`
  - `tracking_categories` `array of object` — A list of linked tracking categories.
    - `id` `string` — The unique identifier for the tracking category. — example: `123456`
    - `code` `string` — The code of the tracking category. — example: `100`
    - `name` `string` — The name of the tracking category. — example: `New York`
    - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
    - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
  - `tax_inclusive` `boolean` — Amounts are including tax — example: `true`
  - `approved_by` `object` — The person who approved the expense report.
    - `id` `string` — A unique identifier for the approver. — example: `12345`
    - `display_name` `string` — The display name of the approver. — example: `Jane Smith`
  - `custom_fields` `array of object`
    - `id` `string` — Unique identifier for the custom field. — example: `2389328923893298`
    - `name` `string` — Name of the custom field. — example: `employee_level`
    - `description` `string` — More information about the custom field — example: `Employee Level`
    - `value` `string | number | boolean | object | array of string | number | boolean | object`
      - One of:
        - Option 1: string
        - Option 2: number
        - Option 3: boolean
        - Option 4: object

        - Option 5: array of string | number | boolean | object
  - `custom_mappings` `object` — When custom mappings are configured on the resource, the result is included here.
  - `row_version` `string` — A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. — example: `1-12345`
  - `updated_by` `string` — The user who last updated the object. — example: `12345`
  - `created_by` `string` — The user who created the object. — example: `12345`
  - `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `pass_through` `array of object` — The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources.
    - `service_id` `string` **required** — Identifier for the service to which this pass_through should be applied.
    - `operation_id` `string` — Optional identifier for a workflow operation to which this pass_through should be applied. This is useful for Unify calls that are making more than one downstream request.
    - `extend_object` `object` — Simple object allowing any properties for direct extension.
    - `extend_paths` `array of object` — Array of objects for structured data modifications via paths.
      - `path` `string` **required** — JSONPath string specifying where to apply the value. — example: `$.nested.property`
      - `value` `any` **required** — The value to set at the specified path, can be any type.
- `_raw` `object` — Raw response from the integration when raw=true query param is provided

#### 400 — Bad Request

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 401 — Unauthorized

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 402 — Payment Required

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 404 — The specified resource was not found

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 422 — Unprocessable

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### default — Unexpected error

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

---

# Delete Expense Report

> **Accounting API** · `DELETE /accounting/expense-reports/{id}`
> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Expense-Reports/operation/expenseReportsDelete

Delete Expense Report

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | `string` | Yes | ID of the record you are acting upon. |
| `x-apideck-consumer-id` | header | `string` | Yes | ID of the consumer which you want to get or push data from |
| `x-apideck-app-id` | header | `string` | Yes | The ID of your Unify application |
| `x-apideck-service-id` | header | `string` | No | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. |
| `raw` | query | `boolean` | No | Include raw response. Mostly used for debugging purposes |

### Responses

#### 200 — Expense Reports

- `status_code` `integer` **required** — HTTP Response Status Code — example: `200`
- `status` `string` **required** — HTTP Response Status — example: `OK`
- `service` `string` **required** — Apideck ID of service provider — example: `netsuite`
- `resource` `string` **required** — Unified API resource name — example: `ExpenseReports`
- `operation` `string` **required** — Operation performed — example: `delete`
- `data` `object` **required** — A object containing a unique identifier for the resource that was created, updated, or deleted.
  - `id` `string` **required** — The unique identifier of the resource — example: `12345`
- `_raw` `object` — Raw response from the integration when raw=true query param is provided

#### 400 — Bad Request

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 401 — Unauthorized

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 402 — Payment Required

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 404 — The specified resource was not found

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 422 — Unprocessable

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### default — Unexpected error

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

---

# Update Expense Report

> **Accounting API** · `PATCH /accounting/expense-reports/{id}`
> Canonical URL: https://developers.apideck.com/apis/accounting/reference#tag/Expense-Reports/operation/expenseReportsUpdate

Update Expense Report

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `id` | path | `string` | Yes | ID of the record you are acting upon. |
| `x-apideck-consumer-id` | header | `string` | Yes | ID of the consumer which you want to get or push data from |
| `x-apideck-app-id` | header | `string` | Yes | The ID of your Unify application |
| `x-apideck-service-id` | header | `string` | No | Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. |
| `raw` | query | `boolean` | No | Include raw response. Mostly used for debugging purposes |

### Request Body

_Required._

- `id` `string` — A unique identifier for an object. — example: `12345`
- `display_id` `string` — Id to be displayed. — example: `123456`
- `number` `string` — The expense report number. — example: `ER-001`
- `title` `string` — Title or purpose of the expense report. — example: `Q1 Business Travel`
- `employee` `object` **required** — The employee who submitted the expense report.
  - `id` `string` — A unique identifier for the employee. — example: `12345`
  - `display_name` `string` — The display name of the employee. — example: `John Doe`
- `status` `string` — The status of the expense report. — enum: `draft`, `submitted`, `approved`, `reimbursed`, `rejected`, `reversed`, `voided` — example: `submitted`
- `transaction_date` `string` **required** — The date of the transaction - YYYY:MM::DDThh:mm:ss.sTZD — format: `date-time` — example: `2021-05-01T12:00:00.000Z`
- `posting_date` `string` — The date the expense report was posted to the general ledger. — format: `date` — example: `2024-06-01`
- `due_date` `string` — Date when reimbursement is due. — format: `date` — example: `2024-06-15`
- `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
- `currency_rate` `number` — Currency Exchange Rate at the time entity was recorded/generated. — example: `0.69`
- `sub_total` `number` — Subtotal amount, normally before tax. — example: `250`
- `total_tax` `number` — Total tax amount applied to this transaction. — example: `25`
- `total_amount` `number` — Total amount of all expense lines including tax. — example: `1250.75`
- `reimbursable_amount` `number` — Total reimbursable amount (may differ from total if some expenses are non-reimbursable). — example: `1100`
- `memo` `string` — The memo of the expense report. — example: `Business travel expenses for Q1 client meetings`
- `department` `object`
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `name` `string` — The name of the resource. — example: `Acme Inc.`
  - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
- `location` `object`
  - `id` `string` — The unique identifier for the location. — example: `123456`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `name` `string` — The name of the location. — example: `New York Office`
  - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
- `account` `object`
  - `id` `string` — The unique identifier for the account. — example: `123456`
  - `name` `string` — The name of the account. — example: `Bank account`
  - `nominal_code` `string` — The nominal code of the account. — example: `N091`
  - `code` `string` — The code assigned to the account. — example: `453`
  - `parent_id` `string` — The parent ID of the account. — example: `123456`
  - `display_id` `string` — The display ID of the account. — example: `123456`
- `accounting_period` `object` — The accounting period the expense report is posted to.
  - `id` `string` — A unique identifier for the accounting period. — example: `12345`
  - `name` `string` — The name of the accounting period. — example: `Q1 2024`
- `line_items` `array of object` **required** — Expense line items linked to this expense report.
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `line_number` `integer` — Line number of the resource — example: `1`
  - `expense_category` `object` — The expense category this entity is linked to.
    - `id` `string` — The ID of the expense category. — example: `12345`
    - `downstream_id` `string` — The third-party API ID of the expense category. — example: `12345`
    - `display_id` `string` — The display ID of the expense category. — example: `Airfare`
    - `name` `string` — The name of the expense category. — example: `Airfare`
  - `account` `object`
    - `id` `string` — The unique identifier for the account. — example: `123456`
    - `name` `string` — The name of the account. — example: `Bank account`
    - `nominal_code` `string` — The nominal code of the account. — example: `N091`
    - `code` `string` — The code assigned to the account. — example: `453`
    - `parent_id` `string` — The parent ID of the account. — example: `123456`
    - `display_id` `string` — The display ID of the account. — example: `123456`
  - `description` `string` — The description of the expense line item. — example: `Flight to New York`
  - `quantity` `number` — example: `1`
  - `unit_price` `number` — example: `27500.5`
  - `amount` `number` **required** — The amount of the expense line item. — example: `275`
  - `tax_rate` `object`
    - `id` `string` — The ID of the object. — example: `123456`
    - `code` `string` — Tax rate code — example: `N-T`
    - `name` `string` — Name of the tax rate — example: `GST on Purchases`
    - `rate` `number` — Rate of the tax rate — example: `10`
  - `tax_amount` `number` — Tax amount — example: `27.5`
  - `total_amount` `number` — The total amount of the expense line item including tax. — example: `302.5`
  - `transaction_date` `string` — The date of the individual expense. — format: `date` — example: `2024-05-15`
  - `billable` `boolean` — Whether the expense is billable to a customer. — example: `true`
  - `reimbursable` `boolean` — Whether the expense is reimbursable to the employee. — example: `true`
  - `customer` `object` — The customer this entity is linked to.
    - `id` `string` — The ID of the customer this entity is linked to. — example: `12345`
    - `display_id` `string` — The display ID of the customer. — example: `CUST00101`
    - `display_name` `string` — The display name of the customer. — example: `Windsurf Shop`
    - `name` `string` — The name of the customer. Deprecated, use display_name instead. — example: `Windsurf Shop`
    - `company_name` `string` — The company name of the customer. — example: `The boring company`
    - `email` `string` — The email address of the customer. — example: `boring@boring.com`
  - `department` `object`
    - `id` `string` — A unique identifier for an object. — example: `12345`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the resource. — example: `Acme Inc.`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `location` `object`
    - `id` `string` — The unique identifier for the location. — example: `123456`
    - `display_id` `string` — Id to be displayed. — example: `123456`
    - `name` `string` — The name of the location. — example: `New York Office`
    - `downstream_id` `string` — The third-party API ID of original entity — example: `12345`
  - `tracking_categories` `array of object` — A list of linked tracking categories.
    - `id` `string` — The unique identifier for the tracking category. — example: `123456`
    - `code` `string` — The code of the tracking category. — example: `100`
    - `name` `string` — The name of the tracking category. — example: `New York`
    - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
    - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
  - `receipt_url` `string` — URL to the receipt or attachment for this expense line. — example: `https://example.com/receipts/123.pdf`
  - `currency` `string` — Indicates the associated currency for an amount of money. Values correspond to [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217). — enum: `UNKNOWN_CURRENCY`, `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRO`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLL`, `SOS`, `SRD`, `SSP`, `STD`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRC`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `USS`, `UYI`, `UYU`, `UZS`, `VEF`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XTS`, `XXX`, `YER`, `ZAR`, `ZMK`, `ZMW`, `BTC`, `ETH` — example: `USD`
  - `updated_by` `string` — The user who last updated the object. — example: `12345`
  - `created_by` `string` — The user who created the object. — example: `12345`
  - `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
  - `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
- `subsidiary` `object`
  - `id` `string` — A unique identifier for an object. — example: `12345`
  - `display_id` `string` — Id to be displayed. — example: `123456`
  - `name` `string` — The name of the resource. — example: `Acme Inc.`
- `tracking_categories` `array of object` — A list of linked tracking categories.
  - `id` `string` — The unique identifier for the tracking category. — example: `123456`
  - `code` `string` — The code of the tracking category. — example: `100`
  - `name` `string` — The name of the tracking category. — example: `New York`
  - `parent_id` `string` — The unique identifier for the parent tracking category. — example: `123456`
  - `parent_name` `string` — The name of the parent tracking category. — example: `New York`
- `tax_inclusive` `boolean` — Amounts are including tax — example: `true`
- `approved_by` `object` — The person who approved the expense report.
  - `id` `string` — A unique identifier for the approver. — example: `12345`
  - `display_name` `string` — The display name of the approver. — example: `Jane Smith`
- `custom_fields` `array of object`
  - `id` `string` — Unique identifier for the custom field. — example: `2389328923893298`
  - `name` `string` — Name of the custom field. — example: `employee_level`
  - `description` `string` — More information about the custom field — example: `Employee Level`
  - `value` `string | number | boolean | object | array of string | number | boolean | object`
    - One of:
      - Option 1: string
      - Option 2: number
      - Option 3: boolean
      - Option 4: object

      - Option 5: array of string | number | boolean | object
- `custom_mappings` `object` — When custom mappings are configured on the resource, the result is included here.
- `row_version` `string` — A binary value used to detect updates to a object and prevent data conflicts. It is incremented each time an update is made to the object. — example: `1-12345`
- `updated_by` `string` — The user who last updated the object. — example: `12345`
- `created_by` `string` — The user who created the object. — example: `12345`
- `updated_at` `string` — The date and time when the object was last updated. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
- `created_at` `string` — The date and time when the object was created. — format: `date-time` — example: `2020-09-30T07:43:32.000Z`
- `pass_through` `array of object` — The pass_through property allows passing service-specific, custom data or structured modifications in request body when creating or updating resources.
  - `service_id` `string` **required** — Identifier for the service to which this pass_through should be applied.
  - `operation_id` `string` — Optional identifier for a workflow operation to which this pass_through should be applied. This is useful for Unify calls that are making more than one downstream request.
  - `extend_object` `object` — Simple object allowing any properties for direct extension.
  - `extend_paths` `array of object` — Array of objects for structured data modifications via paths.
    - `path` `string` **required** — JSONPath string specifying where to apply the value. — example: `$.nested.property`
    - `value` `any` **required** — The value to set at the specified path, can be any type.

### Responses

#### 200 — Expense Reports

- `status_code` `integer` **required** — HTTP Response Status Code — example: `200`
- `status` `string` **required** — HTTP Response Status — example: `OK`
- `service` `string` **required** — Apideck ID of service provider — example: `netsuite`
- `resource` `string` **required** — Unified API resource name — example: `ExpenseReports`
- `operation` `string` **required** — Operation performed — example: `update`
- `data` `object` **required** — A object containing a unique identifier for the resource that was created, updated, or deleted.
  - `id` `string` **required** — The unique identifier of the resource — example: `12345`
- `_raw` `object` — Raw response from the integration when raw=true query param is provided

#### 400 — Bad Request

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 401 — Unauthorized

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 402 — Payment Required

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 404 — The specified resource was not found

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### 422 — Unprocessable

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

#### default — Unexpected error

> Standard error response — see [Error Responses](https://developers.apideck.com/errors)

---
