How is Inventory Updated?

Modified on Tue, 05 May 2020 at 01:25 PM

UrbanPiper has a centralized 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 from UrbanPiper


- Satellite

Items and options can be enabled/disabled using the Inventory section of the 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.


Request Payload —

{"location_ref_id":"1230","platforms":["zomato"],"item_ref_ids":["1","2","3","4","5","2325","2331","2336","2355","2802","2803","3313","3329","3337","3344"],"action":"enable"}


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


- Swiggy


Request Payload —

{"externalItemIds": ["678185"], "restaurantId": 6696, "enable": false, "fromTime": "2020-04-30 13:54:14", "toTime": "2021-02-24 14:55:44"}


Here's the breakdown of payload:—


  • externalItemIds: The external ID of the item that needs to be enabled/disabled will be mentioned here.
  • restaurantId: This is the UrbanPiper store ID for which the request is sent.
  • enable: If this field is true the items will get enabled. If this field is false, the items will get disabled.
  • fromTime: This is the time stamp of which the enable/disable request was made.
  • 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.

- Zomato 


Request Payload — 

{"customTurnOnTime": "2020-05-07 01:30", "vendorEntityIds": ["i4690612"], "autoTurnOnTime": "custom", "outletId": "18929", "inStock": false}

Here's the breakdown of payload:—


  • customTurnOnTime: The date and time when the item is going to back on stock automatically (7 days for Zomato).
  • vendorEntityIds: Item-location platform ids. You can find this id's under Hub --> Platforms --> head to a store --> ILPA ids.
  • autoTurnOnTime: Is always Custom.
  • outletId: This is the UrbanPiper store ID for which the request is made.
  • inStock: If this field is true the items will get enabled. If this field is false, the items will get disabled.



Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article