Users report that Shopify’s built-in Purchase Order (PO) system fails to properly link product costs between POs and product listings. When receiving stock at different prices, the system updates inventory quantities but not the cost per unit on the product page.
Key Issues Identified:
POs don’t automatically pull current product costs; they use the last PO price instead
No automatic cost updates when receiving inventory at new prices
Cost of Goods Sold (COGS) reports become inaccurate when product costs fluctuate
No average costing calculation built into the system
Current Workarounds:
Some users pay $130 AUD/month for POS Pro solely to access the Stocky app, which handles cost averaging and landing costs
Others consider leaving Shopify for platforms with better inventory cost management
Proposed Solutions:
One developer (michaelkhalsa) mentioned building an app with average COGS calculation and audit trails for cost changes
Another developer (drewcarmichael) is actively building an app using the formula: ((Current Average Cost × Current Stock Qty) + (Landed Cost × Received Qty)) / (Total Qty)
Status: Discussion remains unresolved with no official Shopify response. Multiple users express frustration that such basic inventory management functionality is missing from a major e-commerce platform.
Summarized with AI on October 31.
AI used: claude-sonnet-4-5-20250929.
Good day. I love the new PO system built into Shopify, been hoping for this feature for some time.
However I am struggling to understand if there is or is not any link between the cost of an item on the product listing and the cost of the item on the PO.
One would assume if you receive stock at a certain price that the PO system would update the inventory quantity and the cost if there is a change. However I have tested this and it only seems to update the inventory qty.
Additionally, if I update the price of an item on its listing page and then create a PO with that item it does not bring in the current price of the item but rather uses the last entered price on the PO.
This seems to suggest that other than the inventory quantity there is no active link between the product information on the PO and the product listing itself.
If I am correct this seems to be a gross underutilization of this feature and actually very dissappointing.
Hi, having the same issue here. Curious if you’ve found any resolution?
If I carry a shirt at a $6.00 cost, and on my next replenishment PO, I incur an increased cost of that good. It is now $6.20. How do I get shopify to understand that the remaining units should sell as a $6.00 cost, and the units under the new order should sell under the $6.20 cost? I’m concerned with it not reflecting in my cost of goods sold report.
Ultimately do I have to create a new product each time there is a fluctuation in cost if I want the cost of goods sold report to be accurate?
I really want to meet the CTO of shopify and ask if he ever audits the roll out of new platform features. How on earth could you implement a basic function like importation of the product data and forego the COST of the product which is just another string of data like product or variant or SKU (all of which it brings in just fine). Its like the software team behind this doesnt know what a purchase order is or what the fundamental elements would be. Why on earth would someone be tasked with manually opening each and every product page to remember its cost?! Shopify has always operated in this manner stripping platform features to there absolute bare minimum and letting 3rd party devs take it from there BUT this one is just laughable. I mean the second most important elemeht in a PO is the COST OF THE F’ing item. @Shopify_77 what are you guys doing over there?
In your case, would a hypothetical Average-Cost-of-Goods field work for such a report?
The report could fall back on current cost when not average-cost is not available, as well as default markups for a supplier based on price when no cost has been entered at all (along with warnings).
Say you have have received 10 widgets at a cost of $100 each
The average cost of goods is then $100
You sell 5, and receive 5 more at a cost of $120 each.
A new Average Cost of Goods is automatically computed based on your remaining inventory and added inventory, which is $110 each, and saved.
Each time a product is sold or lost-stollen, etc., the current average cogs is included in that transaction. This also helps with insurance costs.
This then enables an accurate cost of goods report to be generated.
I ask this, because I am in the process of creating a better purchase order app for Shopify.
15 to 20 years ago, I implanted ‘all’ of the features Shopify is currently using in their purchase order system, plus many more, which has been tested and refined over the years.
I am working to create this new app to adapt gracefully, so a users existing purchase orders are still relevant, and if they uninstall the app, PO created with it still work in the default system (less the additional improvements).
I would very much appreciate your feedback as to the ‘Ideal’ workflow and needs for your business.
To refine it a bit more, there is the cost entered for the purchase order when sent, and the cost supplier ends up actually charging as shown when received.
Shopify, currently allows the editing of a purchase order after it was sent to allow for this.
My idea is to have a change voucher auto generated to record any differences between costs (and quantities), modified after purchase order was sent, thus providing an audit trail for when a dispute needs to be settled with what a supplier said they received.
There are also promotions and discounts that suppliers some times give which affect the actual computed cost of each item
Thoughts, and if these nuances (and other ones would love to hear about) are valuable for you and your business? I am in the process of creating a refined purchase order app for Shopify.
Hi Terry, I am having the same issue. It blows my mind that Shopify does not even reply to this thread. This is the BASICS of stock management: COSTS. For me having to sign up for yet another third party or in house app to solve this issue is a hard no go. So now in order to work and manage a business with Shopify you have to use many different apps and it is not a viable solution in the long term. This is so basic, average product cost calculation when a new PO is entered and auto population of the product costs based on the last entered product cost for the same reference… Any way, this is getting very complicated to manage, I am seriously considering leaving Shopify to use a local company software that does all that better than shopify… BUT shopify still is a great tool for online shops…
Any progress or options on this? It is incredible to me a platform as big as Shopify and minor things like this aren’t implemented or even an app that can hell with this function. Is it really this difficult to find something that will take the purchase order cost data and average it for a true product cost?
How has Shopify not responded to this? I’m in the same situation as many others and have been forced to pay an additional $130 AUD per month for POS Pro solely to access the Stocky app. It’s frustrating that Stocky is locked behind POS Pro, especially since we operate an eCom store that neither needs nor uses any of its features.
We only require Stocky because it allows us to manage opening and closing balances, update product costs, and factor in landing costs, including shipping. Another major issue is that Stocky’s UI feels extremely outdated and isn’t great to use. Ideally, we’d handle this through Shopify Purchase Orders, but unfortunately, that’s not an option, leaving us with no real alternative.
Hi mate, I am building an app with a team now. Whats the demand looking like? Any other features I should add?
Did you find an app that works too?
I am going to use this calc, which works well.
((Current Average Cost x Current Stock Quantity) + (Landed Cost of Received Stock x Received Stock Quantity)) / (Current Stock Quantity + Received Stock Quantity)
Hey mate, I am now building one. Did you find an alternative? I am looking to add some cool features - you should let me know what you want.
I am going to use this calc, which works well.
((Current Average Cost x Current Stock Quantity) + (Landed Cost of Received Stock x Received Stock Quantity)) / (Current Stock Quantity + Received Stock Quantity)