---
title: "List order items"
method: GET
path: "/shop/reports/order-items"
tags: ["Reports"]
---

# List order items

`GET /shop/reports/order-items`

Use this endpoint to retrieve a paginated list of individual order items, with optional filters and sorting.
The response also includes a CSV variant when requesting with `Accept: text/csv`.

## Query parameters

- `site_id` string, uuid
- `page` integer
- `per_page` integer
- `order_label` string[]
- `order_label_ids` string[]
- `sales_channel_id` string[]
- `sales_channel_ids` string[]
- `offering_id` string[]
- `offering_ids` string[]
- `offering_type` string[]
- `offering_types` string[]
- `offering_category` string
- `offering_category_ids` string[]
- `status` string
- `statuses` string[]
- `order_status` string[]
- `order_statuses` string[]
- `revenue_date_from` string, date
- `revenue_date_to` string, date
- `date_from` string, date-time
- `date_to` string, date-time
- `order_submitted_at_from` string, date-time
- `order_submitted_at_to` string, date-time
- `item_date_from` string, date
- `item_date_to` string, date
- `category_id` string[]
- `category_ids` string[]
- `brand_ids` string[]
- `revenue_centres` string[]
- `sold_by_id` string[]
- `sold_by_ids` string[]
- `practitioner_id` string[]
- `practitioner_ids` string[]
- `shop_category_ids` string[]
- `room_id` string[]
- `room_ids` string[]
- `zone_id` string[]
- `zone_ids` string[]
- `sort` string
- `sort_order` 'asc' | 'desc'

## Response `200`

The data was successfully retrieved.

- OrderItemsReportResponse
  - `data` OrderItem[], required
    - `id` string, object-id, required — The ID of the basket item.
    - `basket_id` string, object-id, required — The ID of the basket this item belongs to.
    - `order_ref` string, required — The order reference of the basket this item belongs to.
    - `order_status` string, required — The status of the basket this item belongs to.
    - `revenue_date` string, date, nullable, required — The revenue date of the basket this item belongs to.
    - `item_date` string, date-time, nullable, required — The date of this item. If the item is a booking, this will be the earliest date it takes place.
    - `created_at` string, date-time, nullable — The date and time this item was created.
    - `quantity` integer, required — The quantity of this item. This is 1 in the majority of cases.
    - `offering_id` string, object-id, required — The ID of the offering this item is for.
    - `offering_type` string, required — The type of offering this item is for.
    - `offering_name` string, required — The name of the offering this item is for.
    - `total_cost` integer, nullable — The total cost of the item, in minor units. Null for package items.
    - `net_total` integer, nullable — The net total of the item, in minor units. Null for package items.
    - `sold_by` SoldBy
      - `id` string, required
      - `name` string, required
      - `type` 'practitioner' | 'user' | '', required
    - `revenues` OrderItemRevenueSummary[] — A breakdown of revenue allocations for this item.
      - `revenue_centre` string, nullable, required — The key of the revenue centre.
      - `fee_type` 'joining_fee' | 'pro_rata', nullable — For membership sales, which part of the sale this line represents. Null for non-membership items.
      - `revenue_centre_name` string, nullable, required — A friendly name for the revenue centre.
      - `amount` integer, required — The amount allocated to this revenue centre, in minor units.
      - `net_amount` integer, required — The net amount allocated to this revenue centre, in minor units.
  - `meta` PaginationMeta, required — Counts and positional information for the current page of a list response. Use `current_page` and `last_page` to drive pagination UI, `total` for result counts, and `per_page` to confirm the page size the server actually applied (which may differ from the requested value when capped).
    - `from` integer, required — The item number from which this results set starts from
    - `to` integer, required — The item number from which this results set ends at
    - `total` integer, required — The total number of results
    - `current_page` integer, required — The current page number
    - `last_page` integer, required — The page number of the last result set
    - `per_page` integer, required — The number of results per page
    - `path` string, required — The path of this api request
  - `links` PaginationLinks, required — Hypermedia navigation links for paging through a list response. Each property is a fully-qualified URL that preserves the original query string (filters, sort, page size) and only swaps the `page` parameter. `next` and `prev` are `null` at the ends of the result set; `first` and `last` are always present.
    - `first` string, required — The url of the first page for the paginated results set
    - `next` string, nullable, required — The url of the next page for the paginated results set
    - `prev` string, nullable, required — The url of the previous page for the paginated results set
    - `last` string, required — The url of the last page for the paginated results set
  - `totals` OrderItemTotals, required
    - `total_items` integer, required — The total number of items matching the given filters.
    - `total_unique_orders` integer, required — The total number of unique orders matching the given filters.
    - `net_total` integer, required — The sum of net totals for all items matching the given filters, in minor units.

## Other responses

- `400` — The request failed.

---

[API](https://skmtc.dev/try/apis/trybe-api.md) · [All operations](https://skmtc.dev/try/apis/trybe-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/try/trybe-api/revisions/f37f92702da5/schema)
