Retail customers these days have multiple options. Someone who places an order online may want to pick it up from a store two hours later rather than wait for delivery. At the same time, people walking into a store expect to find their product on the shelves.

How can brick-and-mortar retailers fulfill online orders while ensuring they don’t run out of products for in-store customers? By using a dynamic algorithm that adjusts booking limits as in-store orders rise, say Chicago Booth PhD students Zuguang Gao and Zi Ling and Booth’s Varun Gupta and Linwei Xin.

Most physical retailers employ a static booking-limit algorithm, which uses inventory levels at the beginning of the day to predict how many online orders a store can handle. However, if actual demand turns out to be different from what the algorithm assumed, the store risks running out of goods for walk-in buyers. This hurts because in-store sales typically generate better profits due to additional costs associated with online orders, plus stores can damage goodwill with customers due to the high “shortage cost” associated with in-store shopping.

“For example,” Xin says, “when someone visits a store to buy bananas that are unavailable, she will have to visit another store, which is costly for her because she spends time traveling between stores. By contrast, the time for an online shopper to switch from Amazon Fresh to walmart.com is minimum.”

The researchers analyzed a typical static algorithm, in which a retailer fulfills online orders from a store—or multiple stores—from a set inventory level that doesn’t adjust from opening to closing time. They used this algorithm to consider a case where a retailer had just one physical store, as well as two other cases involving multiple stores.

Their results suggest that in instances where there is just one physical store, the static algorithm can work if it fulfills only a certain number of online orders and then rejects orders after a defined threshold. When retailers have multiple locations, the static algorithm can also work if all the stores start the day with identical inventory—but the algorithm fails if the stores have different inventory levels.

A dynamic algorithm offers a better solution, the researchers find. They developed one that allows a retailer to reject online orders early in the day even when there is still sufficient inventory to fulfill them, in order to hedge against a worst-case scenario that would leave shelves empty for walk-in customers. The online store might display “out of stock” next to an item in the morning but then accept orders later in the day.

The method could be applied beyond retailing, the researchers suggest. For example, airlines could use the algorithm to price tickets. Consider an airline operating several daily flights from Chicago to New York, Xin says. One type of passenger may be interested in only a particular flight, say the early morning one. Another type may have more flexibility to take any flight during the day.

What the airline can do, Xin suggests, is to show selected flexible passengers certain “opaque flights” that are offered at discounts. In fact, he says, such pricing ideas have already been used by discount travel sites such as Priceline.

Passengers who are interested in only one flight are treated the same as in-person customers who visit one particular store. Flexible patrons are treated as if they were online shoppers whose requests could be satisfied from one of multiple stores. The issue of which passenger will be offered a deal is essentially the same as which online order retailers will choose to accept, Xin says.

“Here,” he explains, “the discount would be the profit margin difference between in-store and online customers.”

More from Chicago Booth Review

More from Chicago Booth

Your Privacy
We want to demonstrate our commitment to your privacy. Please review Chicago Booth's privacy notice, which provides information explaining how and why we collect particular information when you visit our website.