Custom Order Management System (OMS)
One system of record from order to installation to invoice
Bespoke order management systems for businesses whose orders don't fit a shopping cart — configured products, staged payments, installation dates, contracts and certificates. I build the operational backbone that replaces the spreadsheet everyone is quietly afraid of losing.
Order #2041
Acme Trade Ltd
Quoted
Deposit Paid
Stock Allocated
Delivered
Installed
Invoiced
System of Record
Re-keyed Order Data
Audit Trail per Order
Common Challenges I Solve
High-growth companies often face these technical hurdles. I provide the architectural oversight to navigate them safely.
The Spreadsheet Is the System
The real order book lives in one shared file that three people edit, nobody can audit, and everybody is quietly afraid of losing.
Documents Are Made by Hand
Quotes, contracts, delivery notes, handover acts and certificates are assembled in Word from the last similar one — which means version drift and errors nobody catches until a dispute.
Nobody Can Answer "Where Is My Order?"
The answer lives across a spreadsheet, an inbox, a warehouse WhatsApp group and the installation coordinator's memory — so every customer query costs three internal calls.
Built in Slices, Not a Big Bang
The first useful piece goes live long before the whole platform is finished — and you can stop at any module boundary with real value delivered.
With 18+ years in the industry, I've seen stacks rise and fall. I don't follow hype; I follow what works for your business.
What's Included
Every project is different, but here's what you can typically expect.
Order Lifecycle & Status Model
Your actual stages — quoted, deposit taken, allocated, manufactured, delivered, installed, signed off, invoiced — with the rules about what can move where, enforced rather than remembered.
Automated Document Generation
Quotes, order confirmations, contracts, delivery notes, handover acts and certificates generated from order data. One source of truth, correct every time, in your own templates.
Stock Allocation & Reservations
Stock reserved against an order rather than counted twice. Multi-warehouse visibility, incoming shipments, and honest lead times you can quote from with confidence.
Configured & Made-to-Order Products
Products with options, dimensions, variants and dependent pricing rules — the orders that never fit a standard e-commerce cart, modelled properly.
Pricing, Discounts & Approvals
Price lists per customer tier or dealer, discount limits per salesperson, and approval workflows above threshold. Margin becomes visible at the point the deal is made, not at month end.
Dealer & Customer Portal
Let dealers place and track their own orders, and let end customers see status without phoning. Every self-served status check is a call your team doesn't take.
Accounting & ERP Integration
Two-way sync with Xero, QuickBooks, Sage or an existing ERP. Invoices raise from verified order data instead of someone re-typing it into a second system.
Full Audit Trail
Every price change, status move, document issued and approval given is recorded with who and when. Disputes stop being an argument about memory.
Everything an Order Should Do By Itself
From quote to reconciled invoice — without anyone re-typing anything
Quote to Contract
Configured products priced and signed without Word
Stale prices
Never
Versions
Tracked
Turnaround
Minutes
Dealer Portal
Dealers place and track orders without phoning you
Calls
Fewer
Pricing
Per dealer
Status
Self-serve
Document Autopilot
Every document generated from one order record
Assembly
Automatic
Wrong clause
Never
Every copy
Identical
Staged Payments
Deposit, balance and retention tracked per order
Due dates
Visible
Missed
None
Chasing
Automated
Trade Credit Accounts
Credit limits and terms enforced at order time
Limits
Enforced
Overdue
Flagged
Exposure
Visible
Back Orders
Out-of-stock lines fulfilled the moment goods land
ETAs
Honest
Fulfilment
Automatic
Lost sales
Fewer
Multi-Channel Intake
Web, phone and showroom land in one order book
Channels
Merged
Duplicates
None
Handling
Uniform
Returns & RMA
Inspections, credit notes and restock in one flow
Reasons
Logged
Credits
Accurate
Stock
Recovered
Price List Engine
Cost changes ripple through every tier correctly
Updates
One click
Margins
Protected
Old prices
Retired
Contract Renewals
Expiry dates chase themselves, not your team
Expiries
Flagged
Renewals
On time
Revenue
Retained
Quote to Contract
Configured products priced and signed without Word
Stale prices
Never
Versions
Tracked
Turnaround
Minutes
Dealer Portal
Dealers place and track orders without phoning you
Calls
Fewer
Pricing
Per dealer
Status
Self-serve
Document Autopilot
Every document generated from one order record
Assembly
Automatic
Wrong clause
Never
Every copy
Identical
Staged Payments
Deposit, balance and retention tracked per order
Due dates
Visible
Missed
None
Chasing
Automated
Trade Credit Accounts
Credit limits and terms enforced at order time
Limits
Enforced
Overdue
Flagged
Exposure
Visible
Back Orders
Out-of-stock lines fulfilled the moment goods land
ETAs
Honest
Fulfilment
Automatic
Lost sales
Fewer
Multi-Channel Intake
Web, phone and showroom land in one order book
Channels
Merged
Duplicates
None
Handling
Uniform
Returns & RMA
Inspections, credit notes and restock in one flow
Reasons
Logged
Credits
Accurate
Stock
Recovered
Price List Engine
Cost changes ripple through every tier correctly
Updates
One click
Margins
Protected
Old prices
Retired
Contract Renewals
Expiry dates chase themselves, not your team
Expiries
Flagged
Renewals
On time
Revenue
Retained
Quote to Contract
Configured products priced and signed without Word
Stale prices
Never
Versions
Tracked
Turnaround
Minutes
Dealer Portal
Dealers place and track orders without phoning you
Calls
Fewer
Pricing
Per dealer
Status
Self-serve
Document Autopilot
Every document generated from one order record
Assembly
Automatic
Wrong clause
Never
Every copy
Identical
Staged Payments
Deposit, balance and retention tracked per order
Due dates
Visible
Missed
None
Chasing
Automated
Trade Credit Accounts
Credit limits and terms enforced at order time
Limits
Enforced
Overdue
Flagged
Exposure
Visible
Back Orders
Out-of-stock lines fulfilled the moment goods land
ETAs
Honest
Fulfilment
Automatic
Lost sales
Fewer
Multi-Channel Intake
Web, phone and showroom land in one order book
Channels
Merged
Duplicates
None
Handling
Uniform
Returns & RMA
Inspections, credit notes and restock in one flow
Reasons
Logged
Credits
Accurate
Stock
Recovered
Price List Engine
Cost changes ripple through every tier correctly
Updates
One click
Margins
Protected
Old prices
Retired
Contract Renewals
Expiry dates chase themselves, not your team
Expiries
Flagged
Renewals
On time
Revenue
Retained
Stock Allocation
Reserved against orders, never counted twice
Double-sold
Never
Warehouses
All visible
Lead times
Honest
Accounting Sync
Verified completions become invoices in Xero
Re-typing
Zero
Two-way
Synced
Month-end
Calmer
Made-to-Order Spec
The order is the production spec — no misreads
Remakes
Fewer
Spec
One source
Ambiguity
Zero
"Where Is My Order?"
Answered by a portal, not three internal calls
Internal calls
Zero
Status
Live
Trust
Earned
Supplier POs
Low stock raises the purchase order itself
Reorders
Automatic
Stock-outs
Rarer
Goods-in
Matched
Delivery Scheduling
Routes, time slots and proof of delivery
Slots
Kept
POD
Signed
Disputes
Closed fast
Serial Tracking
Every unit traced from goods-in to warranty
Units
Traced
Recalls
Scoped fast
Claims
Verified
Margin Dashboard
Profit per order visible before month end
Margin
Per order
Leaks
Spotted
Month-end
No surprises
Part Deliveries
Split shipments without losing the balance
Splits
Tracked
Balances
Never lost
Invoicing
Per shipment
Quote Follow-Ups
No quote dies in someone's sent folder
Follow-ups
Automatic
Pipeline
Visible
Forgotten
None
Stock Allocation
Reserved against orders, never counted twice
Double-sold
Never
Warehouses
All visible
Lead times
Honest
Accounting Sync
Verified completions become invoices in Xero
Re-typing
Zero
Two-way
Synced
Month-end
Calmer
Made-to-Order Spec
The order is the production spec — no misreads
Remakes
Fewer
Spec
One source
Ambiguity
Zero
"Where Is My Order?"
Answered by a portal, not three internal calls
Internal calls
Zero
Status
Live
Trust
Earned
Supplier POs
Low stock raises the purchase order itself
Reorders
Automatic
Stock-outs
Rarer
Goods-in
Matched
Delivery Scheduling
Routes, time slots and proof of delivery
Slots
Kept
POD
Signed
Disputes
Closed fast
Serial Tracking
Every unit traced from goods-in to warranty
Units
Traced
Recalls
Scoped fast
Claims
Verified
Margin Dashboard
Profit per order visible before month end
Margin
Per order
Leaks
Spotted
Month-end
No surprises
Part Deliveries
Split shipments without losing the balance
Splits
Tracked
Balances
Never lost
Invoicing
Per shipment
Quote Follow-Ups
No quote dies in someone's sent folder
Follow-ups
Automatic
Pipeline
Visible
Forgotten
None
Stock Allocation
Reserved against orders, never counted twice
Double-sold
Never
Warehouses
All visible
Lead times
Honest
Accounting Sync
Verified completions become invoices in Xero
Re-typing
Zero
Two-way
Synced
Month-end
Calmer
Made-to-Order Spec
The order is the production spec — no misreads
Remakes
Fewer
Spec
One source
Ambiguity
Zero
"Where Is My Order?"
Answered by a portal, not three internal calls
Internal calls
Zero
Status
Live
Trust
Earned
Supplier POs
Low stock raises the purchase order itself
Reorders
Automatic
Stock-outs
Rarer
Goods-in
Matched
Delivery Scheduling
Routes, time slots and proof of delivery
Slots
Kept
POD
Signed
Disputes
Closed fast
Serial Tracking
Every unit traced from goods-in to warranty
Units
Traced
Recalls
Scoped fast
Claims
Verified
Margin Dashboard
Profit per order visible before month end
Margin
Per order
Leaks
Spotted
Month-end
No surprises
Part Deliveries
Split shipments without losing the balance
Splits
Tracked
Balances
Never lost
Invoicing
Per shipment
Quote Follow-Ups
No quote dies in someone's sent folder
Follow-ups
Automatic
Pipeline
Visible
Forgotten
None
These are examples — your products, price rules and documents define the real system.
Common Use Cases
Tailored solutions designed for your specific business requirements.
Direct Expert Partnership
When you hire an agency, your project is often delegated to junior developers while senior architects only appear during sales calls. With me, you work directly with the architect.
Senior Involvement
100% of architectural and critical code is handled by a Senior Developer with 18+ years experience.
Lower Overhead
No project managers or account executives. You pay for engineering, not for office space and sales teams.
Rapid Decision Making
Direct access means no "internal meetings" to get an answer. We move as fast as your business needs.
"I build systems that don't just work—they excel under pressure."
Ihor Chyshkala
Senior Technical Architect
How We Work Together
Map the Order
I trace one real order end to end — every hand-off, every document, every place data is re-keyed — and write down the status model you actually use.
Model & Migrate
The data model is agreed before any screens exist, and historic orders are migrated so the new system launches with real history behind it.
Build in Slices
Order intake and documents first, because that's where the pain is. Stock, portal and integrations follow once the core is live and trusted.
Cut Over
A parallel-run period where both systems hold the truth, then a hard switch once reconciliation is clean. No big-bang weekend gambles.
Explore Before You Contact
Not sure where to start? These free tools can help you clarify your needs and come prepared for our conversation.
Related Services
Often combined with order management
Ready to Get Started?
Let's discuss your project and see how I can help.
An order management system is the operational spine of any business where an order is more than a checkout. If your orders involve configuration, lead times, deposits, delivery, installation, sign-off and a stack of documents, then the order is not an event — it's a process that runs for weeks or months. Most UK businesses in that position manage the process in a shared spreadsheet supplemented by email, and it holds together far longer than it should, right up until the order book grows past what one coordinator can hold in their head.
The Symptoms of Outgrowing the Spreadsheet
There's a fairly reliable set of signals. Nobody can answer "where is my order?" without asking at least two colleagues. The same order data is typed into three places — the spreadsheet, the accounting package and a Word document. Two people editing the file at once produces a version conflict and a quiet argument. A customer produces a quote with a price nobody can explain and there's no record of who approved it. And most tellingly: one specific person cannot go on holiday without the order process degrading, because the rules live in their memory rather than in any system.
None of these is individually fatal. Together they impose a tax on every order you process, and that tax grows faster than headcount, because coordination cost scales worse than volume does.
Where This Works Best
Equipment distribution through dealer networks — dealer-specific price lists, order tracking dealers can self-serve, stock allocation across branches, and warranty registration tied to serial numbers. The dealer portal alone usually removes a meaningful share of inbound phone traffic.
Made-to-order manufacturing — configured products where the order determines the production spec. The value is a single unambiguous record of what was ordered, so remakes caused by a misread spec stop being a monthly occurrence.
Installed products — windows, kitchens, HVAC, solar — where the order carries a survey, a manufacturing slot, a delivery and an installation date, plus deposit and balance payments. This is the case where an OMS and field service management genuinely belong together.
B2B trade supply — account customers with credit terms, negotiated pricing, part deliveries and back orders. Standard e-commerce platforms model none of this well; an OMS models all of it as first-class concepts.
Documents Are Usually the Fastest Win
When I map a client's order process, document generation is almost always the first thing worth automating. Quotes, order confirmations, contracts, delivery notes, handover acts, warranty certificates — assembled by hand from the last similar document, which means every one carries the risk of a stale price, a wrong address or a clause from a different customer's deal.
Generating documents from order data removes an entire class of error and typically saves hours per week per person, but the real benefit is downstream: once documents are generated rather than authored, they're consistent, they're versioned, and they're admissible when a dispute arrives eighteen months later. It's also the module that builds internal trust in the new system fastest, which is why I usually ship it first.
Custom OMS vs Off-the-Shelf
The honest position: if you sell standard products through a standard checkout, you don't need this. Shopify, WooCommerce and their ecosystems handle that well, and bolting a custom system onto a solved problem is a waste of money.
A custom OMS earns its cost when the order has a long life after payment, when your pricing and approval rules are specific to your business, when the process spans teams that currently work in separate tools, and when the system must integrate with things you already run rather than replace them. The alternative — a full ERP implementation — solves the problem too, but at several times the cost and with a change-management burden that mid-sized businesses routinely underestimate.
Integration, Not Replacement
The most common mistake I see is scoping an OMS to replace everything. It shouldn't. Your accounting package is fine — Xero, QuickBooks and Sage all have solid APIs and your accountant knows them. Your storefront is fine. Your warehouse system, if you have one, is probably fine too.
The OMS should own the order lifecycle and become the system of record for commercial truth, then push and pull cleanly across the boundaries. That keeps the build scoped, keeps the risk bounded, and means the project can be stopped or paused at a module boundary with something valuable already delivered. Replace-everything projects don't offer that, which is exactly why so many of them fail expensively.
What It Costs and How Long It Takes
A fixed-price discovery — mapping the order flow, agreeing the status model and data model, and producing a costed build plan — starts around £3,500 and takes about a week. An MVP covering order intake, the status model, document generation and spreadsheet migration typically runs £30,000–£60,000 over 8–14 weeks. A full platform adding stock allocation, dealer portal, pricing approvals and two-way accounting integration generally sits between £80,000 and £160,000 across 6–12 months.
Those ranges are wide because scope genuinely varies. What doesn't vary is the sequencing: intake and documents first, because that's where the daily pain lives and where trust in the new system gets built.
Getting Started
The starting point is one real order, traced end to end. Every hand-off, every document produced, every point where the same information is typed a second time. That exercise usually takes a day and produces both a costed build plan and a short list of fixes worth making immediately, before any software exists.
Based in Manchester, I work with distributors, manufacturers and installation businesses across the UK. If your order book lives in a spreadsheet that's become too important to trust, let's map it out and see what the honest options are.