Stock Management System – DG commerce

I made a system that keeps a record of your stock levels, syncs it with other websites like Amazon/OpenCart, in addition to sending you email reminders when products are low or out of stock.

Development started for a shoe business I work with that were selling things online they didn’t have stocked.

The staff (including a lot of part timers) also have varying levels of IT knowledge ranging from good to poor, so I had to come up with a system that could be easily adopted into their POS workflow.

I looked into an exhaustive number of options and I eventually decided that to produce something that suits their needs without introducing a lot of bloat or ongoing expense it would be better for me to just build something myself.

My requirements for the stock system

  • stock to be removed just at the press of a button, so almost anyone could do it
  • easy creation of new records
  • synchronisation with OpenCart and Amazon
  • barcode generation for labels
  • speed and reliability which is a priority at point of sale

Single tasking the app

One problem I became aware of with a web application is that users can accidentally click off it or it can become lost among other web browsing tabs and windows that might result in it becoming forgotten about. Bookmarks are also surprisingly not something a lot of end users understand how to use.

My solution to this was to create a Chrome application. So it would appear to work like a regular application you might install on your PC, because it would have an application icon shortcut. Except it pulls in my stock management application from the website. This means instead of looking through browser windows/tabs they could just launch my system like an app.

This provides the benefits of the website without the typical web browser functionality that can direct a user off the website such as tabs, bookmarks, address bar, browser extensions, etc.

Here is what I mean:

As you can see there isn’t much to it, which is exactly what I wanted so there’s no popups, no being redirected off the stock system. It is just there as an app.

Removing and adding stock

The most basic thing all staff need to do is remove stock from the system. Initially I managed entering all the new stock because the stock scanned needs to have records already in place they can be linked to.

As you can see from the above screenshot I tried to make the process of removing stock as easy as possible, which I think I’ve achieved because aside from some menu items at top there is just a box to enter the barcode, a box to tell the system how many to remove (defaults to 1) and a button to remove the item from the system.

Entering the barcode is simple with a barcode scanner. It works like a robot keyboard by reading whatever digits are represented by the barcode, then it types those characters and presses enter. The input field for the barcode number also auto-focuses, meaning you can just type stuff in without having to click inside it.

This has all helped simplify the process so much that as long as you are on the right page then you just have to simply press the button on a barcode scanner to remove a product from stock.


The system is still running strong since it went into service in 2018. Aside from minor improvements I haven’t had to do a lot to it since. My approach continues to be a focus on simplicity and I’ve got plan to make it even more powerful by implementing a plugin type of system so if I choose to make it a software service generally available then it can be as advanced or simple as people need it to be.

Need help with bespoke development or software automation?