Single source of truth: don't become the integration layer
How to architect your stack around a single source of truth — naming one owner for each kind of data, telling a healthy connection from a brittle one, and deciding what to consolidate versus what to merely connect — so your team stops re-keying and reconciling between systems.
Chef Diego runs a real food plant. If this page didn't get you there, tell us — a person reads every message.
After this lesson you can draw how data actually moves through your operation,
circle every place a person retypes the same fact into a second system, and decide
— for each kind of data — the one system it lives in and who reads from there. That
is how you stop your team from being the glue between your own tools.
When your team becomes the integration layer
Here is a stack that grows one honest decision at a time. A tool for inventory. A
separate one for production. The books in an accounting package. A shipping app for
the labels. A spreadsheet or two that nobody quite admits to. Each was bought to
solve a real problem, and each does its own job well enough. The trouble is not any
one of them — it is that none of them talk to the others.
So a person carries the data across the gaps by hand. An order gets typed into the
sales tool, then typed again into inventory, then again onto the books. A lot number
lives in one place and the batch that used it lives in another, so someone keeps a
third sheet to tie them together. When two numbers that should match do not, someone
stops to find out why. That person — your team — has become the
.
The trap shows up in three shapes:
Re-entering. The same order, the same receipt, the same lot typed into two or
three systems because none of them feed the next.
Reformatting. The same information rebuilt into a different shape for each
destination — one layout for a retailer's portal, another for the books, another
for the spreadsheet you actually trust.
Reconciling. Chasing the gap when the count in one system and the count in
another drift apart, as they always do once two places both claim to hold it.
None of this scales. Every new customer, item, or sales channel adds more to carry
by hand, and every hand-off is one more chance to fumble a number. The reflex is to
buy another tool to fix it — but a tool with no clean connection to the rest just
adds another seam for a person to bridge. More apps, more tabs open, and still none
of them talking. The way out is not another tool. It is deciding, on purpose, where
each fact lives and how it travels.
Name one owner for each kind of data
Start with a principle that sounds obvious and is broken constantly: every fact
should have a .
When a fact lives in exactly one place, there is nothing to reconcile. When it lives
in two, reconciling is your job forever.
To make that real, go kind of data by kind of data and name its
. Walk the list a food manufacturer actually keeps, and for each,
answer one question out loud: which system owns this?
Items and SKUs — your product and material list
Suppliers and customers
Recipes and bills of material
Units of measure
— the pounds, cases, and each-counts everything else is converted against
Purchase orders and receiving
Lots and inventory levels
Production and batch records
Customer orders and invoices
The ledger — your books
The rule is one owner per kind of data. If two systems both let you edit the same
fact, you do not have a backup — you have two truths and a standing chore to keep
them agreeing. The sharpest test is a question you should be able to answer without
hesitating: which system owns our inventory count? If the honest answer is "well, it
depends," that is a kind of data with no clear owner, and that missing owner is
exactly where your reconciling comes from.
Healthy connections and brittle ones
Once each kind of data has an owner, the owners still need to share. That sharing is
an . Not every connection is equal, though, and the
difference decides whether it saves you work or quietly becomes more of it.
A healthy connection has a few plain properties:
One direction of authority. The owner sends; the other side receives and reads.
Both sides editing the same field is how you get two truths that fight.
Automatic, on a schedule you can name. Live, or a sync that runs on a known
cadence — not a person remembering to click export on Friday.
Keyed on a stable id. It matches records on something that does not change, like
a SKU code or a lot id, not on a name someone might spell two ways or rename next
quarter.
Observable. When it breaks, someone is told. The silent failure — the sync that
stopped weeks ago and nobody noticed until the numbers drifted — is the dangerous
one.
Owned by a person. Somebody knows how it works and fixes it when it breaks.
A brittle connection is the integration layer wearing a coat. The nightly export
someone pastes in by hand is still manual work. The two-way sync where both sides can
edit the same field will fight and leave you reconciling. The match-by-name that
breaks the day a product is renamed fails quietly and hands the cleanup back to you.
When you evaluate a connection — your own or one a vendor is selling — hold it up to
those properties and see how many it actually has.
Consolidate or connect
There are only two honest ways to remove a seam: consolidate the two kinds of
data into one system so there is no seam to cross, or connect them across a
healthy integration and leave them in separate systems. Knowing which to reach for,
seam by seam, is the whole architecture decision.
Consolidate what you re-key every day. The operational kinds of data move together
constantly: a receipt creates a lot, the lot feeds a batch, the batch becomes
finished goods, an order ships that stock, and the inventory count moves at every
one of those steps. Split them across separate tools and your day becomes retyping
between them, because they are really one story told in five places. They belong
under one roof.
Operations platforms built for food manufacturers exist to do exactly that — hold
purchasing, receiving, inventory, production, and sales in one place, so the lot you
receive in the morning is the same lot the batch consumes and the order ships, with
no one retyping it between steps. Bettr Manager, the operations platform that
publishes Kitchen to Plant, is one such system; naming it here is disclosure, not a
recommendation, and you would put it through the same scripted demo and reference
calls as anything else on your list. The point holds whatever you buy: the kinds of
data you re-key every day are the ones that belong together.
Connect what a specialist genuinely owns. Your books are the clearest case.
Accounting is its own discipline, your accountant lives inside it, and it is the
rightful system of record for the ledger. You do not want your operations system to
turn into your accounting system — you want it to hand summarized numbers across one
clean connection, so an order becomes a receivable without anyone retyping it. The
lesson on the
order-to-cash and accounting hand-off
walks that exact seam. The same holds for a big retailer's
or an online sales channel: those are
somebody else's system of record. You connect to them; you do not try to absorb them.
So the heuristic is short: consolidate what you re-key; connect what a specialist
system already owns well. Fewer seams, and every seam that remains built to the
healthy properties above — that is the shape you are aiming for.
Pull one seam out first
You do not fix the whole map at once. Trying to is how a system rollout turns into a
drawn-out ordeal. You fix it one seam at a time, worst first.
Draw your current data flow on a single page: every system and every spreadsheet, and
an arrow for every place a person carries the same data from one to another by hand.
Then circle each of those manual re-entry points — each is a seam, and each is a spot
where your team is being the integration layer.
Now rank them by pain. Which seam eats the most time, fumbles the most numbers, or
stops you cold when it breaks? Pick that one. Decide whether it gets consolidated —
one owner absorbs both kinds of data — or connected with a healthy integration. Then
eliminate that single re-keying step and let the rest wait.
One seam removed is a real win your team feels the same week, and it teaches you how
the next one will go. Which seam to pull first, and how to stand up a new system
around it without the drawn-out, months-long rollout, is the next lesson.