Back when we were several magnitudes smaller, managing out of stock products was easy. If a customer ordered the product, we’d just send them an email and discuss with them whether they’d rather substitute a different product, get a refund, or have us hold their order until we got the product back in stock. If a product was going to be out for a while, we would just edit the description to say that it’s out and will be back in soon. Simple enough.
However, as we grew, we realized that system wouldn’t cut it. Aside from the sheer volume of customer service inquires, we also stock a lot more products from a lot more vendors and we move a lot more of it. Which leads to more scenarios where we’re out of stock because vendors cannot fulfill our orders because they themselves are out of stock.
We’re also an exceptionally lean company – in the month of March we moved over 100% of our inventory (i.e. we did more in revenue for the month than we had in stock when the month started). That’s nuts. We’re extremely lean for the real world. Inventory management was easy in college when the formulas came out all nice and everything was predictable. But with 30+ vendors who each have their quirks – billing, fulfillment time, minimum order requirements, etc – it’s super hard to actually execute that strategy. Mostly out of necessity, we’ve found ways to make it happen.
Anyway, my point is, that with our growth plus how lean we are, we’re out of stock of items fairly often, even if it’s just for a few days. To manage it all, we built a system last summer and recently rounded it out just in time for our huge March, where it saved us from total chaos.
If we run out of a product, any of us can quickly put it “on backorder” in our admin system. You just pick the item and size from a drop down and then fill out a form with the following fields:
- Estimated ship date – the approximate date that we expect the item to be back in stock
- Allow orders? – are customers allowed to put the item in their cart?
- Ship Separate? – if ordered, should we ship other items in the order separately or hold the entire order?
- Is this a pre-order? – changes the display text to notify the customer that the item is a pre-order
Here’s what a regular product page looks like:
Here’s an out of stock product page where the customer is not allowed to add the product to their shopping cart (in this instance, it’s because the product is seasonal and won’t be back in stock until Summer):
Here’s a more typical backordered product page:
In this example, the product will be back in stock next week, so we still allow customers to order it. If they do order it, we’ll hold their order until we receive the wax back in stock. In most scenarios, we hold the order and don’t ship separately because of the added time and expense.
Where this gets really interesting is what happens on the back end. If the customer places an order with said product, they are automatically kicked an email notifying them of the situation and their order is auto placed in the “pending” section of our admin with a note appended to it. The pending section is where we keep any order that cannot go out on the next shipping day for one reason or another. In addition to out of stock items, many times customers want to hold their order so they can add to it, or want us to hold their order until a specified date when they’ll be at the location of their detail. Automatically moving these orders to pending was a huge deal for us. Previously someone had to manually review each order for out of stock items.
When the product is finally back in stock, it’s as simple as clicking one button in our admin to remove the item from our backorder system. We then just have to move all of the orders in the pending section over to our ship queue. We have a filtering system that enables you to filter by product which really speeds this up if there are a lot of orders in pending. Once the orders are in the ship queue, they get processed with the rest of the orders the following day.
This was one of those systems that seemed like a bit of overkill when we first built it, but now we’d be totally screwed if we didn’t have it. Yes – there’s still a good amount of customer service involved with these scenarios because some people aren’t able to wait or still want a refund or replacement item, but the system allows us to automatically process the majority of scenarios without too much added effort. Without it, we’d either be a) way to over-stressed and unable to even think about working on projects like LockerPulse, or b) hiring more employees before we needed to do so.