You are on page 1of 4

Manual for logistics

Introduction to the integration


The Online Auto Out-Of-Stock integration automatically marks Magento products as "out-of-stock" based inventory-data from NAV and Magento.
The picture below summaries the integration from a high-level perspective. It will be rolled-out market-by-market during Q3 2019.

For markets where Auto Online Out Of Stock is enabled, an integration take control of the "out-of-stock"-attribute in Magento. The integration will
calculate available stock every five minutes. If any product meets specific criteria, the integration will take action:

IF the sellable inventory of a product passes below a certain threshold, the integration will automatically set this product's
"out-of-stock"-attribute to true .Specifically, when the "Sellable Stock "< "Out Of Stock Threshold".
IF the sellable inventory of a product passes above a certain threshold, the integration will automatically set this product's
"out-of-stock"-attribute to false . Specifically, when the "Sellable Stock "> "In Stock Threshold".

The "In Stock Threshold" and "Out Of Stock Threshold" values are controlled by the Supply Planning department. They will be different for various
products and location.

Walk-through of dashboards and tools


Magento panel

The Magento admin panel will work exactly as before, except that the "out-of-stock" product attribute will be controlled by the integration.

It is still be possible to change the "out-of-stock"-attribute manually. We have decided to provide this option for emergencies, just in case the
integration does something unexpected. See the chapter "troubleshooting".

Tableau-report

This section will be added at a later stage.


Teams channel

Every time the integration changes anything in Magento, it will post a message into a teams channel.

Team: Auto Out Of Stock


Channel: Automatic Stock Changes

Navision

If the Tableau-report shows log/negative NAV Sellable Stock for any product, additional investigation can be done via the Stockkeeping Unit card
in NAV. For every SKU, it is possible to review all attributes involved in the NAV Sellable Stock calculation. The image below shows an example
SKU-card. Assuming that no pending orders exist in Magento, the the Sellable Stock for this SKU is 188 - 1 - 0 - 0 - 0 = 187.

Business logic of Auto Out-Of-Stock calculation


Every five minutes, for every SKU (e.g. article and location), the following business logic will be executed.

1. Fetch the calculated Sellable Stock for the SKU from previous integration execution (usually 5 minutes ago).
2. Calculate current Sellable Stock (see chapter below).
3. identify inStock-threshold and outOfStock-threshold for this particular SKU (see chapter below).
a. IF current sellable stock < outOfStock-threshold AND previous sellable stock > outOfStock-threshold THEN mark product as
out-of-stock in Magento.
b. ELSE IF current sellable stock > inStock-threshold AND previous sellable stock < inStock-threshold THEN mark product as
in-stock in Magento.
c. ELSE do nothing
4. Finally, save the current Sellable Stock for next time.

Please note that the integration only modifies Magento configuration once every time a product has passed the inStock/outOfStock-thresholds.
For products that are already out-of-stock/in-stock, the integration will not check that the Magento-configuration still matches. This enables
manual overrides from within the Magento admin panel.

Attributes are involved in the Auto Out-Of-Stock calculation


Attributes involved

The following attributes are involved in the Auto Out-Of-Stock calculation.

Attribute NAV-reference NAV API reference


(per article and location) ($filter=Location_Code eq 'location' and Item_no eq
'itemnumber')

Inventory Card: Stockkeeping Unit Endpoint: /StockKeeping


Column: Inventory Field: Inventory

Quantity on Sales Order Card: Stockkeeping Unit Endpoint: /StockKeeping


Column: Qty. On Sales Order Field: Qty_on_Sales_Order

Quantity on Transfer Order Card: Stockkeeping Unit Endpoint: /StockKeeping


Column: Trans. Ord. Shipment (Qty.) Field: Trans_Ord_Shipment_Qty

Quantity on Assembly Order as Card: Stockkeeping Unit Endpoint: /StockKeeping


Component Column: Qty. On Asm. Component Field: Qty_on_Asm_Component

Magento Non Submitted Orders n/a (stored in Magento) n/a (from Magento

Calculation formula

(Sellable Stock) = (Inventory) - (Quantity on Sales Order) - (Quantity on Transfer Order) - (Quantity on Assembly Order as Component) - (Pending
orders)

How thresholds are configured


Every location will have a default out-of-stock threshold / in-stock threshold. For SKU:s that sell very high/low-volumes, it is possible to configure
custom-values ("override"-values). If no override-values exist for a SKU, the location default SKU will be used.

Attribute Description How to handle in How to handle globally


Japan pilot

Locale default When Sellable Stock goes below this value, the SKU will Parameter in New NAV-field on location card (under
out-of-stock Threshold be set out-of-stock (assuming no SKU-specific value has integration. development).
been defined).

Locale default in-stock When Sellable Stock goes above this value, the SKU will Parameter in New NAV-field on location card (under
Threshold be set in-stock (assuming no SKU-specific value has integration. development).
been defined).

SKU specific Override value for a specific SKU. CSV-file uploaded New NAV-field on SKU-card (under
out-of-stock Threshold to integration. development).

SKU specific in-stock Override value for a specific SKU. CSV-file uploaded New NAV-field on SKU-card (under development)
Threshold to integration.

Watch-outs and best-practises


Items with BOM (e.g. gift-boxes etc.)

The Auto Out-of-Stock integration takes a simplified approach to BOM-items (e.g. DW005xxxxx items). Specifically, the integration assumes that
all BOM-items are Assembled-to-Order.

Magento will only supply Pending Order Counts for products that don't have a BOM (e.g. watches, straps etc.). However, these numbers
will include pending orders of BOM-items (e.g. gift-boxes), based on their BOM-components. For example, the Pending Order count for
product "A" will include pending orders of both product "A" and pending orders for product "B" if product "A" exists as a BOM-line on
product "B".
When the integration changes the stock-status for a Non-BOM item, the stock-status of all items that have the affected item as a
BOM-line will also be changed. For example, when the integration changes stock-status of a Non-BOM product "A", it will also change the
stock-status of all BOM-products "B" that have product "A" as a BOM-line.

It will still be possible to use Assemble-to-Stock, as preparation for peak sales periods. However, this will only work if we are 100% sure that the
remaining individual components will not run-out individually. This assumption has been aligned with Jan Van Eimern.

Watch-outs regarding PO's, TO's etc.

The following best-practises are important to follow:

It is important to do "receipt of goods" for PO:s quickly, since otherwise the increased stock levels will not be taken into account.
It is important remove old/outdated transfer orders from warehouses, since these tie up Sellable Stock.

Q&A-section
This section will be filled-in during the training sessions.

You might also like