Dev Docs

Choice groups

Choice groups

Endpoint

The endoint definition can be found in the common information.

The importconfigkey for the choice group import is defaultimportitemchoicegroupsV1.

Body

The valid json looks like that for a choice group:

[
{
"__id": "{{__id}}",
"__organizationalId": "{{__organizationalId}}",
"name": {
"i18nVariants": {
"en_US": "{{name_de_de}}",
"de_DE": "{{name_en_us}}"
}
},
"optional": {{optional}},
"multiSelect": {{multiselect}},
"modifications": [
{
"i18nVariants": {
"de_DE": "{{choice_1_name_de_de}}",
"en_US": "{{choice_1_name_en_us}}"
}
},
{
"i18nVariants": {
"de_DE": "{{choice_2_name_de_de}}",
"en_US": "{{choice_2_name_en_us}}"
}
},
{
"i18nVariants": {
"de_DE": "{{choice_3_name_de_de}}",
"en_US": "{{choice_3_name_en_us}}"
}
}
]
}
]


Definition

Field



__id

Type: NNNNN - string

Sample: "12345"

Description: The internal, unique ID for the item. Should be the same as the MainPosItemID

__organizationalId

Type:-

Sample: "Nli1bkf_0" or "-1"

Description: The unique ID for the concerning organization. If there are multiple stores and the item is only available in specific store, you need the organizationalId for the appropiate store.

texts/name_de_de
texts/name_en_us

Type: "TEXT" - string

Sample: "Choice group - ice"

Description: The name of the item.

unitlistprice

Type: NN.NN - numeric

Sample: 39.99

Description: The price of the item. Important: It is necessary to use a point as seperator.

texts/name

Type: "TEXT" - string

Sample: "Newspaper"

Description: The name of the item.

optional

Type: True / False - boolean

Sample: True

Description: Specifies if the option is required or optional.

multiselect

Type: True / False - boolean

Sample: True

Description: Specifies if multiple options can be selected or just one.

modifications_de_de
modifications_en_us

Type: "TEXT" - string

Sample: "Crushed ice"

Description: The name of the different choices.



Item w/ linked choice group

Endpoint

The endoint definition can be found in the common information.

The importconfigkey for the simple item import is defaultimportitemsV2.

Body

The valid json looks like that for a item w/ linked choice group:

[
{
"__id": "{{__id}}",
"__organizationalId": "{{__organizationalId}}",
"taxGroupID": "{{taxGroupID}}",
"unitlistprice": {{unitlistprice}},
"texts": {
"name": {
"i18nVariants": {
"de_DE": "{{name_de_de}}"
}
}
},
"image": [],
"discountFlag": {{discountFlag}},
"returnAble": {{returnAble}},
"manualPriceOverwriteAllowed": {{manualPriceOverwriteAllowed}},
"zeroPriceAllowed": {{zeroPriceAllowed}},
"manualPriceEntry": {{manualPriceEntry}},
"taxExemptProhibitedFlag": {{taxExemptProhibitedFlag}},
"mainPOSItemId": "{{mainPOSItemId}}",
"choiceGroups": [
{
"choiceGroupRelation": "{{choiceGroup_Relation}}"
}
],
"itemCategory": "{{itemCategory}}"
}
]


Definition

Field



__id

Type: NNNNN - string

Sample: "12345"

Description: The internal, unique ID for the item. Should be the same as the MainPosItemID

__organizationalId

Type:-

Sample: "Nli1bkf_0" or "-1"

Description: The unique ID for the concerning organization. If there are multiple stores and the item is only available in specific store, you need the organizationalId for the appropiate store.

taxGroupID

Type: "N" - string

Sample: "2"

Description: 1 - Item without tax

2 - Item with standard tax rate

3- Item with reduced tax rate

unitlistprice

Type: NN.NN - numeric

Sample: 39.99

Description: The price of the item. Important: It is necessary to use a point as seperator.

texts/name

Type: "TEXT" - string

Sample: "Newspaper"

Description: The name of the item.

image

Type: -

Sample: "Nli1bkf_A0"

Description: The internal id of the image.

discountFlag

Type: True / False - boolean

Sample: True

Description: Specifies whether an item is discountable or not.

returnAble

Type: True / False - boolean

Sample: True

Description: Specifies whether an item is returnable or not.

manualPriceOverwriteAllowed

Type: True / False - boolean

Sample: True

Description: Specifies whether an item price may be manually overwritten or not.

zeroPriceAllowed

Type: True / False - boolean

Sample: True

Description: Specifies whether an item may have a price of "0.00" or not.

manualPriceEntry

Type: True / False - boolean

Sample: True

Description: Specifies whether a window for manual price entry should be opened after scanning the item or not.

taxExemptProhibitedFlag

Type: True / False - boolean

Sample: True

Description: Specifies whether the item can be sold as tax free or not.

mainPOSItemId

Type: "NNNNN" - string

Sample: "12345" or "ABC-123

Description: The unique ID for the item, like a item or part number. This ID will be scanned at the POS.

itemGroup

Type: "NNNN" - string

Sample: "12345" or "ABC-123"

Description: Links this item to the selected item group.

buttonGroups

Type: string

Sample: "12345"

Description: The unique ID for the link to the assigned item groups

itemCategory

Type: "DEFAULT", "GIFTCARD", "VARIANTMASTER", "VARIANTSSUB", "SET", "OPTION"

Sample: "DEPOSIT"

Description: The category to which an item should be assigned. (e.g. default, set etc.)

choiceGroup_relation

Type: string

Sample: "12345"

Description: The unique ID of the choice group which has to be linked to the default item.



Example case

The Postman project below contains all the necessary files to illustrate an example use-case.

Download postman project "Deposit case"

  1. Import all the existing .json files into postman.

  2. Enter the following data in the included environments:

    - baseURL

    - username

    - password

    Leave all other entries unchanged.

  3. Open the imported "ITEM API | Choice group"-Collection in the postman app.

  4. On the top right corner, assign the imported "ITEM API | Choice group"-Environment to the opened collection.

  5. Click the "Send"-Button to send the post to your management console.

  6. Open the imported "ITEM API | Item w/ choice group"-Collection in the postman app.

  7. On the top right corner, assign the imported "ITEM API | Item w/ choice group"-Environment to the opened collection.

  8. Click the "Send"-Button to send the post to your management console.



Result: The item and the choice group should now appear in your management console. Furthermore, in the detail/edit view you should be able to see that the item w/ choice group has a link to "API Import | Choice Group".