Prerequisites
Complete Module 1 - Foundational Setup and Module 2: Returns & exchanges before processing with this module.
Dodici is a luxury fashion brand from Milan, Italy. You have been hired to help the brand with migrating its stores to NewStore. Their VP of Retail has put together key requirements for the brand’s customer satisfaction strategy: all items in all locations (DC and store) that are in a sellable condition must be available for the various omnichannel use cases like BOPIS and fulfilment to the customer’s home address.
To satisfy these requirements, you need to make sure that:
Each inventory movement that happens in the store is reflected in real-time in the store stock on hand and calculated ATP
Items that are not in a sellable condition must not be part of the main sellable location
The above requirements can only be achieved with NewStore managing the store's onhand stock. If this mode is not used, the store stock on hand has to be updated in NewStore by the inventory master system, which happens with a delay. During that time, orders might be placed that cannot be fulfilled.
First things first, you start with the preparation of the store you have created in Module 1 - Foundational Setup, and enable that store to be managed by NewStore:
Part 1
Enable location as inventory master → To turn on a store to be managed by NewStore, you have to call this config API.
as soon as the store is enabled as the inventory master, the availability import using the Import API will stop working for that location
Important: once the inventory master is enabled for a store location, it is not possible to revert that setting anymore
Now you can take the latest snapshot of the inventory master system (e.g ERP, legacy POS) and import that into NewStore as a full_count for the store. After that point NewStore takes over the responsibility to track on hand stock.
Part 2
Import a stock snapshot → use the below API to import a full stock snapshot for that store location into this API.
The platform only supports one stock location that is salable -
main
. A salable stock location should be created before performing any inventory stock operations.Import the full stock snapshot into the location
main,
which is the default and only sellable location in NewStoreNote: for full count snapshot imports, NewStore is not emitting
inventory_count.items_counted
events
To prepare the store to accept returns for damaged items without increasing the sellable ATP you first need to setup an additional virtual location:
Part 3
Adding a virtual location → to add another virtual stock location, perform a call to this API.
The name of the location shall be
damaged
The display name is shown to associates. “Damaged” should do the trick
Last but not least, you have to instruct NewStore to book items that are classified as damaged into the virtual location you have just created.
Part 4
Create a return configuration → Use the following endpoint to first check if there is an existing return configuration.
Use this configuration as a reference and enrich it with a condition that maps the item condition code damaged to the virtual stock location
damaged
In case the item condition damaged does not exist yet, define the item condition first to ensure that the return configuration update will work
With these steps completed, you have the necessary setup to be able to process returns with damaged items.