CompleteItem
Complete Item is an entity that is only created when the item is in ACTIVE state and at least one price specification of SALES type exists. ItemIdentifiers are optional.
type CompleteItem {
priceSpecifications: [PriceSpecification]
itemIdentifiers: [ItemIdentifier]
status: ItemStatus!
type: ItemType!
itemCategoryId: String
tags: [String]
brand: String
images: [ItemImage]
depositRuleId: String
assortmentPolicyType: AssortmentType!
assortmentTags: [String]
assortmentFrom: DateTime
assortmentTo: DateTime
availableInPos: Boolean!
needsLabelPrinting: Boolean!
needsApproval: Boolean!
needsManualSending: Boolean!
salesUnitOfMeasurement: UnitOfMeasure!
referencePriceUnitOfMeasurement: UnitOfMeasure!
referencePriceConversionFactor: Float!
netContent: Decimal
additionalProperties: [AdditionalProperty]
globalUniqueId: String
id: String
correlationId: String
tenantId: String
name: String
description: String
businessUnitId: String @deprecated
businessUnitIds: [String]
businessUnitGroupId: String
version: Int!
revision: Long!
created: DateTime!
createdBy: String
modified: DateTime!
modifiedBy: String
}
Fields
CompleteItem.priceSpecifications
● [PriceSpecification]
list object
List of price specifications. Contains at least one price specification of SALES type.
CompleteItem.itemIdentifiers
● [ItemIdentifier]
list object
List of item identifiers. Can be empty.
CompleteItem.status
● ItemStatus!
non-null enum
The status of the entity.
CompleteItem.type
● ItemType!
non-null enum
The type is used to separate items that need special characteristics like Pharmaceutical items, bundles or structures of items or services, etc.
CompleteItem.itemCategoryId
● String
scalar
The item category that the item is placed in.
CompleteItem.tags
● [String]
list scalar
List of searchable texts that can be used to search, group and filter the products.
CompleteItem.brand
● String
scalar
The brand of the item.
CompleteItem.images
● [ItemImage]
list object
A list of item images.
CompleteItem.depositRuleId
● String
scalar
The deposit rule defined for this item. A deposit rule provides information about deposit amount for the item when recycled for example in a reverse vending machine.
CompleteItem.assortmentPolicyType
● AssortmentType!
non-null enum
Enum with the assortment assignment for this item.
CompleteItem.assortmentTags
● [String]
list scalar
Tags which describe Assortment Policy. Makes it easier to search things.
CompleteItem.assortmentFrom
● DateTime
scalar
When the item is in assortment from. Can be null. When set to a future date the AssortmentType will be set to FutureAssortment until this datetime passes. After passed datetime the AssortmentType will be IN_ASSORTMENT.
CompleteItem.assortmentTo
● DateTime
scalar
When the item is in assortment to. Can be null. When set the AssortmentType will be switched to ExpiringAssortment after this datetime passes.
CompleteItem.availableInPos
● Boolean!
non-null scalar
Default value: Yes. Helper property for downstream consumers to know if the item is available for a POS. A calculated value possibly set by many services that might block the item from being sold. I.e. Assortment changes, Label handling, Approval process, etc. Must be set to No if any rules in any processors deem the price as not ready for POS. This might be customer specific rules defined later.
CompleteItem.needsLabelPrinting
● Boolean!
non-null scalar
Default value: No. Helper property for downstream consumers to know if the item needs label printing. Can also be used in the printing process to filter data when loading to render the labels. A calculated value possibly set by many services that might block the item from being available to certain services or consumers. Should be used in conjunction with the AvailableInPos property (Set to No). Must be set to Yes if any rules in Label processors deem Label printing is needed. This might be customer specific rules defined later.
CompleteItem.needsApproval
● Boolean!
non-null scalar
Default value: No. Helper property for downstream consumers to know if the item needs to be manually approved. Can also be used in the approval process to filter data when loading the items. A calculated value possibly set by many services that might block the item from being available to certain services or consumers. Should be used in conjunction with the AvailableInPos property (Set to No). Must be set to Yes if any rules in Approval processor deem approval is needed. This might be customer specific rules defined later.
CompleteItem.needsManualSending
● Boolean!
non-null scalar
Default value: No. Helper property for downstream consumers to know if the item needs to be manually sent to POS. Can also be used in the manual handling process to filter data when loading the items. A calculated value possibly set by many services that might block the item from being available to certain services or consumers. Should be used in conjunction with the AvailableInPos property (Set to No). Must be set to Yes if any rules in any processor deem manual handling is needed. This might be customer specific rules defined later.
CompleteItem.salesUnitOfMeasurement
● UnitOfMeasure!
non-null enum
The Unit of measure the Item is sold in. Usually, EA, KRM, GRM, LTR.
CompleteItem.referencePriceUnitOfMeasurement
● UnitOfMeasure!
non-null enum
This property is a unit of measurement to calculate a reference price.
CompleteItem.referencePriceConversionFactor
● Float!
non-null scalar
Dictates the factor to convert the price into price per unit as indicated in the ReferencePriceUnitOfMeasurement. I.e 0.5L bottle has a "Price per Litre of X" or A pack of dish washer tablets has a "Price per tablet of X".
CompleteItem.netContent
● Decimal
scalar
The net content of the product. This is a decimal value as needed, and should be evaluated together with UnitOfMeasure to make sense.
CompleteItem.additionalProperties
● [AdditionalProperty]
list object
List of customer specific values on the entity level.
CompleteItem.globalUniqueId
● String
scalar
Internal unique ID for CRUD operations and relations. A typical example is: TenantId_itemId_BusinessUnitGroupId
CompleteItem.id
● String
scalar
Id for the entity. Either external or internal
CompleteItem.correlationId
● String
scalar
ID for tracing an entity and/or a group of sub entities through the application. Might be external, and if missing from the producer of data the API will add an ID. Must be used in all logging and tracing.
CompleteItem.tenantId
● String
scalar
To support multi tenancy we need to be able to identify the customer that owns this information.
CompleteItem.name
● String
scalar
The name of the entity. This general property can replace the previous ArticleName, StoreName, CampaignName, etc.
CompleteItem.description
● String
scalar
The description of the entity.
CompleteItem.businessUnitId
● String
deprecated scalar
BusinessUnitId is obsolete. Use BusinessUnitIds property instead.
Used to assign the entity to tenant's specific business unit.
CompleteItem.businessUnitIds
● [String]
list scalar
The business units associated with the entity.
CompleteItem.businessUnitGroupId
● String
scalar
Used to assign the entity to a specific level in a business unit group hierarchy specific to the tenant.
CompleteItem.version
● Int!
non-null scalar
Version of the entity. Must be updated when there is a change to the entity. An ever increasing Integer.
Use revision instead of version if you need a more precise versioning mechanism.
CompleteItem.revision
● Long!
non-null scalar
Contains evergrowing number used to validate the version of an entity.
CompleteItem.created
● DateTime!
non-null scalar
When the object was first created. This timestamp will be set by the input API POST-endpoints before creating the AVRO data for processing.
CompleteItem.createdBy
● String
scalar
Who created. Will be an ID and must be looked up in the user DB. This ID will be set by the input API POST-endpoints before creating the AVRO data for processing.
CompleteItem.modified
● DateTime!
non-null scalar
When the object was modified. Will be updated along with the Version property. This timestamp will be set by the input API PUT and PATCH-endpoints before creating the AVRO data for processing.
CompleteItem.modifiedBy
● String
scalar
Who created or modified the object. Will be an ID and must be looked up in the user DB. This ID will be set by the input API PUT and PATCH-endpoints before creating the AVRO data for processing.
Returned By
completeItemById
query
Member Of
CompleteItemsConnection
object ● CompleteItemsEdge
object