All work
09Automation2026

Invoice & Inventory Automation

A service garage was retyping every stock invoice by hand — and once that stock arrived, tracking what happened to it meant editing three sheets manually, one at a time.

A supplier invoice PDF parsed by Python into structured rows, flowing directly into the inventory sheet

Overview

This service garage buys stock from suppliers and tracks it in a Google Sheets inventory. Every invoice was previously typed in line by line, and once stock was logged, its status — used, sold, moved — only ever changed when someone remembered to update it by hand across separate Input and Output tabs, with nothing connecting the two.

The challenge

Two problems compounded each other: getting invoice data into the sheet meant manually transcribing every line item from PDFs that varied by supplier, and once stock was in, there was no consistent trail of what happened to it next. Nothing moved between tabs on its own.

The approach

The work covered both ends. A drop-in tool reads supplier invoice PDFs and extracts parts, quantities, prices and invoice numbers regardless of format, adding them straight into the inventory as new stock. The inventory sheet itself was then rebuilt around a set of macros, so a single status change — not three manual edits — carries an item automatically from Inputs into Transactions and, if it's used or sold, into Outputs.

The solution

A drop-a-PDF, press-a-button intake tool paired with a macro-driven inventory sheet: new stock lands in Inputs automatically, and one status change moves it through Transactions to Outputs — the record the garage keeps on hand for HMRC.

Main features

  • Drop-in PDF invoice processing — no manual typing
  • Handles multiple supplier invoice formats
  • Extracts part, quantity, price and invoice number automatically
  • New stock added directly to the inventory's Inputs
  • One status change moves an item from Inputs through Transactions to Outputs
  • Outputs tab kept audit-ready for HMRC

Technology and tools

  • Python
  • PDF parsing
  • OCR
  • Google Sheets
  • Apps Script macros

Gallery

The inventory dashboard showing live stock levels, low-stock alerts and automated summary totals
The summary totals recalculate the moment a new invoice lands, so a stock check is a glance rather than a scroll through three separate tabs.
The Outputs sheet showing a dated, sourced movement trail for used and sold stock, kept ready for HMRC
Every row in Outputs keeps its original invoice number and a timestamp, so a question months later — what happened to this part, when was it sold — traces straight back to the PDF it came from.

Start Here

Have a project in mind?

Tell me what needs to change, and I will give you an honest answer about whether I am the right person to build it.