Totals Report for WooCommerce

Description

Totals Report for WooCommerce answers three questions in one screen:

  • How many products and units do I have in stock, per category?
  • What is my stock worth, at cost and at retail price?
  • What did I hold on 31 December, for the year-end inventory count?

WooCommerce Analytics lists stock product by product. Totals Report adds up stock per category or tag, puts a value on it, and keeps inventory snapshots you can hand to your accountant.

Stock totals at a glance

  • Products, units in stock, stock value at cost and stock value at retail
  • Five clear stock states that always add up: in stock, low stock, on backorder, out of stock, stock not managed
  • Totals per category (with subcategories) or per tag
  • Filter by stock status and by units in stock, search, and sort the table by name or by any figure
  • Click a category or tag to open its products in WooCommerce, filtered by stock status where WooCommerce supports it

Stock valuation

  • Value at cost uses the native WooCommerce Cost of Goods Sold field
  • Value at retail uses the current price or the regular price, your choice
  • Shows which products have no cost yet, so the valuation is never silently incomplete

Year-end inventory count (stocktake)

  • Inventory snapshots freeze units, unit costs and prices at a moment in time
  • Automatic snapshot at year end (scheduled for 31 December, 23:59, in your site’s timezone), and optionally at the end of each quarter or month
  • Take a snapshot any time, give it a label, and view its frozen figures later
  • Inventory list export: every product and variation with SKU, units, unit cost and value (variations that share their parent’s stock are one row), ready for your accountant

Exports that open correctly

  • CSV, JSON and XML summaries of what you see on screen
  • CSV files open in Excel with Greek and other non-Latin characters intact, with the right separator for your site language (you can change it in Settings)
  • Spreadsheet formula injection is neutralised in every CSV

Also included

  • Weekly or monthly stock report by email, with the inventory list attached if you want
  • “Stock at a glance” widget on the WordPress Dashboard
  • Fast on large catalogues: built on WooCommerce’s product lookup table, no slow product-by-product loops
  • Fully translated into Greek; translation-ready for every language
  • No external requests, no tracking, no ads

Screenshots

Installation

  1. Install and activate WooCommerce.
  2. Install Totals Report for WooCommerce from Plugins › Add New, or upload the plugin folder to /wp-content/plugins/.
  3. Activate it and open WooCommerce › Totals Report.
  4. Optional: turn on Cost of Goods Sold in WooCommerce › Settings › Advanced › Features to see stock value at cost.

FAQ

Does this plugin change my products or stock?

No. It only reads your catalogue. It writes only its own data: settings and a few bookkeeping options (its version and next run times), the snapshots you take or schedule, its scheduled tasks (in WooCommerce’s Action Scheduler), a 10-minute cache for the Dashboard widget, short-lived notices and locks, a per-user flag when you dismiss the upgrade notice, and, when the email report attaches the inventory list, a temporary file in your uploads folder that is deleted right after sending.

How is “value at cost” calculated?

Units in stock multiplied by each product’s cost from the WooCommerce Cost of Goods Sold field. Variations use their own cost, or the cost set on their parent product (or both added together, when the variation is set to add its cost to the parent’s). Products with units in stock but without a cost are listed separately and are not counted in the value at cost. WooCommerce stores a cost of 0 on a simple or variable product as “no cost”, so such products show up in that list.

How is “value at retail” calculated?

Units in stock multiplied by the current price (the sale price while a sale is running) or by the regular price, depending on your setting. Prices are used as stored in WooCommerce, with or without tax according to your store settings. Every export states the currency and whether prices include tax.

Why can category rows add up to more than the store total?

A product that belongs to two categories is counted in both. Parent categories include their subcategories without counting a product twice.

Which products are counted?

All products except those in the trash (you can limit this to published products only). Grouped and external products are left out because they hold no stock of their own. A variable product counts as one product; its units and value come from its variations, including disabled ones. When variations share the stock of their parent product, that stock is counted once (shown as “Shared stock”), valued at the lowest price among those variations that have a price, and at the lowest cost among them; if any of them has no cost, that stock is listed as without cost. Disabled variations are left out of this choice unless all of them are disabled; if none of the variations taken into account has a price, that stock is valued at 0 at retail. In the inventory list these lines carry a valuation note.

What do the five stock states mean?

In stock, low stock (at or below the low-stock threshold of the product, of its parent product, or of your store, in that order), on backorder, out of stock, and stock not managed (available, but the quantity is not tracked). Every product is in exactly one state, so the five always add up to the total. A variable product is low on stock when any of its available variations is. Negative stock (from backorders) counts as 0 units.

Can I use the snapshots for my year-end inventory?

Snapshots record what your shop held at the time the snapshot runs (large shops are read in batches, so a sale made meanwhile can show up), and the inventory list gives your accountant every item with its quantity and cost. They help with your inventory count; your accountant keeps the official inventory records.

Do snapshots change if I edit products later?

No. A snapshot is stored separately and its numbers never change. You can rename or delete it, and the “Keep snapshots” setting can delete old ones automatically.

When exactly is the year-end snapshot taken?

It is scheduled for 31 December at 23:59 in your site’s timezone and runs through WooCommerce’s Action Scheduler, which needs WP-Cron. WP-Cron runs when someone visits the site, so on a quiet shop the snapshot can be taken a little later. For an exact year-end count, set up a real server cron for WP-Cron, or take a snapshot yourself before the first sale of the new year.

Does it work with large catalogues?

Yes. The report reads WooCommerce’s product lookup table with a few database queries, and exports and snapshots run in batches. When it finds products missing from the lookup table, or recently changed products that disagree with it, it tells you how to regenerate the table.

Does it support multiple warehouses or stock locations?

No. It reports the single stock quantity WooCommerce keeps for each product or variation.

Is my data deleted when I remove the plugin?

Only if you choose so in Settings › Dashboard and data. Otherwise your snapshots and settings stay in the database in case you need them later. Scheduled tasks are always removed.

Reviews

ഈ പ്ലഗിന് റിവ്യൂകൾ ഒന്നുമില്ല.

Contributors & Developers

“Totals Report for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

2.0.0

  • Complete rewrite.
  • New: stock value at cost (WooCommerce Cost of Goods Sold) and at retail, per category and per tag.
  • New: inventory snapshots, manual and scheduled (year end, quarter end, month end).
  • New: inventory list export per product and variation for the year-end count.
  • New: filters by stock status and units, grouping by category or tag, search and sorting.
  • New: email report and Dashboard widget.
  • New: five mutually exclusive stock states that always add up to the total.
  • Fixed: XML export now produces valid XML.
  • Fixed: categories with the same name under different parents are no longer merged.
  • Faster on large catalogues.
  • Complete Greek translation.

1.0.2

  • Changed terminology from “Available” to “In Stock”.
  • Added low stock and on backorder tracking, pagination and rows per page in the category report.

1.0.1

  • Fixed category names in reports, added in-stock, out-of-stock and variable product columns.

1.0.0

  • Initial release.