Configure Bulk Threshold Controls to manage Inventory and Virtual Positions Statuses
Author:
Kirill Gaiduk
Changed on:
28 Feb 2025
Key Points
- Use Bulk Threshold Controls to manage Out of Stock and At Risk Statuses for Inventory and Virtual Positions
- Create Control Groups for Inventory and/or Virtual Catalogs to respectively apply Bulk Threshold Controls
- Configure Bulk Threshold Controls with:
- Context
- Threshold
- Status
- and Execution Order

Steps
Create a Control Group
1. Create a Control Group.
Use the `createControlGroup`
mutation or do it via the UI.
2. Activate the Control Group.
Use the `updateControlGroup`
mutation or do it via the UI.
3. Assign the Control Group to a target Catalog(s):
- Use the
`updateInventoryCatalogue`
mutation (or`updateVirtualCatalogue`
mutation) or do it via the UI (Check the correspondent guides for Inventory and Virtual Catalogs update if needed). - Extend the Catalog(s)
`attributes`
using the following example:
1{
2"attributes": {
3 "name": "controlGroups",
4 "type": "JSON",
5 "value": ["yourControlGroupRef"]
6 }
7}
4. (Optional) Repeat the Steps 1-3 for all the and Virtual (`BASE`
and `AGGREGATE`
) Catalogs where Position Statuses (`ACTIVE`
, `OUT_OF_STOCK`
, `AT_RISK`
) to be defined with Bulk Threshold :

Create Bulk Threshold Controls
1. Create a Bulk Threshold Control to manage `OUT_OF_STOCK`
Status for or Virtual Positions.
Use the `createControl`
mutation with the following `CreateControlInput`
input parameter configuration:
1{
2"input": {
3 "ref": "BULK_TIOOS",
4 "type": "BULK_THRESHOLD",
5 "name": "Bulk Threshold Inventory Out of Stock",
6 "description": "",
7 "values": [
8 {
9 "name": "context",
10 "type": "CONTEXT",
11 "value": [
12 {
13 "type": "CATALOGUE",
14 "property": "ref",
15 "value": "yourInventoryCatalogueRef"
16 }
17 ]
18 },
19 {
20 "name": "threshold",
21 "type": "NUMBER",
22 "value": 0
23 },
24 {
25 "name": "status",
26 "type": "STRING",
27 "value": "OUT_OF_STOCK"
28 }
29 ],
30 "controlGroup": {
31 "ref": "yourControlGroupRef"
32 },
33 "executionOrder": 10
34 }
35}
2. Create a Bulk Threshold Control to manage `AT_RISK`
Status for or Virtual Positions.
Use the `createControl`
mutation with the following `CreateControlInput`
input parameter configuration:
1{
2"input": {
3 "ref": "BULK_TIAR",
4 "type": "BULK_THRESHOLD",
5 "name": "Bulk Threshold Inventory At Risk",
6 "description": "",
7 "values": [
8 {
9 "name": "context",
10 "type": "CONTEXT",
11 "value": [
12 {
13 "type": "CATALOGUE",
14 "property": "ref",
15 "value": "yourInventoryCatalogueRef"
16 }
17 ]
18 },
19 {
20 "name": "threshold",
21 "type": "NUMBER",
22 "value": 10
23 },
24 {
25 "name": "status",
26 "type": "STRING",
27 "value": "AT_RISK"
28 }
29 ],
30 "controlGroup": {
31 "ref": "yourControlGroupRef"
32 },
33 "executionOrder": 20
34 }
35}
3. Create a Bulk Threshold Control to manage the default `ACTIVE`
Status for or Virtual Positions.
Use the `createControl`
mutation with the following `CreateControlInput`
input parameter configuration:
1{
2"input": {
3 "ref": "BULK_TIA",
4 "type": "BULK_THRESHOLD",
5 "name": "Bulk Threshold Inventory Active",
6 "description": "",
7 "values": [
8 {
9 "name": "context",
10 "type": "CONTEXT",
11 "value": [
12 {
13 "type": "CATALOGUE",
14 "property": "ref",
15 "value": "yourInventoryCatalogueRef"
16 }
17 ]
18 },
19 {
20 "name": "status",
21 "type": "STRING",
22 "value": "ACTIVE"
23 }
24 ],
25 "controlGroup": {
26 "ref": "yourControlGroupRef"
27 },
28 "executionOrder": 30
29 }
30}
4. Repeat the Steps 1-3 to populate all the created with Bulk Threshold .
5. Activate all the Bulk Threshold created during the Steps 1-4.
Use the `updateControl`
mutation to set the `ACTIVE`
Status for the :

Update your Inventory
1. Update your with:
to ensure that the target And Virtual Catalogs have been recalculated and the created Bulk Threshold have been executed.
2. Verify the and Statuses.