---
title: "Get all purchase item types"
method: GET
path: "/purchase-item-types"
tags: ["Purchase item types"]
---

# Get all purchase item types

`GET /purchase-item-types`

Get a list of purchase item types accepted in the CareCloud platform. Each type determines how CareCloud processes the item within a purchase, including which loyalty rules and discounts apply.

> **Note:** Type names may vary between CareCloud projects and can be customized per deployment. The names listed here are approximate references only. Always use `type_id` to identify a purchase item type in your integration — do not rely on the name.

---

## Often used types

**Transaction in a store**
The standard type for items purchased in a brick-and-mortar retail store. This is the most commonly used type for in-store transactions. All standard loyalty and discount rules apply.

**E-commerce transaction**
The standard type for items purchased through an online store or e-commerce channel. This is the most commonly used type for online transactions. All standard loyalty and discount rules apply.

**Cancel**
Used to mark canceled purchase items. Assigning this type to an item identifies it as a cancellation within the purchase, making it easier to track and process.

---

## Special types with effects

These types alter the default loyalty and discount behavior in CareCloud.

**Item without reward application**
Items of this type are excluded from all reward and discount calculations — no discounts or rewards can be applied. However, loyalty points can still be collected for these items, and customers can use loyalty points to pay for them.

**OTC without loyalty**
Over-the-counter (OTC) refers to products sold without a prescription, most commonly in pharmacy retail. In wider retail contexts, the term also covers items sold at a service counter that are typically excluded from promotions, such as tobacco, lottery tickets, or gift cards. Items of this type do not earn loyalty points and are not eligible for any discounts or rewards.

**Point payments only**
Items of this type can only be paid for using loyalty points. No discounts or rewards are applied.

## Query parameters

- `count` integer
- `offset` integer
- `sort_field` string
- `sort_direction` 'ASC' | 'DESC'
- `text_id` string

## Headers

- `Accept-Language` string

## Response `200`

OK

- object
  - `data` object
    - `purchase_item_types` PurchaseItemType[] — List of the purchase item types.
      - `type_id` string — The unique ID of the purchase item type.
      - `name` string, required — Name of the purchase item type.
      - `text_id` string — Text ID of the purchase item type.
    - `total_items` integer — The number of all found purchase types.

## Other responses

- `400` — Bad input parameter. The response body's `error.error_data.invalid_params[]` array lists the parameters that caused the failure, each carrying a `reason` code. See the `BadRequestErrorBody` schema for the generic reason taxonomy. Operations with domain-specific business rules document additional reasons at the operation level.
- `401` — The client has invalid credentials or auth token.
- `403` — The client does not exist or the client tried to access an unauthorized property or resource.
- `404` — The resource was not found.
- `405` — The resource does not support the specified HTTP method.
- `429` — Too many requests - more than the resource limit.
- `500` — Server is not working as expected.
- `503` — Temporary state when the service is temporarily unavailable, overloaded or there is a maintenance window.

---

[API](https://skmtc.net/crmcarecloud/apis/rest-api-reference.md) · [All operations](https://skmtc.net/crmcarecloud/apis/rest-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/crmcarecloud/rest-api-reference/revisions/329c06dbf8d9/schema)
