Pages

Monday, August 11, 2025

Business and Website Upgrades


This is another one of my occasional blog posts that document my business processes and website—this one covers both!

Part of the responsibilities of being a business that sells physical goods (in this case, comics) is the need to track inventory. This is particularly important at tax time since you are required to report the value of your inventory on hand each year ("Cost of Goods" or COG) and, in comparison to the previous year's inventory (adding any purchases you made to add to your inventory), determine the Cost of Goods sold for tax purposes. As someone with more than a few items—26 individual issues and several trade paperback collections and special editions—this becomes a bit more complicated at scale.

In truth, inventory needs to be taken at minimum annually—at tax time—for the reporting reasons described above. But the other reason to keep an eye on inventory throughout the year is to ensure that you do not run short of some items, at least if you are keeping them available. (I should add that, for tax purposes, it is always best to keep as little inventory in stock as possible in order to minimize tax liability since that inventory is counted as a saleable asset.)

ExpressInvoice logo
In recent years I've used both invoicing software and a separate inventory software to track sales, customers, product information, inventory, etc. Invoicing software also helps to calculate sales tax when applicable on invoices and, at the end of the year, producing reports that total sales, tax and shipping fees collected, etc., also for tax purposes. The printed invoices also serve as my sales receipts to customers for mail ordered sales at the WCG Comics website.

I've used a few invoicing and inventory applications over the years. They have become surprisingly pricey—nearly all of them are monthly-subscription based and none seem geared or friendly to very small business users like myself. (In addition, while invoicing and inventory apps often have overlap, they are still two distinct processes that seem to necessitate two separate programs.) Currently, I've been using two standalone single-purchase options for years: ExpressInvoice and Inventoria from NCH Software that worked in tandem for generating invoices and tracking inventory. They had their quirks and were not perfect, but they still sufficiently met my needs given the price.

Though they'd begun to charge more and were moving towards a more frequent paid update model, it was still relatively affordable given the other options. But over the past year, I began encountering problems and receiving error messages because the two applications were not properly connecting or syncing—until recently, after making a sale in ExpressInvoice, Inventoria would automatically adjust an item's inventory number, keeping the inventory levels synchronized on both applications—Inventoria allowed me to produce reports on inventory when I needed them. However, except on rare occasions, the applications stopped recognizing each other and, when they did, the inventory levels were totally off because they were not syncing regularly. 

After looking for potential alternatives that would not require a subscription (surprisingly, I found none), I decided to look into the capabilities of my current payment processors: WooCommerce and Square.

As I have blogged elsewhere, last year, after moving my website to WordPress, I migrated from PayPal to WooCommerce, an integrated WordPress plugin, as my online sales processor. And though WooCommerce was the engine driving the process, the Square platform was the actual processer behind the scenes (I already Square as my payment processor to accept credit card sales at conventions on my mobile device—that said, I actually only adjusted the settings of the application earlier this year to begin automatically calculating tax and to make sales based on items in the store, versus charging just by amount.)

In any case, though Square and WooCommerce each have built in inventory features, since I already was using ExpressInvoice and Inventoria, I never looked at them as alternatives—until now.

Long story short, with ExpressInvoice and Inventoria becoming less dependable, after some fiddling, I activated and implemented the inventory functions in WooCommerce and Square, and sync'd them. So whenever an online sale is made in WooCommerce, the sale will post on Square and adjust the inventory there as well.

The only drawback is that Square and WooCommerce feel clunkier, particularly Square's report functions, which seem less straightforward and user-friendly than those that can be downloaded from ExpressInvoice and Inventoria. 

Admittedly, ExpressInvoice was somewhat of a redundancy, operating as a shadow system of sales made through WooCommerce and Square—but recording all sales here was necessary to centralize both online and in-person cash sales and inventory tracking; I will need to do the same with Square, in terms of recording cash sales after the fact so that both my sales and inventory sales reflect all sales. But at least it will be consolidated within Square, which already captures all credit card sales by item; I will need to develop a system for recording in person sales that are captured in Square. 

In any case, though I'm glad to cut ties with software that was a little bit redundant, at the same time I'll have to develop new workarounds and processes now that I've moved inventory tracking to Square.

No comments: