Updating existing reservations
The reservations help you to create and update the various reservation capabilities as follows.
- Creating reservations with custom ID
- Using full quantities for reservation
- Reserving quantity without safety stocking
Creating reservations with custom reservation ID
You can use the reservation APIs to provide custom reservation ID like CUSTOMER01 | CART01 |
LINE01. You can include the reservation ID in the created reservation request payload, otherwise, a
UUID gets generated.
The custom reservation ID allows you to increase the current
reservation quantity depending on the item availability. This customization also helps to update the
reservation requests and extending the expiry of the current reservation.
When you create reservation for a node, the node reservation equals the reservation ID.
_childItemId
stamped.Requested reservation input | Reservation response |
---|---|
Reservation_childItemId in case of node reservation with
bundles |
RSVR_Chair |
RSVR_Table |
|
Reservation_ID_childItemId Bundle in case of
network reservation with bundles |
RSVR_CHAIR |
RSVR_02_CHAIR |
|
RSVR_Table |
|
RSVR_02_Table |
The network reservation is equal to the reservation ID for the selected priority node where any
subsequent node has a generated reservation ID. The second reservation has a postfix of
RSVR_02
and there is no postfix of _01
.
For more information about Create reservations
API, see Create Reservations API.
Using full quantities for reservation
You can provide the reservation quantity for the individual reservation with the help of
reservationID
.
Reserving quantity without safety stocking
By default, all the reservations APIs consider the total available quantity and safety stock that
is withheld when a reservation is accepted. Under specific circumstances, a reservation API can
override and consume the withheld safety stock quantity by using the
considerSafetyStock
= false parameter. However, doing so might cause inventory to
be over promised leading to a shortage.
For more information, see Reservations API.
Special cases
- Bundle reservation
- After a fulfillment manager confirms the availability for a bundle, a reservation can be created
against the bundle parent for specific nodes or distribution groups.Unlike individual items, on a successful reservation request, the reservation API returns the following set of reservation IDs.
- Bundle parent reservation ID.
- Bundle component reservation ID.
Reservation consumption
After an order is confirmed, the bundle reservation can be consumed as part of supply or demand APIs. The fulfillment manager must pass the reservation ID for each of its component to consume the reservation. Even though a bundle parent reservation ID is provided, you cannot use for reservation consumption.Important: When you consume a reservation, use the reservation IDs of the component instead of the bundle parent reservation ID.For example, if there is a reservation for Motor Oil Change Kit and the reservation ID that is issued is as follows:The demand API is shown as follows.Item Reservation ID Note Motor Oil Change Kit reservation.id 01 Do not use this ID for consumption. Motor Oil reservation.id 02 Use this ID. Funnel reservation.id 03 Use this ID. Drain Pan reservation.id 04 Use this ID. { "demands": [{ .... "reservations": [ {"id": "02","reference": "motoroilchgkit_rsvr","quantity": 4}, {"id": "03","reference": "motoroilchgkit_rsvr","quantity": 1}, {"id": "04","reference": "motoroilchgkit_rsvr","quantity": 1}, ] }] }
- Item parent
- When a child item is reserved, its parent is also reserved to maintain overall parent availability as sum of all its child items availabilities.