Product
A purchasable article tracked in the catalog.
type Product implements Node {
id: ID!
parentId: ID
productNumber: String!
availableStock: Int
manufacturerNumber: String
gtin: String
name: String
description: String
openSupplierOrderQuantity: Int!
lastSupplierOrderAt: DateTime
reorderPoint: Int
targetMaximumQuantity: Int
reservedStock: Int
physicalStock: Int
stockNotAvailableForSale: Int
parent: Product
children(
first: Int = 10
after: String
filter: ProductFilterInput
): ProductConnection
canonicalProduct: Product
orderLineItems(
first: Int = 10
after: String
filter: OrderLineItemFilterInput
): OrderLineItemConnection
tags(
first: Int = 10
after: String
filter: TagFilterInput
): TagConnection
warehouseConfigurations(
first: Int = 10
after: String
): ProductWarehouseConfigurationConnection
stockLocationConfigurations(
first: Int = 10
after: String
): ProductStockLocationConfigurationConnection
}
Fields
Product.id ● ID! non-null scalar
Global identifier for this entity.
Product.parentId ● ID scalar
ID of the parent product when this row is a variant.
Product.productNumber ● String! non-null scalar
Public SKU. Unique across the catalog. Used in URLs, exports and POS workflows.
Product.availableStock ● Int scalar
Stock available for sale — physical stock minus open orders that have not yet been shipped. See physicalStock / reservedStock for the breakdown.
Product.manufacturerNumber ● String scalar
Manufacturer's part number (MPN), as printed on the article or in supplier catalogs.
Product.gtin ● String scalar
Global Trade Item Number (GTIN).
Product.name ● String scalar
Display name.
Product.description ● String scalar
Long description.
Product.openSupplierOrderQuantity ● Int! non-null scalar
Units that are on open supplier orders but have not yet been received against any goods receipt. Reflects expected incoming stock.
Product.lastSupplierOrderAt ● DateTime scalar
Timestamp of the most recent supplier order containing this product (any state).
Product.reorderPoint ● Int scalar
Stock level at or below which the product is considered to need reordering. Applies across all warehouses; per-warehouse thresholds are configured separately on the product-warehouse configuration.
Product.targetMaximumQuantity ● Int scalar
Target maximum stock quantity used as the replenish-to level for the product, or null when none is set.
Product.reservedStock ● Int scalar
Units already promised to open orders or other outbound processes. Subtracted from physicalStock to derive what is still sellable.
Product.physicalStock ● Int scalar
Total units actually counted in all warehouses, regardless of allocation. Updated by goods receipts, stockings and stock corrections.
Product.stockNotAvailableForSale ● Int scalar
Units excluded from the availability calculation (e.g. stored in warehouses flagged as not selling). Always smaller than or equal to physicalStock.
Product.parent ● Product object
Product.children ● ProductConnection object
Product.children.first ● Int scalar
Product.children.after ● String scalar
Product.children.filter ● ProductFilterInput input
Product.canonicalProduct ● Product object
Product.orderLineItems ● OrderLineItemConnection object
Product.orderLineItems.first ● Int scalar
Product.orderLineItems.after ● String scalar
Product.orderLineItems.filter ● OrderLineItemFilterInput input
Product.tags ● TagConnection object
Product.tags.first ● Int scalar
Product.tags.after ● String scalar
Product.tags.filter ● TagFilterInput input
Product.warehouseConfigurations ● ProductWarehouseConfigurationConnection object
Product.warehouseConfigurations.first ● Int scalar
Product.warehouseConfigurations.after ● String scalar
Product.stockLocationConfigurations ● ProductStockLocationConfigurationConnection object
Product.stockLocationConfigurations.first ● Int scalar
Product.stockLocationConfigurations.after ● String scalar
Interfaces
Node interface
Any entity that can be loaded by its global id through the node(id: ID!) query.
Returned By
product query ● setProductReorderConfiguration mutation
Member Of
Batch object ● GoodsReceiptLineItem object ● OrderLineItem object ● Product object ● ProductEdge object ● ProductSupplierConfiguration object ● ProductWarehouseConfiguration object ● Stock object ● SupplierOrderLineItem object ● WarehouseStock object