
Adjusting Inventory for Loss
Lightspeed Commerce is a retail management software provider. I lead design for the inventory space, and previously designed across the product's e-commerce, POS, and reporting areas – just to name a few. Lightspeed commerce acquired Vend in 2021.
Merchants frequently experience "loss of inventory" due to damage, expiry, theft, and internal use. Understanding why merchants are experiencing loss enables them to take action to reduce that loss. However, there was no existing way to update inventory numbers or record that this loss occurred.
I designed a way for cashiers and managers to easily record loss of inventory so they act to reduce loss and keep their inventory numbers accurate quickly and easily.
An accurate system of record and easy-to-use workflows help us build and maintain trust with our merchants, driving retention.


GOALS
💼
Business Goal
Driving retention by increasing trust in X-Series as an easy to use, accurate system of record.
💁🏻♀️
User Goal
How might we help cashiers and store managers record loss so they can keep inventory numbers accurate
💁🏻♀️
User Goal
How might we help business owners understand why inventory is being written off so they can act to reduce loss
💼
Business Goal
Drive retention by increasing trust in X-Series as an easy to use, accurate system of record.
💁🏻♀️
User Goal
Enable cashiers and managers to record loss so they can keep inventory numbers accurate.
💁🏻♀️
User Goal
Help owners and managers understand why they're losing inventory, so they can act to reduce loss.
PROBLEM
Stock might need to be written off due to reasons like theft, damage, or internal use to name a few. When this happens it’s important for merchants to reflect this movement of inventory in-app to maintain accurate inventory numbers and create a record of what happened.
However the only way merchants could adjust inventory was through janky workarounds that messed with reporting and posed security risks and further risks of inaccuracy.
QUALITATIVE DATA
“We're trying to understand basic stock movements. Is a particular store losing stock to shrinkage?
Just trying to understand if there is a theft?"
Inventory Manager
Pet Retail, South Africa
“We created a customer called Shrinkage.
When we lose inventory by shoplifting, we sell to a customer called Shrinkage”
Manager
Tea and Homewares, Canada
“The biggest frustration is that adjustment is just a number.
It would be helpful to be able to add why the adjustment was made.”
Inventory Manager
Electronics, USA
“Right now we're blind.
There's no information that could be powerful for an owner of a company, like me, so that I can take action”
Owner
Fashion, Mexico
CURRENT USER JOURNEY MAP
This revealed the different ways merchants use workarounds to record loss.
INSIGHTS
Reasons for loss
Damage, expiry, internal use, stolen are most common reasons.
No special treatment
All types of loss were being recorded in the same way, there were no in-store processes to deal with them differently.
User permissions
Some merchants allow cashiers to record loss as they are usually who comes across expired or broken products but some merchants (usually larger and more mature merchants) only allow managers to record loss and manage inventory.
SOLUTION DISCOVERY: IDEAL USER JOURNEY
Flow 1: Recording a single loss event
Flow 2: Recording multiple loss events
Where should users record loss?
Consider the conditions around recording loss: Who’s making the adjustment? When are they making it? How many adjustments will they make? Options: Products Page, Inventory Counts, or the Stock Control page?
Where should users view loss?
Considered other examples of entities being created, viewed and reported on. Sales for example are recorded in the Sell screen, records of sales are viewed in Sales History, and users gain insights about sales in Reporting. Following that same pattern, records of loss should be viewed in a product history of sorts for which we have an Inventory Movements page for each products, and users can gain insights about loss in Reporting (future work).
SOLUTION DISCOVERY: WIREFRAMES
Wireframes to test smoothness of flow and feel in context.
Adjustment page in Inventory area
Best suited for a manager who is recording loss in bulk. They’re working off a list or pile and doing data entry and want to save that and update inventory.
Products page 🏆
Best suited ad-hoc adjusting of one product at a time and is scalable for bulk adjusting in the future.
You find a broken product > You’re holding it on your hand > Look it up on the Product page > Adjust inventory / record loss
Decided on the Products page as the flow was solution was a slimmer slice to design and delivery, optimised for time in value rather than time to value, could learn after release and iterate based on learnings. Decided on Inventory Movements to display movements.
SOLUTION DISCOVERY: HI-FIDELITY DESIGNS
Iterating on details in high fidelity
Information architecture: how do we break up the steps?
Entering hi-fis I found myself considering some foundational information architecture questions. Weighed up 2 or 3 steps. I decided on a 3 steps for review stage and accuracy rather than less steps but was actually hard and increased chance of mistakes
Negative quantity field
How to display a negative number, compared to “enter QTY” elsewhere, do we get them to type the -, would they try to? What’s consistent?
USER TESTING
User testing usability risks
Our quantity fields have never allowed negative numbers however this quantity field was trying to communicate the reduction of a product.
User tested to validate the assumption that users could comprehend and be able to use the negative quantity field 🎉
-
Users also better understood the 3-step modal flow as it was easier to adjust and review a focused list of products especially when some products contain 100 variants (colour and size) 🎉
FINAL DESIGNS









RESULTS
-
Upon soft launching the feature we saw early and organic adoption for this feature.
-
(Get updated numbers) As of today, we’ve seen over 900 merchants tracking adjustments.
-
6k adjustments were made, multiple times by each user (not just testing it out once)
-
Leading cause of inventory adjustments is internal use
“THIS UPDATE IS GREAAAAAAT!”
Owner
Homewares, Singapore