Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this release, we’re happy to announce many improvements to inventory management.

...

Eliminated duplicate API calls

The primary cause of performance issues in RTP were the calls to the RTP stored procedure, proc_publicGetProductInventoryPoolInventory. Previously, the sync may have unnecessarily called this stored procedure multiple times with the same criteria on each sync. Now, this stored procedure is only called once for each combination of InventoryPoolCode and InventoryPoolLocationCode.

...

ResourceName

Default ResourceValue

product.availability.outofstock

This product is not available.

shoppingcart.quantityexceedsstock

Your quantity exceeds stock on hand. The maximum quantity that can be added is {0}.

Scenarios in which inventory could be oversold

There are a few scenarios, some of which may be found only in testing, in which inventory could be oversold.

Scenario 1: If the inventory is sold out, or a resort admin manually changes slots to 0 for a date or date range, and the inventory sync to Aspenware Commerce has not yet run, a guest could checkout on Aspenware Commerce with the remaining inventory slot (or slots) recorded from when the sync ran last. This scenario could result in overselling inventory in the POS system.

*Important: For resorts using RTP|Connect order processing, in this scenario, the order may fail in the order queue. In this case, inventory will not be oversold, but the failed order will need to be handled. For resorts using Unity order processing, the Aspenware order will process successfully, which will overbook inventory for the applicable slot or slots.

Scenario 2: This scenario is rare, but if two guests are competing for the same final inventory slot or slots, and they both complete checkout within a few seconds of each other, before the lock is released for guest 1 or guest 2, both orders may successfully process to the POS, thereby overbooking the inventory.

Scenario 3: This scenario was found in internal testing, and is also rare. If product A and product B both map to the same inventory pool in the POS, and a shopper adds the last slot for product A to the cart, waits for the lock to expire, and then adds product B to the cart (thereby taking that same last slot from inventory), that guest’s order for Product A and Product B will succeed, thereby overbooking inventory. A guest cannot successfully checkout with 2 slots for product A when only 1 remains, but a guest could overbook for that same slot if it’s configured on both product A and product B.

Scenarios where a guest could add to cart, but not be able to check out with an inventory product

Scenario 1: If a shopper books the last remaining slot in inventory when only 1 slot remains for a inventory pool for the selected date, checks out, and returns to the shop to buy that product for the same date again before the order is processed and the lock expires, the shopper might see that date/slot as available and add it to cart, but be unable to check out with that product, if the lock has expired by the time he attempts to complete the order.