BLACK FRIDAY
Save 59% on PageForge Annual $191/year $485/year
Claim 59% Off →
PurchaseDesk – Purchase Orders, Cost of Goods (COGS) & Suppliers for WooCommerce icon
Actively maintained Tested with WP 7.1 #16 in COGS

PurchaseDesk – Purchase Orders, Cost of Goods (COGS) & Suppliers for WooCommerce

PurchaseDesk for WooCommerce: purchase orders, supplier records, goods receipt and cost of goods (COGS) updated in the same step.

Active installs<10New
Downloads · 30d375▼ -15% vs prev. 30d
Rating—0 reviews
Health score64/100Good
All-time downloads454Since Aug 2026
Support resolved—No recent threads
RequiresWP 6.4PHP 7.4+
Downloads · 7d27▼ -3.6% week over week
Our verdict

Solid choice

PurchaseDesk is a solid plugin choice in 2026, with a few things worth checking first. Was last updated 2 weeks ago, and scores 64/100 on our health check.

  • Actively developed — last update 2 weeks ago
  • Tested with the latest WordPress (7.1)
  • Small user base (<10 active installs)
  • Very few reviews so far

How does it stack up?

Side-by-side on installs, updates, ratings & support

Daily downloads

163248Aug 28Sep 13Sep 30
Yesterday7
Daily average (1y)13
Peak day64Sep 7, 2026
Last 12 months455

Download spikes usually follow a new release — each site that auto-updates counts as a download.

Rankings

Where PurchaseDesk stands today

WordPress.org search rankings

Live position in the plugin search, top 100
KeywordPositionCompeting pluginsCategory
COGS #32 113 Best COGS plugins →
cost of goods >100 796 Best cost of goods plugins →
goods received note #24 174 Best goods received note plugins →
purchase order >100 3,320 Best purchase order plugins →
vendor management >100 752 Best vendor management plugins →

About PurchaseDesk

From the official readme · v1.0.12

Description

WooCommerce tracks what you sell. It has never tracked what you buy — so the
purchasing side of a store ends up in a spreadsheet, and the cost of goods ends
up out of date.

PurchaseDesk closes that half of the loop: purchase order software for inventory
purchasing that lives inside the store you already run. Raise a purchase order for a supplier, send it,
then receive the goods when the box arrives — in full or a few units at a time.
Receiving is the only step you take: stock goes up, the product’s cost of goods
(COGS) is updated, and the receipt is logged so you can see exactly who received
what, when, and at what price.

Purchase orders, goods receipt and COGS in one pass

Purchasing is three jobs that most stores do in three places. PurchaseDesk does
them in one:

  1. Raise the purchase order. Pick a supplier, search your catalogue by name,
    SKU or barcode, set quantity and unit cost per line, and send it. Track it
    through draft → ordered → partially received → received.
  2. Book the goods in. When the delivery lands, receive against the order —
    the whole thing or the eleven units that actually turned up. This is the goods
    received note step — stock receiving proper — and it is the only place stock moves.
  3. Let the cost follow. The unit cost you received at becomes the product’s
    cost of goods, written where WooCommerce and the established COGS plugins read
    it — including WooCommerce core’s own Cost of Goods Sold field when that feature
    is on.

Because the receipt is the stock movement, there is nothing to reconcile
afterwards: no second system, no CSV round-trip, no month-end guess about what
you actually paid. That is the whole point of keeping purchase management inside
WooCommerce rather than beside it.

Supplier management, and the reorder list that uses it

Supplier management here means real records — contact person, email, phone,
address, lead time and notes — not a text field on an order. Set a default supplier and a
supplier SKU per product, keep reorder points and default order quantities on
the same screen, and the reorder list tells you what to buy next, with anything
already on its way subtracted so you never order the same thing twice.

What it does

  • Suppliers — real supplier records with contact person, email, phone, address, lead time and notes.
  • Purchase orders — search your catalogue by name, SKU or barcode and add lines in a click; set quantity and unit cost per line; track the order through draft → ordered → partially received → received. Search, filter and sort the order list.
  • Goods receipt, in full or a few units at a time — stock is written through WooCommerce’s own product API, so every integration, low-stock notice and lookup table stays correct. Receiving the same delivery twice cannot double-count.
  • Scan to receive — a barcode scanner is just a fast keyboard. Scan a code and the matching line counts up.
  • Stock adjustments — record damage, loss, customer returns, goods sent back to a supplier or a plain correction, each with a reason and a note.
  • Product cost the rest of your store can see — cost is written where WooCommerce and the established cost-of-goods plugins read it, including WooCommerce’s built-in Cost of Goods Sold field when you have it enabled.
  • Planning grid — set reorder points, default order quantities and suppliers for a whole page of products at once, and edit each product’s cost and supplier SKU inline on the same screen. Setting them one product at a time is why inventory plugins stay empty.
  • Reorder list — everything at or below its reorder point, with anything already on its way subtracted so you never buy the same thing twice. Snooze a product for two weeks when you do not want to see it.
  • Undo a receipt — received 100 when 10 arrived? Reverse it. Stock and the order go back, and the reversal is written into the history rather than hiding the mistake.
  • Email the order to your supplier — the products, quantities and prices, sent from your own site.
  • Full history — an audit line for every receipt, reversal and adjustment, with the quantity and the stock level before and after; receipts also record the unit cost, adjustments the reason. Deleting an order never destroys it.
  • Duplicate an order — next week’s order is usually last week’s order. Copy any purchase order into a fresh draft: same supplier, same lines, same costs, nothing received.
  • Bulk actions on the order list — mark a whole page of orders as ordered, move them back to draft, cancel or delete them in one go, with status tabs that carry a count.
  • Export your own records — purchase orders, goods received and every stock movement, as CSV, whenever you want. Your records are yours; nothing is held back to sell you an upgrade.
  • CSV import with a dry run — bring cost, supplier, supplier SKU, reorder point and default order quantity in from a spreadsheet. You see exactly what will change — row by row, with the numbers already read the way they will be written — before anything is saved.
  • Settings — order numbering, whether receiving updates cost, who is allowed to change stock, and how many orders a page shows.

Works with the rest of your stack

Cost is not stored in a private field. PurchaseDesk reads and writes the keys
the WooCommerce ecosystem already uses, and prefers WooCommerce core’s own Cost
of Goods Sold value when that feature is switched on. If you already have costs
from another inventory or cost-of-goods plugin, PurchaseDesk reads them on day
one — nothing to migrate.

PurchaseDesk Pro

A separate paid version is available from the plugin’s home page and adds:

  • Weighted-average costing (instead of last-cost) as stock arrives
  • Turn the reorder list into draft purchase orders in one click, grouped by supplier
  • A purchasing dashboard: stock value at cost, spend versus the previous period, and a receipts trend chart
  • Purchase reports over a period you pick (7, 30, 90, 180 or 365 days): spend by supplier with each supplier’s share, receipts over time, and the value still on order
  • A full inbound table: everything outstanding per product across every open order on one screen (the free reorder list already subtracts what is on its way, and the free dashboard totals it)
  • A printable purchase order to send your supplier (print or save as PDF from your browser)
  • Export the spend REPORT as CSV for the period you are looking at (your own records export free, above)
  • A purchasing dashboard trend chart and stock value at cost
  • Scan barcodes with a phone camera while receiving, where the browser provides the Barcode Detection API: Chrome or Edge on Android, and Chrome on macOS (Windows, Linux and iOS browsers do not offer it today; a USB or Bluetooth scanner works everywhere and is free)
  • Email support answered on weekdays by the developer

External services

This plugin can connect to Freemius (freemius.com) to power the optional Pro upgrade: licence activation, automatic updates for the paid version, and the checkout/upgrade screens. Nothing is sent unless you opt in. If you click “Allow & Continue” during the optional opt-in, non-sensitive environment data (site URL, WordPress and PHP versions, active theme/plugins and your admin email) is sent to Freemius to enable licensing and updates; if you skip it, no data is transmitted. Freemius is only contacted for these upgrade/licensing actions.

  • Freemius Terms of Use: https://freemius.com/terms/
  • Freemius Privacy Policy: https://freemius.com/privacy/

Installation

  1. Upload the purchasedesk-for-woocommerce folder to /wp-content/plugins/.
  2. Activate the plugin through the Plugins menu in WordPress.
  3. Open PurchaseDesk → Suppliers and add your first supplier.

WooCommerce must be installed and active.

Frequently asked questions

Is this a goods received note (GRN)?

That is exactly what the receiving step is. When a delivery arrives you receive against the purchase order — in full or line by line — and PurchaseDesk records the quantity, the unit cost, who received it and when, then moves the stock. The history keeps every receipt, so the goods received note is a record you can go back to rather than a slip of paper in a drawer.

Does PurchaseDesk calculate landed cost?

Not today, and it is worth being clear about it. PurchaseDesk records the unit cost you actually paid on each purchase order line and writes that through as the product’s cost of goods. It does not spread freight, duty, insurance or customs handling across the lines, which is what landed cost means. If your margins depend on landed cost you can enter a unit cost that already includes your own allocation — the field is yours — but the plugin will not do the allocation for you.

Can I use it for vendor management, not just purchasing?

Yes, within reason. Suppliers are first-class records with contact details, lead time and notes, and every order, receipt and adjustment is filed against the vendor it belongs to — so you can see what you buy from whom, how often, and at what price. It is purchasing-side vendor management; it is not a contracts, onboarding or compliance system.

Does this change how WooCommerce stores stock?

No. Stock is written through WooCommerce’s own product API, exactly the way the product screen does it, so anything that listens for stock changes keeps working.

Where is the product cost stored?

If WooCommerce’s Cost of Goods Sold feature is enabled (WooCommerce → Settings → Advanced → Features), that is the value PurchaseDesk writes. It also mirrors the cost to the meta keys that established cost-of-goods plugins read, so reports elsewhere in your store agree with it.

Can I receive part of an order?

Yes. Receive line by line and in any quantity; the order moves to “partially received” until every line is complete. Receiving the same delivery twice cannot double-count, because each line records how much has already been posted.

Does it work with variable products?

Yes. Add the specific variation rather than the parent, because a variable product does not hold stock of its own — PurchaseDesk asks you for the variation if you pick a parent by mistake. Receipts, adjustments and history record both the parent product and the variation, so reports line up either way.

I already track cost with another plugin. Do I have to migrate?

No. PurchaseDesk reads the cost keys the WooCommerce ecosystem already uses, and prefers WooCommerce core’s own Cost of Goods Sold value when that feature is switched on. Existing costs show up on day one; there is nothing to import.

Can I bring suppliers, costs and reorder points in from a spreadsheet?

Yes. The CSV import covers cost, supplier, supplier SKU, reorder point and default order quantity, and it runs a dry run first: you see row by row exactly what will change, with the numbers already read the way they will be written, before anything is saved.

I received the wrong quantity. Can I undo it?

Yes. Reverse the receipt and both the stock level and the order go back to where they were. The reversal is written into the history as its own line rather than quietly editing the original, so the audit trail still shows what happened.

Does my shop manager need to be an administrator to use it?

No. PurchaseDesk checks the standard WooCommerce capability, so any Shop Manager can work with orders and receipts. A separate setting controls who is allowed to change stock, if you want receiving to be narrower than that.

Can I send the purchase order to my supplier?

Yes. The order — products, quantities and prices — can be emailed to the supplier from your own site. Pro also adds a printable version you can save as a PDF from your browser.

What happens to my data if I delete the plugin?

Deleting PurchaseDesk removes what it created: its tables, its settings and its supplier records. Export first if you want to keep the history — purchase orders, goods received and every stock movement export as CSV for free, at any time. If you have both the free and the paid build on disk, removing one leaves the other’s data alone.

Is this what we call goods inwards?

Yes. Goods inwards, goods receipt, a goods received note (GRN), booking in a delivery — the same job under different names. You raise a purchase order for a supplier, and when the boxes turn up you receive against that order, in full or a few units at a time. Stock goes up, the product cost is updated where the rest of your store can read it, and the receipt is logged with who booked it in, when, and at what price.

Changelog

1.0.12

  • New: a Help & FAQ screen – 33 answers across seven sections, from “what is the shortest path to a useful setup” to what happens to your data if you delete the plugin, plus a support snapshot you can paste straight into a forum post. It contains no site address, no e-mail and no customer or supplier data.
  • New: the dashboard now reads your purchase orders FORWARDS, not only backwards. Alongside what is late, it shows what is arriving in the next seven days, the purchase orders still sitting in draft that nobody has sent, which suppliers you are waiting on and how many units they owe you, and a pipeline bar for draft, ordered and part-received. A set-up panel names the products with no reorder point or no supplier and links straight to the grid that fixes them.
  • Fixed: typing a variable product’s own SKU on a purchase order reported “Product added to the order.” and added nothing. It now says to pick a variation, which is what it always meant.
  • Fixed: the “no supplier” count treated every variation of a supplied variable product as unsupplied, because the supplier is set on the parent. On a catalogue of variable products the figure was the whole catalogue and could never fall.
  • Fixed: the supplier panel’s row for orders raised without a supplier opened every open order instead of those two.
  • Fixed: the “days late” badge could be a day out, and “4 hours ago” was up to 45 minutes wrong in half-hour and quarter-hour time zones.
  • Fixed: opening the dashboard scanned the catalogue for reorder candidates twice instead of once.
  • Changed: in the free version the direct-contact page is no longer offered – free support is the WordPress.org forum, which the new Help screen links to. Paid licences keep the in-admin contact form.
  • Translations: all seven bundled languages updated for the new screens.

1.0.11

  • New: the upgrade screen carries a full Store Suite section – a sample screen per plugin, what it is for, five capabilities, who it suits, its own price and a button to its product page, with the bundle arithmetic beside the purchase box.
  • New: PurchaseDesk’s own upgrade page gains a purchasing-dashboard preview, a three-step “Upgrading takes a minute” block, and four more questions – including what happens to weighted-average cost if the licence lapses.
  • Translations: all seven bundled languages updated for the whole upgrade screen, plus strings that had been English since earlier releases – the review request, the automatic-reordering notices, the reorder-list shortfall line and the “receipt already reversed” message.

1.0.10

  • New: Eren Labs Store Suite — the upgrade screen now shows the six-plugin suite and its single-licence bundle.
  • New: the plugin accepts a Store Suite bundle licence; one key activates every Eren Labs plugin installed on the site.

1.0.9

  • Compatibility: tested up to WooCommerce 11.1.
  • Translations: the free package now bundles the Arabic, German, Spanish, French, Italian, Brazilian Portuguese and Turkish catalogs, so the admin screens follow your site language without waiting for translate.wordpress.org.

1.0.8

  • New: Pro licensing through Freemius — licence activation, automatic updates for the paid version and the in-admin checkout. The free version bundles the Freemius SDK (opt-in only; see External services) and works exactly as before.

1.0.7

  • Fixed: with WooCommerce’s Cost of Goods Sold feature on, the product screen showed two cost boxes and saving could wipe or overwrite the cost typed in WooCommerce’s own box. PurchaseDesk now defers to the core field and only draws its own when core’s is off.

Full changelog on WordPress.org →

Screenshots

The dashboard: open purchase orders, late deliveries, what arrives in the next seven days, what needs reordering and which suppliers you are waiting on.
The dashboard: open purchase orders, late deliveries, what arrives in the next seven…
A purchase order: pick the supplier, search your catalogue by name, SKU or barcode, set quantity and unit cost per line, then email the order to your supplier from your own site.
A purchase order: pick the supplier, search your catalogue by name, SKU or barcode, set…
Receive the delivery on the order itself, in full or a few units at a time — type the quantities or scan with a USB or Bluetooth barcode scanner. Stock goes up and the product cost follows.
Receive the delivery on the order itself, in full or a few units at a time — type the…
The planning grid: set reorder points, order quantities and suppliers for the ticked rows at once, with cost and supplier SKU edited inline — or import them from CSV with a dry run.
The planning grid: set reorder points, order quantities and suppliers for the ticked rows…
The reorder list, with anything already on its way subtracted: a product your open orders already cover is not listed, so you never buy the same thing twice.
The reorder list, with anything already on its way subtracted: a product your open orders…
Every receipt is logged with the unit cost and the stock level before and after. Reverse one and a reversal row is added to the history instead of erasing the original.
Every receipt is logged with the unit cost and the stock level before and after. Reverse…
Free forever for the whole purchasing workflow — Pro adds weighted-average costing, draft orders from the reorder list, purchase reports and phone-camera receiving.
Free forever for the whole purchasing workflow — Pro adds weighted-average costing, draft…

For developers

Is this your plugin? Show off the numbers.

Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.

Active installs badge Rating badge Health score badge

Best PurchaseDesk alternatives

All COGS plugins →
Alternatives
Rank Plugin Active installs Rating Updated Health
1 Ni Cost of Goods for WooCommerce Ni Cost of Goods for WooCommerce Add cost of goods (COGS) to WooCommerce products and see real profit, profit margin and… by Anzar Ahmed 200+ ★★★★★★★★★★ 3.5 (4) 3 weeks ago 60
2 Profitblue – Financial reporting for WooCommerce Profitblue – Financial reporting for WooCommerce Profitblue is an advanced financial reporting tool for WooCommerce. With this tool, even… by Profitblue 10+ ★★★★★★★★★★ No reviews 8 months ago 38
3 Advanced COGS & Profit for WooCommerce Advanced COGS & Profit for WooCommerce Unlock profit insights for your WooCommerce store. This plugin extends WooCommerce's native… by Tag Concierge <10 ★★★★★★★★★★ No reviews 1 year ago 30
4 Tarkop Profit Manager for WooCommerce Tarkop Profit Manager for WooCommerce Know your gross profit, not only your sales. Track product costs, historical COGS, revenue… by tarkop <10 ★★★★★★★★★★ No reviews 2 weeks ago 64
5 Quarkcode NeuralCommerce Lite – Profit Analytics & Cost Intelligence Hub Quarkcode NeuralCommerce Lite Accurate WooCommerce profit analytics by tracking real costs, margins, and net profit — not… by vortexplaytv <10 ★★★★★★★★★★ No reviews 8 months ago 36
6 Sanghare Margin Analytics for WooCommerce Sanghare Margin Analytics for WooCommerce Analyze WooCommerce net revenue, historical COGS, gross profit, gross margin and data… by sadiosan23 <10 ★★★★★★★★★★ No reviews 5 days ago 64
7 LXIT Profit Insights for WooCommerce LXIT Profit Insights for WooCommerce Track the cost of goods and profit margins for your WooCommerce store. by Niels R. <10 ★★★★★★★★★★ No reviews 4 months ago 49
8 NIT Sales Analytics for WooCommerce NIT Sales Analytics for WooCommerce Profit-aware WooCommerce analytics, a custom report builder, and a storefront assistant… by Sunny Chauhan <10 ★★★★★★★★★★ No reviews 5 days ago 64
9 BigBad Store Toolkit for WooCommerce BigBad Store Toolkit for WooCommerce Modular WooCommerce toolkit with COGS tracking, shared variation inventory, and extensible… by Jordan Alexander <10 ★★★★★★★★★★ No reviews 18 hours ago 59
10 Profitly — Profit Analytics for WooCommerce Profitly — Profit Analytics for WooCommerce See your WooCommerce store's real profit. Track cost of goods (COGS), gateway fees, and… by StandaloneTech <10 ★★★★★★★★★★ 5 (1) 2 weeks ago 71

FAQ

PurchaseDesk: quick answers

Straight answers, pulled from live WordPress.org data.

Live data from WordPress.org · checked Oct 1, 2026

Is PurchaseDesk free?

Yes. PurchaseDesk is free to download and use from the official WordPress.org plugin directory.

Is PurchaseDesk safe to use in 2026?

PurchaseDesk is a solid plugin choice in 2026, with a few things worth checking first. Was last updated 2 weeks ago, and scores 64/100 on our health check.

How many websites use PurchaseDesk?

PurchaseDesk is active on <10 WordPress websites and has been downloaded 454 times since it launched in August 2026. It was downloaded 375 times in the last 30 days.

Does PurchaseDesk work with WordPress 7.1?

Yes. The developer has tested PurchaseDesk up to WordPress 7.1.2, the latest release. It requires WordPress 6.4 or newer.

What PHP version does PurchaseDesk need?

PurchaseDesk requires PHP 7.4 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.

When was PurchaseDesk last updated?

The latest version, 1.0.12, was released on September 15, 2026 (2 weeks ago).

Who makes PurchaseDesk?

PurchaseDesk is developed and maintained by erenlabs.

What are the best alternatives to PurchaseDesk?

The most popular alternatives to PurchaseDesk are Ni Cost of Goods for WooCom… (200+ installs), Profitblue (10+ installs) and Advanced COGS & Profit for… (<10 installs).

Powered by PageForge

Want thousands of pages that rank like these? Build them in an afternoon.

This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.

  • CSV, Google Sheets & API data sources
  • AI content, schema & internal links per page
  • Works with Elementor, Gutenberg, Yoast & Rank Math
  • Free on WordPress.org — no credit card
Sarah is here to help!
Hi there! 👋 Need help finding what you're looking for?
Sarah
Sarah
Online & Ready to Help
Hi there! 👋 Need help finding what you're looking for?

We'll use this to continue our conversation

Just now ✓ Verified

Join 500+ SEO Pros Scaling Their Strategy

Get exclusive programmatic SEO tactics, AI content workflows, and the latest PageForge updates delivered straight to your inbox. Stay ahead of the algorithm.

We care about your data in our privacy policy.