How is Inventory Updated?

Written By Ops UrbanPiper (Collaborator)

Updated at December 5th, 2019

UrbanPiper has a centralised inventory setup which helps you disable an item that is out-of-stock on all the aggregators with a single toggle. A single toggle will send Inventory update calls for an item to all the aggregators.

An inventory update call basically means that a request is sent out to the aggregators to disable/enable the required items. There are multiple ways of making an inventory call.


Inventory update directly from UrbanPiper:


  • Satellite: Items can be enabled/disabled using the Inventory section of Satellite. After selecting the required stores and filtering the category, the toggle (visible in the image below) will enable/disable the required item from all the aggregators.
  • Master Menu: Items can also be enabled/disabled using the Master Menu section under the Hub section in Quint. After selecting the required stores and filtering the category, the toggle (visible in the image below) will enable/disable the required item from all the aggregators.



Inventory update from a third-party:


  • POS: A POS integrated with UrbanPiper can also make inventory calls where a request is made to UrbanPiper to enable/disable items and the same call is cascaded to all the aggregators. The sample below is the request that a POS with Webhook integration will make to UrbanPiper to disable an item.

Now we can look into how an inventory update call looks for an aggregator.

  • Swiggy: Below is a sample enable request that was sent to Swiggy. 

Here's the breakdown of payload.

1. externalItemIds: The external ID of the item that needs to be enabled/disabled will be mentioned here.

2. restaurantIdThis is the UrbanPiper store ID for which the request is made

3. enable: If this field is true the items will get enabled. If this field is false, the items will get disabled.

4. fromTime: This is the time stamp of which the enable/disable request was made.

5. toTime: This is the time until when the item will be enabled/disabled. By default, it is set to 300 days from the day the request was made.


Below is a sample enable request that was sent to Zomato

Here's the breakdown of the request payload.

1. item_id: The external ID of the item that needs to be enabled/disabled will be mentioned here.

2. Success: It's set to false by default for all the requests.

3. item_in_stock: If this field is true the items will get enabled. If this field is false, the items will get disabled.

4. outlet_id: This is the UrbanPiper store ID for which the request is made.



Was this article helpful?