Inventory policies

The Commerce Engine encompasses extensible services that enable you to customize commerce functionality.

Note

Do not extend or inherit from out-of-the-box policies; instead, create your own. You can change the values in a policy by modifying the PolicySet JSON or the Environment JSON, depending on where the policy is defined and then re-running Bootstrap.

The following policies can be configured through the Inventory plug-in.

Policy

Description

Properties / Default Values

GlobalInventoryPolicy

Defines global inventory settings, for example for stock level, and adjusting stock levels with orders.

CheckStockLevel \ false

SubtractStockOnOrder \ false

DefaultAllocationDateAvailable \ DateTimeOffset.MinValue

InventoryItemCachePolicy

Defines cache settings for some inventory lists.

Expiration \ 300000 (this represent milliseconds)

AllowCaching \ true

CacheName \ "InventoryItems"

KnownInventoryActionsPolicy

Defines the names of inventory entity view actions.

AddInventorySet { get set } \ "AddInvenorySet"

EditInventorySet { get set } \ "

EditInventorySet"

AssociateSellableItemToInventorySet { get set } \ "AssociateSellableItemToInventorySet"

DisassociateSellableItemFromInventorySet { get set } \ "DisassociateSellableItemToInventorySet"

EditSellableItemInventory { get set } \ "EditSellableItemInventory"

TransferInventory { get set } \ "TransferInventory"

AssociateCatalog { get set } \ "AssociateCatalog"

DisassociateCatalog { get set } \ "DisassociateCatalog"

KnownInventoryViewsPolicy

Defines the names of the inventory entity views.

InventoryDashboard { get set } \ "InventoryDashboard"

InventorySets { get set } \ "InventorySets"

InventorySetCatalogs { get set } \ "InventorySetCatalogs"

InventorySetSellableItems { get set } \ "InventorySetSellableItems"

SellableItemInventorySets { get set } \ "SellableItemInventorySets"

AssociateSellableItem { get set } \ "AssociateSellableItem"

EditInventory { get set } \ "EditInventory"

TransferInventory { get set } \ "TransferInventory")

Master { get set } \ "Master"

Details { get set } \ "Details"

Summary { get set } \ "Summary"

LoggingPolicy

Defines how inventory logging should behave.

LogInventoryItemFromContext \ false

LogGetDefaultInventoryItem \ false

Back-orderability

Note

Backorder functionality is not fully implemented in this release.

AvailabilityBackOrderedPolicy

Defines the availability for back-ordered items policy (i.e., availability date, quantity ordered, back-order limit).

GlobalBackorderablePolicy

Defines the global back-orderability policy (i.e. availability expiration).

BackorderableAvailabilityExpires / 3 (this represent hours)

KnownBackorderableListsPolicy

Defines the default list names for back-orders.

KnownBackorderableOrderStatusPolicy

Defines the default names for back-order status.

Pre-orderability

Note

Preorder functionality is not fully implemented in this release.

AvailabilityPreOrderedPolicy

Defines the availability for pre-ordered items policy (i.e., availability date, quantity ordered, pre-order limit).

GlobalPreorderablePolicy

Defines the global pre-orderability policy (i.e. availability expiration).

PreorderableAvailabilityExpires / 3 (this represent hours)

KnownPreorderableListsPolicy

Defines the default names for pre-order lists.

KnownPreorderableOrderStatusPolicy

Defines the default names for pre-order status.

Delayed Availability

KnownOrderDelayedAvailabilityStatusPolicy

Defines the known order delayed availability status policy.

KnownOrdersDelayedAvailabilityListsPolicy 

Defines the known split orders list policy.