» Item POST API Documentation

Create a New Standard Item: /items

POST
https://dev-api.exsited.com/api/v3/items
Try It Out
Purpose

This API creates a new item of type STANDARD and stores its details including codes, inventory settings, pricing method, and sale properties.

Use Case

Used by systems that need to automate or manage inventory by programmatically creating standard items for sale or warehouse purposes.

Path Parameters

No path parameters required for this endpoint.

Query Parameters

No query parameters required for this endpoint.

Request Body
{
  "items": {
    "id": "ITEM_ID",
    "type": "STANDARD",
    "name": "ITEM_NAME",
    "codes": [
      {
        "name": "CODE_NAME",
        "value": "CODE_VALUE"
      }
    ],
    "sale": {
      "isEnabled": "BOOLEAN_STRING",
      "pricing_method": "PRICING_METHOD",
      "charge": {
        "type": "CHARGE_TYPE"
      },
      "pricing": {
        "type": "PRICING_TYPE"
      },
      "default_sale_price": DEFAULT_PRICE
    },
    "inventories": {
      "isEnabled": "BOOLEAN_STRING",
      "warehouse_isEnabled": "BOOLEAN_STRING",
      "warehouses": [
        {
          "name": "WAREHOUSE_NAME",
          "quantity_available": "QUANTITY",
          "accounting_code": "ACCOUNTING_CODE"
        }
      ],
      "inventory_properties": {
        "quantity_available_for_sale_determination": "CRITERIA_COMMA_SEPARATED",
        "quantity_available_for_sale": "AVAILABILITY_TYPE"
      }
    }
  }
}
Field
Type
Description
id
String
Optional unique identifier for the item.
type
String
Type of item to create (STANDARD).
name
String
Name of the item.
codes
Array
List of identifying codes such as UPC.
sale.isEnabled
String
Whether the item is available for sale.
sale.pricing_method
String
Pricing method for sale (STANDARD).
sale.charge.type
String
Charge type (ONE_OFF).
sale.pricing.type
String
Sale pricing strategy (PER_UNIT_PRICING).
sale.default_sale_price
Float
Default sale price of the item.
inventories.isEnabled
String
Whether inventory tracking is enabled.
inventories.warehouse_isEnabled
String
Whether warehouse support is enabled.
inventories.warehouses[].name
String
Name of the warehouse.
inventories.warehouses[].quantity_available
String
Quantity available in the warehouse.
inventories.warehouses[].accounting_code
String
Accounting code for inventory.
inventories.inventory_properties.quantity_available_for_sale_determination
String
Determination logic for quantity available.
inventories.inventory_properties.quantity_available_for_sale
String
Quantity available category (UNLIMITED, etc.).
Response 

Returns the full details of the newly created item, including system-generated metadata, identifiers, and item-specific properties like codes and KPIs.Item includes essential information such as a unique identifier (id), current status (ACTIVE), display and internal names, and descriptive text outlining the item's purpose or characteristics. The type is defined as STANDARD, and the item is assigned a base_uom (Unit of Measurement) of "UNIT". Metadata fields track its creation and update history, such as created_by, created_on, last_updated_by, and last_updated_on, with version control and a globally unique identifier (uuid). Visual representation is supported through an image_uri, while form configuration and extensibility are handled by linked custom_form, custom_attributes, and custom_objects.Additional item configuration includes codes like UPCs, defined currencies indicating how the item can be transacted (e.g., used for sale or purchase in AUD), and inventory details such as associated warehouses, quantities on hand, and stock control settings. The sale and purchase sections elaborate on the financial setup, including pricing methods (PER_UNIT_PRICING), tax configurations, accounting codes, default pricing, dimensional specifications (width, height, length, weight), and associated profiles (e.g., discount, shipping). Advanced options like back-order support, tax exemption, charge types, and optional pricing variants are also configurable.

{
  "item": {
    "status": "ITEM_STATUS",
    "id": "ITEM_ID",
    "name": "ITEM_NAME",
    "display_name": "ITEM_DISPLAY_NAME",
    "description": "ITEM_DESCRIPTION",
    "type": "ITEM_TYPE",
    "base_uom": "BASE_UOM",
    "origin": "ORIGIN",
    "invoice_note": "INVOICE_NOTE",
    "created_by": "CREATED_BY",
    "created_on": "CREATED_ON_TIMESTAMP",
    "last_updated_by": "UPDATED_BY",
    "last_updated_on": "UPDATED_ON_TIMESTAMP",
    "uuid": "ITEM_UUID",
    "version": "ITEM_VERSION",
    "image_uri": "IMAGE_URI",
    "custom_form": {
      "name": "FORM_NAME",
      "uuid": "FORM_UUID"
    },
    "custom_attributes": [
      {
        "name": "CUSTOM_FIELD_NAME",
        "value": "CUSTOM_FIELD_VALUE"
      }
    ],
    "custom_objects": [],
    "codes": [
      {
        "name": "CODE_NAME",
        "value": "CODE_VALUE"
      },
      {
        "name": "ITEM-NUMBER",
        "value": "VALUE"
      }
    ],
    "uoms": [],
    "currencies": [],
    "kpis": {
      "total_orders": 0,
      "active_orders": 0,
      "total_revenue": 0,
      "total_collected": 0,
      "total_outstanding": 0,
      "total_overdue": 0
    }
  }
}

Configure Standard Sale Information for an Item: /items/{item_id}/sale

POST
https://dev-api.exsited.com/api/v3/items/{items_id}/sale
Try It Out
Purpose

This API sets or updates the standard sale configuration of a specific item. It allows defining pricing, tax settings, charge method, and sale duration for an item, ensuring that it is properly configured for transactions in different currencies.

Use Case

Use this endpoint when creating or updating an item’s sale configuration, especially for enabling its availability in a catalog with specific tax rules, pricing models, and charge properties. For instance, an administrator may use this to assign a fixed sale price with GST applied and define the item's validity period for promotional pricing.

Path Parameters
Parameter
Type
Description
item_id
string
Unique identifier of the item.
Query Parameters

No query parameters required for this endpoint.

Request Body
{
  "items": {
    "uoms": [],
    "currencies": [
      {
        "name": "CURRENCY_CODE",
        "default_for_sale": "BOOLEAN_STRING",
        "used_for_sale": "BOOLEAN_STRING"
      }
    ],
    "sale": {
      "enabled": "BOOLEAN_STRING",
      "invoice_note": "INVOICE_NOTE_TEXT",
      "accounting_code": "ACCOUNTING_CODE_NAME",
      "default_sale_currency": "CURRENCY_CODE",
      "default_sale_price": "DEFAULT_SALE_PRICE",
      "isTaxExemptWhenSold": "BOOLEAN_STRING",
      "pricing_method": "PRICING_METHOD",
      "tax_configuration": {
        "sale_price_entered_is_inclusive_of_tax": "BOOLEAN_STRING",
        "sale_price_is_based_on": "TAX_BASIS_TYPE", 
        "tax_code": {
          "uuid": "TAX_CODE_UUID",
          "code": "TAX_CODE_NAME",
          "rate": "TAX_RATE_PERCENTAGE"
        }
      },
      "charge": {
        "type": "CHARGE_TYPE"
      },
      "pricing": {
        "type": "PRICING_TYPE",
        "pricing_module": [
          {
            "price": "UNIT_PRICE",
            "currency": "CURRENCY_CODE"
          }
        ]
      },
      "use_on_sale_price": "BOOLEAN_STRING",
      "sale_price_variant": "PRICE_VARIANT_TYPE",
      "sale_price": "SALE_PRICE_VALUE",
      "start_date": "START_DATE_YYYY-MM-DD",
      "end_date": "END_DATE_YYYY-MM-DD"
    }
  }
}

Field
Type
Description
uoms
array
List of units of measure (can be empty).
currencies[].name
string
Currency code used for the sale.
currencies[].default_for_sale
string (boolean)
Indicates if this is the default currency for sale.
currencies[].used_for_sale
string (boolean)
Indicates if this currency is used for sale.
sale.enabled
string (boolean)
Enables or disables the sale of the item.
sale.invoice_note
string
Note to include on the invoice for this item.
sale.accounting_code
string
Accounting code used for sales (e.g., revenue category).
sale.default_sale_currency
string
Currency code used as default for sales.
sale.default_sale_price
string
Default price of the item in the specified currency.
sale.isTaxExemptWhenSold
string (boolean)
Indicates if item is tax-exempt.
sale.pricing_method
string
Pricing method (e.g., STANDARD).
sale.tax_configuration.sale_price_entered_is_inclusive_of_tax
string (boolean)
Whether tax is included in the sale price.
sale.tax_configuration.sale_price_is_based_on
string
The tax rule type (e.g., SALES_TAX, PURCHASE_TAX, SPECIFIC_TAX_CODE).
sale.tax_configuration.tax_code.uuid
string (UUID)
Unique ID of the tax code.
sale.tax_configuration.tax_code.code
string
Tax code label (e.g., GST).
sale.tax_configuration.tax_code.rate
string
Tax percentage rate.
sale.charge.type
string
Charge type (e.g., ONE_OFF).
sale.pricing.type
string
Type of pricing strategy (e.g., PER_UNIT_PRICING).
sale.pricing.pricing_module[].price
string
Price value in the respective currency.
sale.pricing.pricing_module[].currency
string
Currency code.
sale.use_on_sale_price
string (boolean)
Whether the custom sale price should be used.
sale.sale_price_variant
string
Variant type for the sale price (e.g., FIXED).
sale.sale_price
string
Custom sale price to apply.
sale.start_date
string (date)
Start date for the sale price.
sale.end_date
string (date)
End date for the sale price.
Response 

The response confirms the item's updated sale configuration, including validated accounting information, pricing breakdown, tax configuration, and status flags. This structure ensures that pricing rules and fiscal compliance are correctly applied to the item across relevant modules like invoicing and order management.

{
  "item": {
    "sale": {
      "enabled": "BOOLEAN_STRING",
      "enable_back_order": "BOOLEAN_STRING",
      "invoice_note": "INVOICE_NOTE_TEXT",
      "accounting_code": {
        "sales_revenue": "ACCOUNTING_CODE_NAME"
      },
      "default_sale_price": "DEFAULT_SALE_PRICE",
      "shipping_profile": "",
      "width": {
        "uom": "",
        "value": ""
      },
      "height": {
        "uom": "",
        "value": ""
      },
      "length": {
        "uom": "",
        "value": ""
      },
      "weight": {
        "uom": "",
        "value": ""
      },
      "tax_exempt_when_sold": "BOOLEAN_STRING",
      "pricing_method": "PRICING_METHOD",
      "tax_configuration": {
        "sale_price_entered_inclusive_of_tax": "BOOLEAN_STRING"
      },
      "pricing_profile": {},
      "charge": {
        "type": "CHARGE_TYPE",
        "properties": [
          {
            "name": "FULFILLMENT_PROPERTY_NAME",
            "value": "FULFILLMENT_PROPERTY_VALUE"
          }
        ]
      },
      "payment_properties": [
        {
          "name": "PAYMENT_PROPERTY_NAME",
          "value": "PAYMENT_PROPERTY_VALUE"
        }
      ],
      "discount_profile": {},
      "pricing": {
        "type": "PRICING_TYPE",
        "version": "PRICING_VERSION",
        "latest_used_pricing_version": "",
        "pricing_module": [
          {
            "price": "UNIT_PRICE",
            "currency": "CURRENCY_CODE",
            "last_purchase_price": "",
            "average_purchase_price": ""
          }
        ]
      },
      "use_on_sale_price": "BOOLEAN_STRING",
      "sale_price_variant": "",
      "sale_price": "",
      "start_date": "",
      "end_date": ""
    }
  }
}

Field
Type
Description
sale.enabled
string (boolean)
Indicates if the item is active for sale.
sale.enable_back_order
string (boolean)
Indicates if back orders are allowed.
sale.invoice_note
string
Note to include on the invoice.
sale.accounting_code.sales_revenue
string
Revenue category assigned.
sale.default_sale_price
string
Default sale price configured.
sale.shipping_profile
string
Shipping profile (empty if not set).
sale.width, height, length, weight
object
Dimensional attributes with uom and value.
sale.tax_exempt_when_sold
string (boolean)
Indicates if tax exemption is applied.
sale.pricing_method
string
Pricing strategy used.
sale.tax_configuration.sale_price_entered_inclusive_of_tax
string (boolean)
Whether the sale price includes tax.
sale.charge.type
string
Type of charge (e.g., ONE_OFF).
sale.charge.properties[].name/value
string
Additional charge properties and values.
sale.payment_properties[].name/value
string
Payment configuration properties.
sale.discount_profile
object
Discount rules, if defined.
sale.pricing.type
string
Type of pricing model (e.g., PER_UNIT_PRICING).
sale.pricing.version
string
Version of the pricing configuration.
sale.pricing.pricing_module[].price
string
Defined unit price.
sale.pricing.pricing_module[].currency
string
Currency used in pricing.
sale.use_on_sale_price
string (boolean)
If custom sale price is applied.
sale.sale_price_variant
string
Variant method used for pricing.
sale.sale_price
string
Sale-specific price (empty if not active).
sale.start_date
string (date)
Start date of special pricing (empty if not set).
sale.end_date
string (date)
End date of special pricing (empty if not set).

Deactivate an Item by ID:/items/id/deactivate

POST
https://dev-api.exsited.com/api/v3/items/id/deactivate
Try It Out
Purpose

This API is used to deactivate an existing item in the system. Once deactivated, the item becomes unavailable for ordering, and it is visually marked on the user interface with a red dot to indicate its inactive status.

Use Case

Use this endpoint in scenarios where an item must be discontinued, made temporarily unavailable, or archived from the sales catalog. For example, if a product is out of stock indefinitely or no longer part of the business offering, it can be deactivated to prevent accidental ordering and reflect its status clearly in the UI.

Path Parameters
Parameter
Type
Description
id
string
Unique identifier of the item.
Query Parameters

No query parameters required for this endpoint.

Request Body

This endpoint does not require a request body.

Response Description

Returns a 204 No Content response indicating that the item was successfully deactivated. No response body is returned. Once deactivated, the item will no longer be available for new orders, and its status will be visibly reflected in the UI with a red dot for clear identification.

Reactivate an Item by ID:/items/{id}/reactivate

POST
https://dev-api.exsited.com/api/v3/items/{id}/reactivate
Try It Out
Purpose

This API reactivates a previously deactivated item, making it eligible for use in sales transactions and removing the visual indicator of deactivation from the UI. It restores the item's active state in the catalog.

Use Case

Use this endpoint when an item that was previously disabled or removed from sale needs to be reinstated. For example, a product that was out of stock or discontinued can be brought back into circulation through reactivation. Once reactivated, it can again be used in order processing and will no longer display the red dot indicator in the user interface.

Path Parameters
Parameter
Type
Description
id
string
Unique identifier of the item.
Query Parameters

No query parameters required for this endpoint.

Request Body

This endpoint does not require a request body.

Response Description

Returns a 204 No Content response upon successful reactivation. The item becomes active again, available for order placement, and the red dot deactivation indicator is removed from the user interface.

Create Item Note: items/{item_id}/notes

POST
https://dev-api.exsited.com/api/v3items/{item_id}/notes
Try It Out
Purpose

This endpoint allows you to create a new note for a specific item, with the option to attach a file. It is used to record additional information, comments, or documentation against an item, while also supporting file attachments for richer context.

Use Case
  • Add textual notes for better documentation of an item.
  • Attach files such as receipts, certificates, manuals, or images to an item.
  • Facilitate collaboration by maintaining notes with associated documents.
  • Enhance audit trails by logging note content with supporting files.
Path Parameters
Parameter Type Required Description
item_id string Yes Unique identifier of the item to which the note is being added.
Query Parameters

This endpoint does not support query parameters.

Request Body

The request body must be sent as multipart/form-data because it includes both text and file fields.

Attribute Type Description
note string Content of the note.
file file File to attach with the note. Accepts common document and image formats.
Response

On success, the API returns an item object containing the newly created note object with its unique identifier (uuid). This confirms that the note has been successfully created and linked to the specified item. If a file was attached, it is also linked internally to the note, though the response only returns the note’s UUID for reference.

Response Body
{
    "item": {
        "notes": {
            "uuid": "{{note_uuid}}"
        }
    }
}
Attribute Type Description
item object Container object holding the created note.
item.notes object Object representing the created note.
item.notes.uuid string (UUID) Unique identifier of the newly created note.