Small Scale Inventory Management System Build

Small Scale Inventory Management System Build
Photo by Huy Phan / Unsplash

A complete self-hosted solution for small business inventory tracking, document management, and barcode scanning.

๐ŸšธSmall Disclaimer: This guide serves as a way to set up barcode and inventory tracking in the most minimal and secure way as a proof of concept build. If you are in need of enterprise level solutions that quickly tracks thousands of entries and scans per minute, then this is not the guide for you.

This guide's build will support small business and private applications to any scale those will reach, but beyond that more would be required.

Hey, here's a way to use the Orange Pi Zero3 as an inventory management system with barcode scanning support, document storage, and spreadsheet management. Useful for small retailers, mom n' pop shops, warehouses, ecommerce sellers, workshops, or anywhere you need to track parts and supplies.

Here is my guide on building a basic Orange Pi Zero3 setup, if you haven't done that yet, it helps before tackling this build below as it will take you through the bare-bone, no-frills setup for one of these computers.

โš ๏ธ COMPATIBILITY NOTE โš ๏ธ
You do not have to use the Orange Pi for this build. Raspberry Pi and other ARM32/64 boards will work as well. You may need to adjust the version tags for what you pull in the tutorial below if you are using ARM32, as sometimes version:latest will still pull the incorrect version for your chip.

While this system will scale with whatever hardware you run it on, Orange Pi Z3 is not ideal for anything that requires more than hard inventory tracking and processing at the most minimal hardware scale. Keep in mind that this is an ARM64 processor on your SBC and not an actual computer PC unit with an Intel/AMD inside of it. ๐Ÿ–ฅ๏ธ

โ›“๏ธ HEY, NO LINKS?โ›“๏ธ
This guide currently has no product sales links.

My original guide does for the basic build of the core system, but due to sourcing and pricing for some things used in this build at the moment, I wasn't about to litter this full of Amazon sales links that keep shifting prices wildly.

I will update this guide with proper links when I find better retail sources for these items.

๐Ÿง  Core: Orange Pi Zero3

Same powerful SBC from the main build guide. For an inventory system that multiple users might access simultaneously, I recommend the 4GB RAM version for better performance.

  • Quad-core Cortex-A53 CPU
  • 4GB RAM (recommended for multi-user access)
  • Gigabit Ethernet for reliable network connectivity
  • Low power consumption for 24/7 operation

(Information) Why This Works for Business

Cost Savings

  • One-time hardware cost (around $100-150) vs monthly cloud inventory services
  • No per-user fees
  • No transaction limits

Data Control

  • Business data stays on your premises
  • No third-party access to inventory or sales data
  • Works completely offline if needed

Reliability

  • No internet dependency for daily operations
  • Runs 24/7 on minimal power
  • Easy to backup and restore

๐Ÿ“ฑ Display Options

You'll need a display for initial setup and occasional administration. After setup, most interaction happens through web browsers on other devices.

(Option 1) Micro HDMI-to-HDMI Adapter (4K@60Hz)

Use this if you already have a standard HDMI cable and monitor available.

(Option 2) Micro HDMI-to-HDMI Cable (4K@60Hz)

All-in-one solution for connecting directly to your display.

Note: After initial setup, the system runs headless and you access it through web browsers on computers, tablets, or phones throughout your shop/warehouse.


๐Ÿ’พ Storage: Samsung EVO Select MicroSD

Your inventory database and documents live here. I recommend at least 128GB, but 256GB or 512GB if you'll be storing lots of product photos, PDFs, or documents.

  • Fast read/write speeds for database operations
  • Reliable for business-critical data
  • Easy to backup by cloning the card

Pro Tip: Buy two identical cards. Keep one as a weekly backup clone.


๐Ÿ”Œ Network Connection

The Orange Pi Zero3 has gigabit Ethernet built-in. For a business system, always use wired connection for:

  • Better reliability
  • Faster response times
  • No Wi-Fi password changes affecting the system
  • More secure

Just plug in a standard Ethernet cable to your router or network switch.

(Alternative) Wi-Fi Setup

Built-in Wi-Fi works if you can't run an Ethernet cable, but wired is strongly recommended for business use.


๐Ÿท๏ธ Barcode Scanner

USB Barcode Scanner (Plug and Play)

Any standard USB barcode scanner that works as a keyboard (HID mode) will work. These scanners act like a keyboard, typing out the barcode when you scan.

Recommended features:

  • 1D and 2D barcode support (reads both traditional barcodes and QR codes)
  • USB connection (some come with stands, others are handheld)
  • Programmable if you want to add prefixes/suffixes
  • Audible beep confirmation

Popular options:

  • Handheld wired scanner for mobile use around the warehouse
  • Hands-free scanner with stand for checkout counter use
  • Wireless Bluetooth scanner if you need to move far from the base unit

Setup: Literally plug it in. The Orange Pi sees it as a keyboard. When you scan a barcode in any text field, it types the number and presses Enter.


๐ŸงŠ Protection & Cooling

Aluminum Alloy Case with Heat Sink

Important for 24/7 business use. This system will run continuously, so proper cooling prevents slowdowns and extends hardware life.

  • Passive cooling (no fan noise)
  • Professional appearance for business setting
  • Protects the board from dust and accidental damage

๐Ÿ”Œ Power Supply

USB-C Power Adapter (5V 3A Minimum)

For reliable 24/7 operation, use a quality power supply. The Orange Pi Zero3 needs at least 5V 2A, but 5V 3A is recommended for stability under load.

Important: This is a business system. Use a dedicated power supply rather than random phone chargers.

A small UPS ($40-60) protects your inventory database from corruption during power outages. Even a basic 600VA unit gives you 15-30 minutes to safely shut down.


๐Ÿ’ป Software: What Gets Installed

The software stack provides document management, spreadsheets, and inventory tracking.

Document & Spreadsheet Management

Nextcloud (Your private cloud storage)

  • Upload and share documents, PDFs, invoices
  • Built-in spreadsheet editor (LibreOffice Online or Collabora)
  • Real-time collaboration
  • Mobile apps for iOS and Android
  • Access from any device on your network

Inventory Management System

Snipe-IT (Professional asset/inventory tracking)

  • Barcode-based check-in/check-out
  • Product database with photos and specs
  • Low stock alerts
  • Supplier information tracking
  • Location tracking (which shelf, which room)
  • User management and permissions
  • Audit logs
  • Reports and exports

(Alternative Option) Grocy

Grocy (Grocery/consumables focused)

  • Better for shops dealing with expiring products
  • Shopping list generation
  • Recipe management
  • Barcode support
  • Simpler interface than Snipe-IT

Choose based on your needs:

  • Snipe-IT: Hardware, tools, equipment, retail products
  • Grocy: Food, consumables, supplies with expiration dates

๐Ÿ› ๏ธ Putting It All Together

Step 1: Flash the Operating System

  1. Download Armbian (Debian-based) for Orange Pi Zero3
  2. Use balenaEtcher to flash it to your microSD card
  3. Insert card into the Orange Pi

Step 2: Initial Setup

  1. Connect monitor via HDMI
  2. Connect keyboard and mouse
  3. Connect Ethernet cable
  4. Connect power supply
  5. Follow the on-screen setup (create user account, set password)
  6. Note the IP address shown (you'll need this to access from other computers)

Step 3: Update System

Open terminal and run:

sudo apt update
sudo apt upgrade -y

Step 4: Install Docker

Docker makes installing the software stack incredibly easy:

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER

Log out and back in for docker permissions to take effect.

Step 5: Install Nextcloud

Create a folder for Nextcloud data:

mkdir -p ~/nextcloud

Run Nextcloud container:

docker run -d \
  --name nextcloud \
  -p 8080:80 \
  -v ~/nextcloud:/var/www/html \
  --restart unless-stopped \
  nextcloud

Access at: http://YOUR_PI_IP:8080

Create admin account and follow setup wizard.

Step 6: Install Snipe-IT

Create folders:

mkdir -p ~/snipeit

Run Snipe-IT container:

docker run -d \
  --name snipeit \
  -p 8081:80 \
  -e APP_ENV=production \
  -e APP_DEBUG=false \
  -e APP_KEY=base64:YOUR_KEY_HERE \
  -e APP_URL=http://YOUR_PI_IP:8081 \
  -v ~/snipeit:/var/lib/snipeit \
  --restart unless-stopped \
  snipe/snipe-it

Access at: http://YOUR_PI_IP:8081

Complete the installation wizard, set up your company info, create user accounts.

Step 7: Configure Barcode Scanner

  1. In Snipe-IT, go to Admin > Settings > Barcoding
  2. Enable barcode generation
  3. Print test barcode labels
  4. Practice scanning into the search field

Pro Tip: Configure your scanner to add "Enter" after each scan. This automatically submits the search.

Step 8: Add Your First Inventory Items

  1. Go to Assets > Create New
  2. Add product name, category, location
  3. Upload a photo
  4. Assign or generate a barcode
  5. Print the barcode label
  6. Stick it on the product
  7. Test scanning it

Step 9: Access from Other Devices

On any computer, tablet, or phone on your network:

  • Documents/Spreadsheets: http://YOUR_PI_IP:8080
  • Inventory System: http://YOUR_PI_IP:8081

Bookmark these for quick access.


๐Ÿ“Š Typical Workflows

Receiving New Stock

  1. Open Snipe-IT on any device
  2. Create new asset or increase quantity
  3. Print barcode label
  4. Apply to product
  5. Assign to storage location

Checking Stock Levels

  1. Scan barcode or search product name
  2. View current quantity and location
  3. Check reorder point
  4. Export report if needed

Processing Sales/Usage

  1. Scan item barcode
  2. Click "Check Out"
  3. Assign to customer or reduce quantity
  4. System logs transaction with timestamp

Weekly Inventory Count

  1. Export current inventory report
  2. Walk warehouse with scanner
  3. Scan all items
  4. Compare scanned vs system quantities
  5. Adjust discrepancies

๐Ÿ”’ Security & Backup

Change Default Passwords

Immediately change any default passwords after installation. I don't care what else you're doing, do this right away. ๐Ÿ™ˆ

For sensitive business data, set up SSL certificates using Let's Encrypt or self-signed certificates.

Regular Backups

Option 1: Clone SD Card Weekly

# On your main computer with card reader
sudo dd if=/dev/sdX of=~/orangepi-backup-2024-11-09.img bs=4M status=progress

Option 2: Automated Database Backups Schedule automatic backups to USB drive or network storage:

# Add to crontab
0 2 * * * docker exec snipeit php artisan snipeit:backup
If there are any issues setting up backups, please let me know and I can write a better (but, unfortunately longer) method to follow. โš™๏ธ

User Management

  • Create separate accounts for each employee
  • Use strong passwords
  • Disable accounts when employees leave
  • Review audit logs monthly

Expansion Ideas

Add a Label Printer

Connect a thermal label printer via USB for on-demand barcode label printing.

Zebra Printer Users: This stuff below is optional, unless you need the label printer directly attached to your scanner system. If you're using a Zebra (I use Zebra 450's / 420's and older models), there's some other stuff you need to go do before your board will see the printer:

Using Zebra Label Printers on Linux

  1. Download the driver from the Zebra printer driver page
  2. Add the printer:
    - Open a web browser and go to http://localhost:631
    - Click "Administration" > "Add Printer"
    - Select your Zebra printer from the USB devices
    - Choose the correct driver from the list
    - Set paper size to match your label dimensions
  3. Test print a label to verify everything works.

Many Zebra printers also support ZPL (Zebra Programming Language), which lets you send label commands directly without going through CUPS. This can be useful for automated label printing from your inventory system.

Install the Zebra driver:bash

# Extract the downloaded driver
tar -xzf zebra-driver-file.tar.gz
cd zebra-driver-folder

# Run the installation script
sudo ./install.sh

Install CUPS (Common Unix Printing System) if not already installed:bash

sudo apt install cups

Multiple Scanner Stations

Add more Orange Pi units around your warehouse, all connecting to the same central database on a server.

Mobile Scanning

Install Snipe-IT mobile app on smartphones/tablets for inventory work anywhere in the building.

Integrate POS System

Many inventory systems can sync with Square, Shopify, or other POS systems. Here on MAL+ networ, I use Stripe. There are integration methods for that as well.

Add Cameras for Visual Verification

USB webcams can snap photos of items during check-in/check-out. You can set up any kind of camera you wish as long as it can connect to USB, including smartphones.


Real-World Use Cases

Retail Shop

Track products, monitor stock levels, generate reorder lists, check out sales

Workshop/Maker Space

Tool checkout system, parts inventory, material tracking

Small Warehouse

Multi-location tracking, receiving, picking, shipping logs

Restaurant/Cafe

Ingredient inventory, supplier management, recipe costing, expiration tracking

IT Department

Computer asset tracking, peripheral checkout, software license management


Total Cost Breakdown

  • Orange Pi Zero3 (4GB): around $45
  • MicroSD Card (256GB): around $25
  • Barcode Scanner: $30-60
  • Aluminum Case: around $15
  • Power Supply: around $10
  • Cables/Adapters: around $10

Total Build Cost: $135-165


Final Thoughts

This build shows how to set up a complete business inventory management system using an Orange Pi Zero3. The system handles document management, spreadsheet collaboration, and inventory tracking with barcode support.

The system runs quietly, uses minimal power, and can serve multiple users simultaneously. Start with basic inventory tracking, then expand as needed.

This model scales depending on the hardware you run it on, and the Orange Pi Zero3 is just a small form-factor way to do it. It would be better on a long-term to place your backend recording on a server and leave database off-device.

Need help or have questions? Feel free to reach out!