# Loyverse

Loyverse is a point-of-sale (POS) system designed for small businesses, offering features like sales management, inventory tracking, and customer engagement tools.

- **Category:** ecommerce
- **Auth:** API_KEY
- **Tools:** 24
- **Triggers:** 0
- **Slug:** `LOYVERSE`
- **Version:** 20260211_00

## Tools

### Create or Update Category

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_CATEGORY`

Tool to create a new category or update an existing one. If the ID field is provided, the category will be updated; otherwise, a new category is created.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | The category ID. If provided, this will update the existing category instead of creating a new one. |
| `name` | string | Yes | The name of the category (required). |
| `color` | string ("GREY" | "RED" | "PINK" | "ORANGE" | "GREEN" | "BLUE" | "PURPLE") | No | Available category colors in Loyverse |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Customer

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_CUSTOMER`

Tool to create a new customer or update an existing one in Loyverse. Use when you need to add customer records or modify customer information. If the 'id' field is provided, it will update the existing customer; otherwise, it creates a new customer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Customer ID for update operation. If provided, the action will update the existing customer with this ID instead of creating a new one. |
| `city` | string | No | Customer's city. |
| `name` | string | Yes | Customer's full name (required). This is the primary identifier for the customer. |
| `note` | string | No | Additional notes or comments about the customer. |
| `email` | string | No | Customer's email address. Used for receipts and communication. |
| `region` | string | No | Customer's region, state, or province. |
| `address` | string | No | Customer's street address. |
| `postal_code` | string | No | Customer's postal or ZIP code. |
| `country_code` | string | No | Customer's country code in ISO 3166-1 alpha-2 format (two-letter code). |
| `phone_number` | string | No | Customer's phone number. Include country code for international numbers (e.g., +1234567890). |
| `customer_code` | string | No | Unique customer code or loyalty card number for identification. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Discount

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_DISCOUNT`

Tool to create or update a single discount. Use when creating new discounts or modifying existing ones. Supports FIXED_PERCENT (percentage-based), FIXED_AMOUNT (fixed amount), and VARIABLE discount types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | Yes | The discount name. |
| `type` | string ("FIXED_PERCENT" | "FIXED_AMOUNT" | "VARIABLE") | Yes | Discount type. FIXED_PERCENT for percentage-based discounts, FIXED_AMOUNT for fixed amount discounts, or VARIABLE for variable discounts. |
| `stores` | array | No | Array of store IDs where discount is applicable. If not provided, discount applies to all stores. |
| `discount_amount` | number | No | Fixed discount amount (required for FIXED_AMOUNT type). Value should be a positive number. |
| `discount_percent` | number | No | Discount percentage (required for FIXED_PERCENT type). Value should be between 0 and 100. |
| `restricted_access` | boolean | No | Whether discount has restricted access (requires password verification to apply). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Item

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_ITEM`

Tool to create a new item or update an existing one in Loyverse inventory. Include the item ID to update an existing item, or omit it to create a new one.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | UUID of the item. Include this to update an existing item, omit to create a new one. |
| `form` | string | No | Visual form/shape of the item (e.g., 'SQUARE', 'CIRCLE'). |
| `color` | string | No | Display color for the item in the POS (e.g., 'GREY', 'RED', 'PINK', 'ORANGE', 'GREEN', 'BLUE', 'PURPLE'). |
| `handle` | string | No | Human-readable handle/slug for the item. |
| `tax_ids` | array | No | List of tax UUIDs applied to this item. |
| `variants` | array | No | List of variants for this item with pricing and SKU info. |
| `image_url` | string | No | URL of the item's product image. |
| `item_name` | string | Yes | Display name of the item. This field is required. |
| `components` | array | No | List of component items if this is a composite item. |
| `category_id` | string | No | UUID of the category this item belongs to. |
| `track_stock` | boolean | No | Whether inventory tracking is enabled for this item. |
| `is_composite` | boolean | No | Whether this is a composite/bundle item. |
| `option1_name` | string | No | Name of the first variant option (e.g., 'Size'). |
| `option2_name` | string | No | Name of the second variant option (e.g., 'Color'). |
| `option3_name` | string | No | Name of the third variant option. |
| `reference_id` | string | No | External reference ID for integration purposes. |
| `modifiers_ids` | array | No | List of modifier UUIDs available for this item. |
| `sold_by_weight` | boolean | No | Whether the item is sold by weight. |
| `use_production` | boolean | No | Whether production workflow is enabled. |
| `primary_supplier_id` | string | No | UUID of the primary supplier. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Modifier

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_MODIFIER`

Tool to create or update a single modifier with options. If an ID is included in the request, it will update the existing modifier; otherwise, it creates a new one.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Modifier ID for updates. If provided, updates the existing modifier; if omitted, creates a new modifier. |
| `name` | string | Yes | Name of the modifier |
| `stores` | array | No | Array of store IDs where this modifier is available |
| `position` | integer | No | Display position of the modifier in the list |
| `modifier_options` | array | Yes | Array of modifier option objects. Each option requires at least a name; price defaults to 0.00 if not provided. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update POS Device

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_POS_DEVICE`

Tool to create a new POS device or update an existing one. If the request includes an ID, it updates the device; otherwise, it creates a new one.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Optional POS device ID (UUID). If provided, this will update an existing device instead of creating a new one. |
| `name` | string | Yes | Name of the POS device |
| `store_id` | string | Yes | The unique ID (UUID) of the store this POS device is connected to. Use list stores action to get store IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Supplier

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_SUPPLIER`

Tool to create a new supplier or update an existing one in Loyverse. Use when you need to register suppliers before purchases or modify supplier information. If the 'id' field is provided, it will update the existing supplier; otherwise, it creates a new supplier.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Supplier ID for update operation. If provided, the action will update the existing supplier with this ID instead of creating a new one. Use UUID format. |
| `city` | string | No | Supplier city, town, or village (max 64 characters). |
| `name` | string | Yes | Name of the supplier company (1-64 characters, required). This is the primary identifier for the supplier. |
| `note` | string | No | Additional notes about the supplier. |
| `email` | string | No | Supplier email address (1-100 characters). |
| `region` | string | No | Supplier region (state or province). Additional address component. |
| `contact` | string | No | Contact person at the supplier (1-64 characters). |
| `website` | string | No | Supplier website URL. |
| `address_1` | string | No | Supplier address line 1 (max 192 characters). |
| `address_2` | string | No | Supplier address line 2 (max 192 characters). |
| `postal_code` | string | No | Supplier postal code. |
| `country_code` | string | No | Supplier country code (ISO 3166-1 alpha-2). |
| `phone_number` | string | No | Supplier phone number (max 15 characters). Include country code for international numbers. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Tax

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_TAX`

Tool to create or update a single tax. If the ID field is provided, the tax will be updated; otherwise, a new tax is created. Use when setting up tax rates for stores.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | Tax ID for updates. If provided, updates the existing tax instead of creating a new one. |
| `name` | string | Yes | Business-facing label for the tax. |
| `rate` | number | Yes | The tax percentage rate (e.g., 5.545 for 5.545%, 10 for 10%). |
| `type` | string ("ADDED" | "INCLUDED") | Yes | Determines how the tax is applied. ADDED means tax is added on top of the price, INCLUDED means tax is already included in the price. |
| `stores` | array | No | Array of store IDs where this tax applies. If not provided, tax applies to all stores. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Variant

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_VARIANT`

Tool to create or update a single item variant in Loyverse. Use when you need to add product variations (like size, color) or modify existing variant details. If variant_id is provided, it updates the existing variant; otherwise, it creates a new one. Note: The parent item must have option names defined before variants can be created.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sku` | string | No | Stock Keeping Unit identifier for the variant. Used for inventory tracking. |
| `cost` | number | No | Cost price of the variant for profit margin calculations. |
| `stores` | array | No | Array of store-specific settings including pricing, availability, and stock levels for each store where this variant is sold. |
| `barcode` | string | No | Barcode for the variant, used for scanning at point of sale. |
| `item_id` | string | Yes | The ID of the item this variant belongs to. The item must have option names defined (option1_name, option2_name, or option3_name) before variants can be created. |
| `variant_id` | string | No | The ID of the variant to update. If provided, updates existing variant instead of creating new one. Also referred to as 'id' in some API responses. |
| `default_price` | number | No | Default selling price for the variant. Used unless overridden by store-specific pricing. |
| `option1_value` | string | No | Value for the first option (e.g., 'Small', 'Medium', 'Large'). Required if the parent item has option1_name defined. |
| `option2_value` | string | No | Value for the second option (e.g., 'Red', 'Blue'). Required if the parent item has option2_name defined. |
| `option3_value` | string | No | Value for the third option. Required if the parent item has option3_name defined. |
| `purchase_cost` | number | No | Purchase cost of the variant from suppliers. |
| `default_pricing_type` | string ("FIXED" | "VARIABLE") | No | Pricing type for a variant. |
| `reference_variant_id` | string | No | External reference ID for the variant, useful for third-party integrations. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Webhook

**Slug:** `LOYVERSE_CREATE_OR_UPDATE_WEBHOOK`

Tool to create a new webhook subscription or update an existing one in Loyverse. Use when you need to subscribe to events like items.update, inventory.update, receipts.create, customers.update, or shifts.create. If the 'id' field is provided, it will update the existing webhook; otherwise, it creates a new webhook.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | No | The webhook ID. If provided, this will update the existing webhook instead of creating a new one. |
| `url` | string | Yes | URI where the webhook should send the POST request when the event occurs (required). |
| `type` | string ("inventory_levels.update" | "items.update" | "customers.update" | "receipts.update" | "shifts.create") | Yes | The event type to subscribe to (required). Available types: inventory_levels.update, items.update, customers.update, receipts.update, shifts.create. |
| `status` | string ("ENABLED" | "DISABLED") | Yes | The webhook status (required). Set to ENABLED to activate the webhook or DISABLED to deactivate it. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Receipt

**Slug:** `LOYVERSE_CREATE_RECEIPT`

Tool to create a sales receipt with line items and payments. Use when you need to record a sale transaction in Loyverse.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `note` | string | No | Additional notes for the receipt |
| `order` | string | No | Order reference number or name |
| `source` | string | No | Source application name |
| `payments` | array | No | Array of payment methods and amounts for the receipt |
| `store_id` | string | Yes | UUID of the store where receipt is created |
| `line_items` | array | No | Array of line items to include in the receipt |
| `customer_id` | string | No | UUID of the customer associated with the receipt |
| `employee_id` | string | No | UUID of the employee processing the transaction |
| `receipt_date` | string | No | ISO 8601 date-time format for when the receipt was created. Defaults to current time if not specified |
| `total_discounts` | array | No | Array of discount objects to apply at the receipt level |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Refund

**Slug:** `LOYVERSE_CREATE_REFUND`

Tool to create a refund receipt for a sales receipt. Use when you need to process a refund for items from a previous sale. Only supports refunds for receipts paid by a single payment method (not integrated payments).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `source` | string | No | Source application or system creating this refund |
| `store_id` | string | No | Store ID where the refund is processed. If not provided, uses the original receipt's store. |
| `line_items` | array | Yes | List of line items to refund (at least one item required) |
| `employee_id` | string | No | Employee ID processing the refund. If not provided, uses the original receipt's employee. |
| `receipt_date` | string | No | Date and time for the refund receipt in ISO 8601 format. Defaults to current time if not provided. |
| `receipt_number` | string | Yes | The sales receipt number to create a refund for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Supplier

**Slug:** `LOYVERSE_CREATE_SUPPLIER`

Tool to create a new supplier. Use when you need to register a supplier in Loyverse before purchases.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `city` | string | No | Supplier city |
| `name` | string | Yes | Name of the supplier |
| `note` | string | No | Additional notes about the supplier |
| `email` | string | No | Supplier email address |
| `region` | string | No | Supplier region (state or province) |
| `contact` | string | No | Contact person at the supplier |
| `website` | string | No | Supplier website URL |
| `address_1` | string | No | Supplier address line 1 |
| `address_2` | string | No | Supplier address line 2 |
| `postal_code` | string | No | Supplier postal code |
| `country_code` | string | No | Supplier country code (ISO 3166-1 alpha-2) |
| `phone_number` | string | No | Supplier phone number in E.164 format (max 15 characters, digits only after the + prefix) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Category

**Slug:** `LOYVERSE_DELETE_CATEGORY`

Tool to delete a single category by ID. Use when you need to remove an unused or deprecated category.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique ID of the category to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Customer

**Slug:** `LOYVERSE_DELETE_CUSTOMER`

Tool to delete a single customer by their ID. Use after confirming the customer ID to remove an existing customer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `customer_id` | string | Yes | The unique ID of the customer to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Discount

**Slug:** `LOYVERSE_DELETE_DISCOUNT`

Tool to delete a single discount by ID. Use after confirming the discount ID to remove an existing discount.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `discount_id` | string | Yes | The unique ID of the discount to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Item

**Slug:** `LOYVERSE_DELETE_ITEM`

Tool to delete a single item by ID. Use when you need to remove an item from the inventory.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The unique ID of the item to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Item Image

**Slug:** `LOYVERSE_DELETE_ITEM_IMAGE`

Tool to delete a single image from an item. Use when you need to remove the image associated with a specific item.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The unique ID of the item from which to delete the image. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Modifier

**Slug:** `LOYVERSE_DELETE_MODIFIER`

Tool to delete a single modifier by its ID. Use when you need to remove an existing modifier.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `modifier_id` | string | Yes | The unique identifier of the modifier to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete POS Device

**Slug:** `LOYVERSE_DELETE_POS_DEVICE`

Tool to delete a single POS device by its ID. Use when you need to remove a POS device from the system.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pos_device_id` | string | Yes | The unique ID of the POS device to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Supplier

**Slug:** `LOYVERSE_DELETE_SUPPLIER`

Tool to delete a specific supplier by ID. Use after confirming the supplier ID to remove an existing supplier.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `supplier_id` | string | Yes | The unique ID of the supplier to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Tax

**Slug:** `LOYVERSE_DELETE_TAX`

Tool to delete a single tax by its ID. Use when you need to remove an existing tax configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tax_id` | string | Yes | The unique identifier of the tax to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Variant

**Slug:** `LOYVERSE_DELETE_VARIANT`

Tool to delete a single item variant by its ID. Use after confirming the variant ID to remove an existing variant.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `variant_id` | string | Yes | The unique ID of the variant to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webhook

**Slug:** `LOYVERSE_DELETE_WEBHOOK`

Tool to delete a single webhook by its ID. Use when you need to remove a webhook configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `webhook_id` | string | Yes | The unique ID of the webhook to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Category

**Slug:** `LOYVERSE_GET_CATEGORY`

Tool to get a single category by ID. Use when you need to fetch details of an existing category in Loyverse.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique ID of the category to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Customer

**Slug:** `LOYVERSE_GET_CUSTOMER`

Tool to get a single customer by their ID. Use when you need to fetch details of a specific customer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `customer_id` | string | Yes | The unique UUID of the customer to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Discount

**Slug:** `LOYVERSE_GET_DISCOUNT`

Tool to get a single discount by ID. Use after confirming the discount ID to retrieve its details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `discount_id` | string | Yes | UUID of the discount to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Employee

**Slug:** `LOYVERSE_GET_EMPLOYEE`

Tool to get a single employee by ID. Use after confirming the employee ID to fetch its details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique UUID of the employee to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Item

**Slug:** `LOYVERSE_GET_ITEM`

Tool to get a single item by ID including all its variants. Use when you need detailed information about a specific item from the Loyverse inventory.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `item_id` | string | Yes | The unique UUID of the item to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get JWKS

**Slug:** `LOYVERSE_GET_JWKS`

Tool to fetch JSON Web Key Set for OpenID Connect. Use when verifying Loyverse ID token signatures.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Merchant Info

**Slug:** `LOYVERSE_GET_MERCHANT_INFO`

Tool to get merchant information. Use after authenticating to retrieve merchant account details.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Modifier

**Slug:** `LOYVERSE_GET_MODIFIER`

Tool to get a single modifier by ID. Use when you need to fetch details of an existing modifier in Loyverse.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `modifier_id` | string | Yes | UUID of the modifier to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get OpenID Connect Discovery Document

**Slug:** `LOYVERSE_GET_OPEN_ID_CONFIGURATION`

Tool to retrieve the OpenID Connect discovery document. Use when integrating authentication and need endpoints and supported features.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Payment Type

**Slug:** `LOYVERSE_GET_PAYMENT_TYPE`

Tool to get a single payment type by its ID. Use when you need to fetch full details of a specific payment method before processing a transaction.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `payment_type_id` | string | Yes | The unique ID of the payment type to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get POS Device

**Slug:** `LOYVERSE_GET_POS_DEVICE`

Tool to retrieve details of a specific POS device by its ID. Use when you need POS device metadata after obtaining the device ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `pos_device_id` | string | Yes | The unique ID of the POS device to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Receipt

**Slug:** `LOYVERSE_GET_RECEIPT`

Tool to retrieve a single receipt by its receipt number. Use when you need detailed information about a specific receipt including line items, payments, and totals.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `receipt_number` | string | Yes | The unique receipt number to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Store

**Slug:** `LOYVERSE_GET_STORE`

Tool to retrieve details of a specific store by its ID. Use when you need store metadata (address, contact) after obtaining the store ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `store_id` | string | Yes | The unique ID of the store to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Supplier

**Slug:** `LOYVERSE_GET_SUPPLIER`

Tool to get a single supplier by their ID. Use when you need to fetch details of a specific supplier in Loyverse.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `supplier_id` | string | Yes | The unique UUID of the supplier to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Tax

**Slug:** `LOYVERSE_GET_TAX`

Tool to get a single tax by ID. Use when you need to retrieve details of a specific tax configuration in Loyverse.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tax_id` | string | Yes | The unique ID of the tax to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Variant

**Slug:** `LOYVERSE_GET_VARIANT`

Tool to get a single item variant by its ID. Use when you need detailed information about a specific variant from the Loyverse inventory.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `variant_id` | string | Yes | The unique UUID of the variant to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Webhook

**Slug:** `LOYVERSE_GET_WEBHOOK`

Tool to get a single webhook by its ID. Use when you need to retrieve details of a specific webhook configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `webhook_id` | string | Yes | The unique UUID of the webhook to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Categories

**Slug:** `LOYVERSE_LIST_CATEGORIES`

Tool to list categories with optional filtering and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of categories to return (1-250). Default is 50. |
| `cursor` | string | No | Cursor for pagination from a previous response |
| `show_deleted` | boolean | No | Include soft-deleted categories when true |
| `categories_ids` | string | No | Comma-separated list of category UUIDs to filter by (e.g., 'uuid1,uuid2') |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Customers

**Slug:** `LOYVERSE_LIST_CUSTOMERS`

Tool to get a list of customers. Use when you need paginated customer lists with optional filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter by customer's email address (exact match). |
| `limit` | integer | No | Maximum number of customers to return per request (1-250). Default is 50 if not specified. |
| `cursor` | string | No | Cursor for pagination. Use the cursor value from the previous response to fetch the next page of results. |
| `customer_id` | string | No | Filter by a specific customer ID to retrieve that customer's details. |
| `phone_number` | string | No | Filter by customer's phone number. Include country code for best results. |
| `created_at_max` | string | No | Filter customers created at or before this timestamp (ISO 8601 format). |
| `created_at_min` | string | No | Filter customers created at or after this timestamp (ISO 8601 format). |
| `updated_at_max` | string | No | Filter customers updated at or before this timestamp (ISO 8601 format). |
| `updated_at_min` | string | No | Filter customers updated at or after this timestamp (ISO 8601 format). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Customers

**Slug:** `LOYVERSE_LIST_CUSTOMERS2`

Tool to get a list of customers sorted by creation date (newest first). Use when you need to retrieve customer records with optional filtering by IDs, email, or date ranges.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter customers by email address (exact match) |
| `limit` | integer | No | Maximum number of customers to return per page. Used for pagination. |
| `cursor` | string | No | Pagination cursor from a previous response. Used for pagination. |
| `customer_ids` | string | No | Return only customers specified by a comma-separated list of customer IDs |
| `created_at_max` | string | No | Show resources created before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `created_at_min` | string | No | Show resources created after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_max` | string | No | Show resources updated before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_min` | string | No | Show resources updated after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Discounts

**Slug:** `LOYVERSE_LIST_DISCOUNTS`

Tool to list discounts. Use when fetching a paginated set of discounts for display or sync.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of discounts to return (>=1). |
| `offset` | integer | No | Number of discounts to skip for pagination (>=0). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Discounts 2

**Slug:** `LOYVERSE_LIST_DISCOUNTS2`

Tool to get a list of discounts with advanced filtering options. Use when you need to filter discounts by IDs, creation date, update date, or include deleted discounts. The list is sorted by created_at property in descending order (most recent first).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `discount_ids` | string | No | Return only discounts specified by a comma-separated list of IDs. |
| `show_deleted` | boolean | No | If true, include deleted discounts in the response. Default is false. |
| `created_at_max` | string | No | Show discounts created before this date (ISO 8601 format). |
| `created_at_min` | string | No | Show discounts created after this date (ISO 8601 format). |
| `updated_at_max` | string | No | Show discounts updated before this date (ISO 8601 format). |
| `updated_at_min` | string | No | Show discounts updated after this date (ISO 8601 format). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employees

**Slug:** `LOYVERSE_LIST_EMPLOYEES`

Tool to get a list of employees. Use when you need paginated employee lists with optional filters. Works after authenticating.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of employees to return per page |
| `cursor` | string | No | Cursor for pagination; pass value from previous response to fetch next page |
| `employee_ids` | string | No | Comma-separated list of employee UUIDs to filter results |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Employees (Advanced)

**Slug:** `LOYVERSE_LIST_EMPLOYEES2`

Tool to get a list of employees with advanced filtering options. Use when you need to filter employees by creation/update dates or view deleted employees.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Used for pagination. Number of employees to return per page. |
| `cursor` | string | No | Used for pagination. Cursor for pagination; pass value from previous response to fetch next page |
| `employee_ids` | string | No | Return only employees specified by a comma-separated list of IDs |
| `show_deleted` | boolean | No | Show deleted modifiers and modifier options |
| `created_at_max` | string | No | Show resources created before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `created_at_min` | string | No | Show resources created after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_max` | string | No | Show resources updated before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_min` | string | No | Show resources updated after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Inventory

**Slug:** `LOYVERSE_LIST_INVENTORY`

Retrieves inventory levels for item variants across stores in the Loyverse system. Use this to track stock quantities for specific variants at different store locations. Filter by store IDs, variant IDs, or date range to narrow results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of inventory levels to return per page. Default is 50, maximum is 250. |
| `cursor` | string | No | Pagination cursor from a previous response. Pass this value to retrieve the next page of results. |
| `store_ids` | string | No | Comma-separated list of store IDs (UUIDs) to filter inventory levels. Only inventory for these stores will be returned. |
| `variant_ids` | string | No | Comma-separated list of variant IDs (UUIDs) to filter inventory levels. Only inventory for these variants will be returned. |
| `updated_at_max` | string | No | Return only inventory levels updated on or before this ISO 8601 timestamp. |
| `updated_at_min` | string | No | Return only inventory levels updated on or after this ISO 8601 timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Items

**Slug:** `LOYVERSE_LIST_ITEMS`

Retrieves a paginated list of items (products) from the Loyverse inventory. Items are sorted by creation date in descending order (newest first). Use filters to narrow results by category, date range, or specific item IDs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of items to return per page. Default is 50, maximum is 250. |
| `cursor` | string | No | Pagination cursor from a previous response to retrieve the next page of results. |
| `items_ids` | string | No | Comma-separated list of item IDs (UUIDs) to filter by. |
| `category_id` | string | No | Filter items by category ID (UUID). |
| `show_deleted` | boolean | No | If true, include soft-deleted items in the response. Default is false. |
| `created_at_max` | string | No | Return only items created on or before this ISO 8601 timestamp. |
| `created_at_min` | string | No | Return only items created on or after this ISO 8601 timestamp. |
| `updated_at_max` | string | No | Return only items updated on or before this ISO 8601 timestamp. |
| `updated_at_min` | string | No | Return only items updated on or after this ISO 8601 timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Modifiers

**Slug:** `LOYVERSE_LIST_MODIFIERS`

Tool to list modifiers. Use when you need a paginated list of modifiers with optional filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ids` | string | No | Comma-separated list of modifier IDs to filter results |
| `limit` | integer | No | Number of modifiers to return per page (1-250) |
| `cursor` | string | No | Cursor for pagination; use value from previous response to fetch next page |
| `updated_at_max` | string | No | Filter modifiers updated before this datetime (ISO 8601) |
| `updated_at_min` | string | No | Filter modifiers updated after this datetime (ISO 8601) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Modifiers (Enhanced)

**Slug:** `LOYVERSE_LIST_MODIFIERS2`

Tool to get a list of modifiers sorted by created_at in descending order. Use when you need to retrieve modifiers with advanced filtering options including creation/update dates and deleted items.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Used for pagination. Number of modifiers to return per page (1-250) |
| `cursor` | string | No | Used for pagination. Cursor for pagination; use value from previous response to fetch next page |
| `modifier_ids` | string | No | Return only modifiers specified by a comma-separated list of IDs |
| `show_deleted` | boolean | No | Show deleted modifiers and modifier options |
| `created_at_max` | string | No | Show resources created before date (ISO 8601 format) |
| `created_at_min` | string | No | Show resources created after date (ISO 8601 format) |
| `updated_at_max` | string | No | Show resources updated before date (ISO 8601 format) |
| `updated_at_min` | string | No | Show resources updated after date (ISO 8601 format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payment Types

**Slug:** `LOYVERSE_LIST_PAYMENT_TYPES`

Tool to list payment types. Use when you need to fetch available payment methods with optional filters and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of payment types to return (1-250) |
| `cursor` | string | No | Cursor for pagination; pass value from previous response to retrieve next page |
| `show_deleted` | boolean | No | Whether to include soft-deleted payment types |
| `created_at_max` | string | No | Only include payment types created at or before this ISO 8601 timestamp |
| `created_at_min` | string | No | Only include payment types created at or after this ISO 8601 timestamp |
| `updated_at_max` | string | No | Only include payment types updated at or before this ISO 8601 timestamp |
| `updated_at_min` | string | No | Only include payment types updated at or after this ISO 8601 timestamp |
| `payment_type_ids` | string | No | Comma-separated list of payment type UUIDs to filter results |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List POS Devices

**Slug:** `LOYVERSE_LIST_POS_DEVICES`

Tool to get a list of POS devices sorted by creation date in descending order. Use when you need to retrieve POS device information for store management or reporting.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `store_id` | string | No | Filter POS devices by store ID (UUID). If not provided, returns devices from all stores. |
| `show_deleted` | boolean | No | If true, include soft-deleted POS devices in the response. Default is false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Receipts

**Slug:** `LOYVERSE_LIST_RECEIPTS`

Tool to retrieve a list of receipts. Use when you need to fetch receipts with optional filters and handle pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of receipts to return (1-250) |
| `order` | string | No | Filter receipts by order ID |
| `cursor` | string | No | Cursor for pagination; pass value from previous response to fetch next page |
| `source` | string | No | Filter receipts by source application |
| `store_id` | string | No | Filter receipts by store ID |
| `created_at_max` | string | No | Include receipts created before this ISO 8601 date/time |
| `created_at_min` | string | No | Include receipts created at or after this ISO 8601 date/time |
| `updated_at_max` | string | No | Include receipts updated before this ISO 8601 date/time |
| `updated_at_min` | string | No | Include receipts updated at or after this ISO 8601 date/time |
| `receipt_numbers` | string | No | Comma-separated list of receipt numbers to filter results |
| `since_receipt_number` | string | No | Return only receipts after this receipt number |
| `before_receipt_number` | string | No | Return only receipts before this receipt number |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Shifts

**Slug:** `LOYVERSE_LIST_SHIFTS`

Tool to list shifts. Use when you need to retrieve shift records for reporting or auditing with optional filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of shifts to return (1-250) |
| `cursor` | string | No | Cursor for pagination; use the cursor from previous response to fetch next page |
| `store_ids` | string | No | Comma-separated list of store IDs to filter shifts |
| `created_at_max` | string | No | Show shifts opened before this date/time (ISO 8601) |
| `created_at_min` | string | No | Show shifts opened at or after this date/time (ISO 8601) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Stores

**Slug:** `LOYVERSE_LIST_STORES`

Tool to get a list of stores sorted by creation date (newest first). Use when you need to retrieve store information across multiple locations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `store_ids` | string | No | Return only stores specified by a comma-separated list of IDs. |
| `show_deleted` | boolean | No | If true, include deleted stores in the response. Default is false. |
| `created_at_max` | string | No | Show stores created on or before this timestamp (ISO 8601 format). |
| `created_at_min` | string | No | Show stores created on or after this timestamp (ISO 8601 format). |
| `updated_at_max` | string | No | Show stores updated on or before this timestamp (ISO 8601 format). |
| `updated_at_min` | string | No | Show stores updated on or after this timestamp (ISO 8601 format). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Suppliers

**Slug:** `LOYVERSE_LIST_SUPPLIERS`

Tool to retrieve a list of suppliers. Use when you need a paginated supplier directory with optional filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of suppliers to return (1-250). Default is 50. |
| `cursor` | string | No | Pagination cursor from a previous request. Use to fetch the next page. |
| `show_deleted` | boolean | No | Whether to include soft-deleted suppliers in the results. |
| `suppliers_ids` | string | No | Return only suppliers specified by a comma-separated list of IDs |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Suppliers 2

**Slug:** `LOYVERSE_LIST_SUPPLIERS2`

Tool to get a list of suppliers sorted by creation date (newest first). Use when you need paginated supplier data with optional ID filtering.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of suppliers to return per page (1-250). Used for pagination. Default is 50. |
| `cursor` | string | No | Pagination cursor from a previous request. Use to fetch the next page of results. |
| `show_deleted` | boolean | No | Whether to include soft-deleted suppliers in the results. Default is false. |
| `suppliers_ids` | string | No | Return only suppliers specified by a comma-separated list of IDs |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Taxes

**Slug:** `LOYVERSE_LIST_TAXES`

Tool to list taxes. Use when you need to fetch tax configurations with pagination for reporting or synchronization purposes. Example: "List taxes with limit 100 and offset 0".

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Number of results to return per page. Must be between 1 and 250. Default is 50. |
| `offset` | integer | No | Initial index from which to return the results (zero-based). Default is 0. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Taxes

**Slug:** `LOYVERSE_LIST_TAXES2`

Tool to get a list of taxes sorted by creation date (newest first). Use when you need to retrieve tax records with optional filtering by IDs or date ranges.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tax_ids` | string | No | Return only taxes specified by a comma-separated list of IDs |
| `show_deleted` | boolean | No | Show deleted modifiers and modifier options |
| `created_at_max` | string | No | Show resources created before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `created_at_min` | string | No | Show resources created after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_max` | string | No | Show resources updated before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_min` | string | No | Show resources updated after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Variants

**Slug:** `LOYVERSE_LIST_VARIANTS`

Retrieves a paginated list of item variants from the Loyverse inventory. Variants represent different options of a product (e.g., size, color combinations). Use filters to narrow results by parent item, date range, or paginate through results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of variants to return per page. Default is 100, maximum is 250. |
| `cursor` | string | No | Pagination cursor from a previous response. Pass this value to retrieve the next page of results. |
| `item_id` | string | No | Filter variants by the parent item ID (UUID). Returns only variants belonging to this item. |
| `created_at_max` | string | No | Return only variants created on or before this ISO 8601 timestamp. |
| `created_at_min` | string | No | Return only variants created on or after this ISO 8601 timestamp. |
| `updated_at_max` | string | No | Return only variants updated on or before this ISO 8601 timestamp. |
| `updated_at_min` | string | No | Return only variants updated on or after this ISO 8601 timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Variants

**Slug:** `LOYVERSE_LIST_VARIANTS2`

Tool to get a list of item variants sorted by creation date (newest first). Use when you need comprehensive filtering by variant IDs, item IDs, SKU, or date ranges, including deleted variants.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sku` | string | No | Filter variants by SKU (Stock Keeping Unit) code |
| `limit` | integer | No | Maximum number of variants to return per page. Used for pagination. Default is 50. |
| `cursor` | string | No | Pagination cursor from a previous response. Used for pagination. |
| `items_ids` | string | No | Return only variants attached to specified item IDs (comma-separated UUIDs) |
| `show_deleted` | boolean | No | Show deleted modifiers and modifier options. Default is false. |
| `variants_ids` | string | No | Return only variants specified by a comma-separated list of variant IDs (UUIDs) |
| `created_at_max` | string | No | Show resources created before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `created_at_min` | string | No | Show resources created after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_max` | string | No | Show resources updated before date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |
| `updated_at_min` | string | No | Show resources updated after date (ISO 8601 format, e.g: 2020-03-30T18:30:00.000Z) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webhooks

**Slug:** `LOYVERSE_LIST_WEBHOOKS`

Tool to list webhooks. Use when you need to retrieve all configured webhooks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of webhooks to return per page. |
| `offset` | integer | No | Number of webhooks to skip for pagination. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webhooks (v2)

**Slug:** `LOYVERSE_LIST_WEBHOOKS2`

Tool to get a list of webhooks created by the application. Use when you need to retrieve webhook configurations for the current application.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Inventory

**Slug:** `LOYVERSE_UPDATE_INVENTORY`

Tool to batch update inventory levels for item variants at specific stores. Use when you need to set absolute stock quantities (not deltas) for one or more variant-store combinations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `inventory_levels` | array | Yes | List of inventory level updates to apply. Each entry specifies a variant, store, and new stock level. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload Item Image

**Slug:** `LOYVERSE_UPLOAD_ITEM_IMAGE`

Tool to upload a single image for an item. Accepts image/png or image/jpeg content types. Use after confirming the item ID to upload product images.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `image` | object | Yes | Image file to upload. FileUploadable object where 'name' should be the image filename (e.g., 'product.jpg', 'item.png'). Accepts image/png or image/jpeg content types. |
| `item_id` | string | Yes | The unique UUID of the item to upload the image to. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | object | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
