v48

latestOpenAPI 3.1.0raw.githubusercontent.com2026-07-262621423.8 MB

Create an item group

Creates a new item group.

post/quickbooks-desktop/item-groups

Headers

Conductor-End-User-Idstring required

The ID of the End-User to receive this request.

Example:end_usr_1234567abcdefg

The ID of the End-User to receive this request.

Request body

namestring required

The case-insensitive unique name of this item group, unique across all item groups.

NOTE: Item groups do not have a fullName field because they are not hierarchical objects, which is why name is unique for them but not for objects that have parents.

Maximum length: 31 characters.

isActiveboolean

Indicates whether this item group is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to true.

descriptionstring

The item group's description that will appear on sales forms that include this item.

unitOfMeasureSetIdstring

The unit-of-measure set associated with this item group, which consists of a base unit and related units.

shouldPrintItemsInGroupboolean required

Indicates whether the individual items in this item group and their separate amounts appear on printed forms.

externalIdstring uuid

A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.

IMPORTANT: This field must be formatted as a valid GUID; otherwise, QuickBooks will return an error.

Example request

{
  "name": "Office Supplies Bundle",
  "barcode": {
    "value": "012345678905"
  },
  "isActive": true,
  "description": "Complete office starter kit with essential supplies for new employees.",
  "unitOfMeasureSetId": "80000001-1234567890",
  "shouldPrintItemsInGroup": true,
  "externalId": "12345678-abcd-1234-abcd-1234567890ab",
  "lines": [
    {
      "itemId": "80000001-1234567890",
      "quantity": 5,
      "unitOfMeasure": "Each"
    }
  ]
}

Response

Returns the newly created item group.

idstring required

The unique identifier assigned by QuickBooks to this item group. This ID is unique across all item groups but not across different QuickBooks object types.

objectType'qbd_item_group' required

The type of object. This value is always "qbd_item_group".

createdAtstring required

The date and time when this item group was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.

updatedAtstring required

The date and time when this item group was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.

revisionNumberstring required

The current QuickBooks-assigned revision number of this item group object, which changes each time the object is modified. When updating this object, you must provide the most recent revisionNumber to ensure you're working with the latest data; otherwise, the update will return an error.

namestring required

The case-insensitive unique name of this item group, unique across all item groups.

NOTE: Item groups do not have a fullName field because they are not hierarchical objects, which is why name is unique for them but not for objects that have parents.

barcodestring nullable required

The item group's barcode.

isActiveboolean required

Indicates whether this item group is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to true.

descriptionstring nullable required

The item group's description that will appear on sales forms that include this item.

shouldPrintItemsInGroupboolean required

Indicates whether the individual items in this item group and their separate amounts appear on printed forms.

specialItemType'finance_charge' | 'reimbursable_expense_group' | 'reimbursable_expense_subtotal' nullable required

The type of special item for this item group.

externalIdstring nullable required

A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.

Example response

{
  "id": "80000001-1234567890",
  "objectType": "qbd_item_group",
  "createdAt": "2025-01-01T12:34:56+00:00",
  "updatedAt": "2025-02-01T12:34:56+00:00",
  "revisionNumber": "1721172183",
  "name": "Office Supplies Bundle",
  "barcode": "012345678905",
  "isActive": true,
  "description": "Complete office starter kit with essential supplies for new employees.",
  "unitOfMeasureSet": {
    "id": "80000001-1234567890",
    "fullName": "Weight Units"
  },
  "shouldPrintItemsInGroup": true,
  "specialItemType": "finance_charge",
  "externalId": "12345678-abcd-1234-abcd-1234567890ab",
  "lines": [
    {
      "item": {
        "id": "80000001-1234567890",
        "fullName": "Widget A"
      },
      "quantity": 5,
      "unitOfMeasure": "Each"
    }
  ],
  "customFields": [
    {
      "ownerId": "0",
      "name": "Customer Rating",
      "type": "string_1024_type",
      "value": "Premium"
    }
  ]
}