IfRelatedQuantitiesAreNotPresent
Changed on:
5 Nov 2026
Overview
Conditionally sends an Event when no Inventory Quantity of the specified types and statuses exists for the same Fulfillment on the same Inventory Position.This is the "else" case for the IfRelatedQuantitiesArePresent Rule. Use both in the`INVENTORY_QUANTITY` `CREATE` ruleset, with the same Rule parameters.| Plugin Name | Inventory Reference Module |
|---|---|
| Namespace | [[account.id]].globalinventory |
- Product Catalogue workflow
- Inventory Catalogue workflow
- Control Group workflow
- Virtual Catalogue workflow
UI Description
For a quantity of types {quantityTypes}, send {eventName} if no inventory quantity of types {relatedQuantityTypes} in statuses {relatedQuantityStatuses} exists for the same fulfilment
Accepts
- INVENTORY_QUANTITY
Actions
- This Rule conditionally produces an inline SendEventAction
Rule parameters
| Name | Type | Description | Required |
`eventName` | `String` | The name of the Event to send when no related Inventory Quantity exists | Yes |
`quantityTypes` | `List<String>` | The Inventory Quantity types this check applies to, for example `RESERVED`. Inventory Quantities of other types are treated as "not present". If not provided, all types are checked. | No |
`relatedQuantityTypes` | `List<String>` | The Inventory Quantity types counted as related, for example `SALE`, `CORRECTION` | Yes |
`relatedQuantityStatuses` | `List<String>` | The Inventory Quantity statuses counted as related, for example `CREATED`, `ACTIVE` | Yes |
Event attributes
| Name | Type | Description | Required |
`inventoryPositionRef` | `String` | The Inventory Position Reference. If not provided, it is taken from the Inventory Quantity Reference. | No |
Exceptions
- This Rule throws a
`PropertyNotFoundException`when the Rule parameter(s) is not provided.
- This Rule throws a
`PropertyNotFoundException`when:`eventName`is not provided or is empty`relatedQuantityTypes`or`relatedQuantityStatuses`is not provided or is an empty list
- This Rule throws an
`InvalidPropertyTypeException`when`quantityTypes`,`relatedQuantityTypes`or`relatedQuantityStatuses`is not a list.
Configuration example
1{
2 "name": "[[account.id]].globalinventory.IfRelatedQuantitiesAreNotPresent",
3 "props": {
4 "eventName": "ActivateQuantity",
5 "quantityTypes": ["RESERVED"],
6 "relatedQuantityTypes": ["SALE", "CORRECTION"],
7 "relatedQuantityStatuses": ["CREATED", "ACTIVE"]
8 }
9}Detailed Technical Description
This Rule uses the same steps as the IfRelatedQuantitiesArePresent Rule to find related Inventory Quantities. It sends`eventName` inline when:- No related Inventory Quantity is found
- Or the check is skipped:
`quantityTypes`is provided and does not include the Inventory Quantity type- The Inventory Quantity type is one of the
`relatedQuantityTypes` - The Inventory Position Reference can't be resolved, or the Inventory Position isn't found
- The Inventory Quantity Reference doesn't follow
`{inventoryPositionRef}:{quantityType}:{fulfilmentId}`and no association is set
`IfRelatedQuantitiesArePresent` Rule doesn't handle leaves `CREATED` through this Rule.The Event carries the incoming Event attributes plus:`inventoryPositionRef`,`inventoryPositionType`,`inventoryPositionStatus`,`inventoryPositionOnHand`(when the Inventory Position was found)`inventoryQuantityRef``inventoryQuantityExists`(`false`)`inventoryQuantityTypes`(empty)