Chapter 5: The First Win
The PO automation goes live, and Sam discovers that the hardest part of trusting a system is letting go of being the one who does everything.
Want to keep reading?
Enter your email to unlock all chapters and get the complete book as a PDF.
Get the Full Book
We'll email you the complete PDF and unlock all chapters to read right here on the site.
You're in! All chapters are now unlocked.
We've also emailed you the PDF of Stop Being the Glue. Check your inbox.
Download the PDF NowSomething went wrong. Please try again.
Book download is not currently available. Please try again later.
Sam sends Oscar photos of the three legal pads. He studies them for three days. On the first, he texts her which day the roadmap will come. It comes that day, eleven pages with a fixed price on every piece, and he calls her to walk through it.
“I want to start with purchase order processing,” he says. “Not because it’s the biggest problem. Matching payments at month-end is actually a bigger time sink. But PO processing is the most visible. It’s where errors happen, it’s where Henderson’s feels the pain, and it’s where a win will be impossible to argue with.”
Sam appreciates this. She’d been bracing for a pitch to automate everything at once.
“Here’s what I want to build,” Oscar says. “And I want you to tell me if I’m wrong.”
He describes it step by step:
A purchase order email arrives in the shared inbox. The system detects it automatically, not by subject line, which is unreliable, but by checking the attachment type and scanning the first few lines. It downloads the PDF and sends it to an AI extraction engine that reads the document and pulls out every field: customer name, PO number, line items, quantities, grades, pricing, shipping instructions. The industry calls that piece Intelligent Document Processing, or IDP. It’s the only part of the whole design that’s actually AI. The extraction runs on a business account under a data agreement, so MapleCo’s purchase orders aren’t used to train anyone’s models, and Oscar writes down which provider sees which data, where it’s stored, and who can read the logs.
That extracted data gets matched against MapleCo’s customer database and price list. The system holds each order itself, as a draft, until it passes those checks. If everything checks out, known customer, valid products, correct pricing, the order is released and a clean packing slip prints on Ray’s dock. When the order ships, the system posts the invoice to QuickBooks Online through its official API. Henderson’s invoices post in US dollars, through the multicurrency MapleCo already has turned on.
If something doesn’t check out, unknown customer, mismatched price, a product they don’t carry, it flags the exception and sends it to Lisa with a clear summary: “Henderson’s PO #0851, everything matches except line 3: they ordered ‘Maple Butter, 500ml, 36 units’ but our catalogue lists Maple Butter in 375ml. Please clarify.”
Lisa reviews the exception. Makes one decision. Clicks approve or corrects the line. The system handles everything else.
“The robot does all the prep,” Oscar says. “Lisa reviews a clean summary. She clicks once. The robot does all the follow-through.”
“How long does this take to set up?”
“About five weeks. Two to design and build, one to test it against real orders, then a week or two running it alongside Lisa’s manual process to make sure nothing’s missed.”
“And the cost?”
“Thirty-five thousand, plus HST. Fixed, for a project your size,” Oscar says. “That covers the AI extraction engine, the QuickBooks integration, testing, and sixty days of monitoring and support after go-live.”
Sam does the math. A second clerk would have cost $65,000 a year, and finding that out cost her six weeks and $15,000. CloudSyncPro cost $30,000 and sat on a shelf. This costs about the same as the software and a lot less than a year of the hire.
“What happens when QuickBooks changes something?” Sam asks. “Or a customer changes their PO layout? Or you get hit by a bus?”
It’s the same question she asked about Lisa. Oscar seems to like that.
“Bus first. Your data, your logins, your documentation: all yours, written down, not in my head. You get a licence to run it, and the code itself is an option if you ever want it. It talks to QuickBooks through the standard API, not screen-scraping.”
“And the rest?”
“The rest is the part nobody puts in the brochure. None of this is set-and-forget. QuickBooks updates its API. Henderson’s will redesign their PO one day without telling you. The AI models underneath get retired and replaced. Something will drift, and it’ll pick a bad week to do it.”
“So who catches it?”
“For the first sixty days, I do. After that, it’s what we call Managed Automation. Twenty-five hundred a month, plus HST. We host it. It’s monitored around the clock and alerts us when something drifts, and on that plan a person responds the same business day. We fix what breaks and retune it when a customer changes a template. Lisa still owns the business calls, like approving the orders the system flags. We own the plumbing.”
Sam raises an eyebrow. “So I’m renting you forever.”
“If you’d rather run it in-house, that’s an option, and I’ll train whoever you pick. Most clients let us run it, for the same reason Ray doesn’t service his own forklifts.”
Sam thinks about the forklift tech who shows up once a month, and how Ray’s forklifts never seem to die in the middle of a shipping day.
“What about the human approval step?” Sam asks. “Lisa still reviews everything?”
“During the parallel run, she does every order by hand alongside it, and we compare. After that, routine orders from known customers with standard pricing go straight through, and Lisa only sees the exceptions.”
“Do it,” she says.
“One more thing,” Oscar says. “Send me your customer agreements. Before any customer’s data goes through this, I want to check it against what you’ve signed.”
That night she forwards Henderson’s supplier agreement without opening it. Oscar’s reply comes the next morning: I read it. Section 8.3 is about how your people handle Henderson’s data. The PO system is set up to meet it.
Sam files the email under later.
The build takes five weeks.
Oscar’s team is small. He does the architecture and the AI extraction himself, with a developer handling the QuickBooks integration.
“What happens when a customer orders a grade you’re out of stock on?”
“What if the PO has a typo in the product name?”
“What does Lisa do when a PO arrives in a format she hasn’t seen before?”
“What if the price on the PO doesn’t match your price list. Who wins?”
“What does Lisa do that the PO doesn’t say?”
Every answer reveals another edge case that a quick-and-dirty build would have missed. Oscar maps each one, decides whether the system should handle it automatically or flag it for a human, and builds accordingly.
The last question takes an entire afternoon. The first rule that comes out of it is one line long: Golden Dragon: “Dark” means Grade A Amber. Lisa dictates it. Oscar types it into the customer table. After eight years, it finally exists somewhere outside Lisa’s head.
During the second week, Sam makes a suggestion. She’s been watching the edge case list grow, and she’s been watching the calendar. Greg’s end of June is not getting any further away.
“Why not have the system reject anything it can’t read perfectly? We handle the weird ones by hand for now and launch faster.”
Lisa looks up from her desk. “How many is ‘the weird ones’?”
“Five percent? Ten?”
“Closer to twenty. Every Henderson’s PO, because of the cover sheet. Every fax from the Niagara restaurants. Every new customer.” Lisa doesn’t raise her voice. “Henderson’s is the account we’re failing. If their POs go into a ‘handle manually’ pile, we haven’t solved anything. We’ve given the problem a new address.”
The room is quiet. Oscar lets it sit.
Sam looks at Lisa for a long moment. “Do it properly,” she says to Oscar. She’s still looking at Lisa.
Later that week, Oscar gets something wrong. He presents his draft of the pricing logic to Lisa. “When a PO comes in, the system checks the master price list. If the customer has a contract rate, it uses that instead. If neither matches the PO price, it flags for review.”
Lisa reads it. “That’s wrong.”
Oscar looks up. He doesn’t get defensive, but he’s clearly surprised. “Which part?”
“The order. You check the contract rate first, not the master list. If there’s no contract, then you fall back to master. And for Henderson’s, you don’t check either one first. You check the PO price against the contract, and if Henderson’s is quoting lower than our contract rate, you flag it, because it means they’re working off an old version and we need to send them the updated agreement before we fill the order.”
Oscar checks his notes. “That’s not what the process documentation said.”
“The process documentation said ‘check pricing.’ It didn’t say which pricing, in what order, with what exceptions. Because I wrote that documentation at 8 PM after mapping three processes on legal pads and I was tired.”
Oscar reads his draft again. “I missed that distinction.” He crosses out two lines in his notebook and rewrites them: contract rate first, then the master list, and a Henderson’s PO priced under contract waits until they have the current agreement.
He looks at what he’s written. “The documentation is always version one. The person is version twelve.”
Lisa almost smiles. Almost.
It costs a day. The developer has already built the price checks in the old order, and every pricing rule has to come apart and go back together in Lisa’s.
Oscar also spends an afternoon on a folding chair by Ray’s shipping desk, with a notebook and a coffee. Ray, despite himself, starts talking.
“Sometimes the slip’s wrong because somebody changed the order after I printed it,” he says. “Once or twice a week. I’ve got a system.” He gestures at the whiteboard and a binder that looks like it predates email.
“I’m not going to replace your system,” Oscar says. “I’m going to make sure the data that reaches you is right before it gets here.”
Ray considers this. “That,” he says, “would be new.”
Week three: testing.
Oscar runs a batch of real purchase orders, last month’s, which Lisa already processed manually, through the new system. The AI extraction correctly reads 47 out of 50 POs. The three it misses are: a handwritten fax from a restaurant that uses carbon paper (Sam laughs, Oscar does not), a PO that was scanned at a 45-degree angle, and one from a new customer whose format the system had never seen.
“Ninety-four percent on the first pass,” Oscar says. “Two of those I can fix.”
He has the system straighten crooked scans before it reads them, and he adds the new customer’s layout to the extraction instructions. He reruns the batch. 49 out of 50.
The one left is the carbon-paper fax. Oscar holds the printout up to the window. Half the quantities are a grey smudge.
“No prompt fixes this,” he says. “Lisa can’t read it either. She calls the restaurant. So the system shouldn’t guess.”
He sets a confidence threshold, and he tunes it on real POs, because a model’s own sense of how sure it is isn’t a guarantee. When the system isn’t sure it read a field correctly, it doesn’t pick a number and hope. The PO goes straight to Lisa’s review queue, with the scan on one side, the system’s best reading on the other, and the shaky fields highlighted.
“The worst thing AI can do with a blurry fax is sound confident about it,” he says. “I’ll take ninety-eight percent and an honest exception over a hundred percent with a guess in it.”
It’s the first straight answer anyone has given to Ray’s question from the CloudSyncPro demo.
Then Oscar runs the test that counts. A batch you’ve tuned against stops being a test, so he pulls fifty POs from the month before, ones the system has never seen. It reads 48 of them correctly. That’s the number that goes in his report to Sam.
Lisa finds the two it got wrong. She has the batch spread across the boardroom table, each PO beside the system’s reading of it, and she goes down them with a ruler.
“Hamilton,” she says, at the second one.
A specialty grocer. A clean, typed PO, nothing smudged or crooked. Customer right. Product right. Price right. Quantity: twelve cases.
“They ordered four.” She puts her finger on the line. Right beside the quantity, the PO has a column for pack size: twelve bottles to a case. The system read the wrong column, and it was sure of itself. Twelve cases of a real product at the right price is a perfectly reasonable order, so every check passed. It just isn’t this order.
Oscar reads the line twice. Then he adds a check that does the arithmetic: quantity times price, line by line, against the totals printed on the PO. Twelve cases at $54 is $648. The PO says $216.
He reruns the Hamilton PO, and it lands in the review queue. Lisa doesn’t click anything.
“When I press Approve, what am I approving? The whole order?”
“Just the highlighted line. The customer, the products and the contract price all passed. The line total didn’t, so it’s asking about that line. Approve means it read the line right. If it didn’t, you correct it. Then the order carries on like any clean one.”
“Where does it say that?”
Oscar looks at the screen. A customer name, four lines, one yellow field and a green button. Every check he just listed is in the log. None of it is in front of her.
They rework it at the boardroom table. The checks go above the button, one line each, passed or failed. The original PO sits beside every order a person reviews, not just the shaky ones, with the questioned line highlighted. Under the button, one sentence says what she’s confirming. And Lisa decides which doubts are worth a phone call. A price she can check against the contract herself. A grade or a quantity she can’t be sure of, she calls the customer.
Week five: go-live.
They don’t flip a switch. They run the new system alongside Lisa’s manual process for a full week. Every PO gets processed both ways. At the end of each day, they compare results.
On Monday, the system matches Lisa perfectly on 8 out of 10 orders. The two mismatches are both pricing discrepancies: the system used the master price list, but two customers are on old contract rates that exist only in Lisa’s head.
Oscar adds the two rates to the customer table. Tuesday: 12 for 12.
“That’s a patch,” he tells Sam. “You still have three price lists that don’t agree. Sooner or later one of them will be wrong, and the system will believe it.”
On Wednesday morning, Ray asks Oscar to come out to the dock. Not Sam. Oscar. Oscar brings Sam and Lisa anyway.
For the parallel run, the system prints its overnight slips to a tray of their own on the shipping desk, marked PARALLEL, beside the live ones from Lisa’s manual entries. Ray has been through them with a pencil.
“These are right,” he says. “They’re just in the wrong order.”
He fans them out. The system printed them in the order the emails arrived: a restaurant, a Henderson’s distribution centre, a bakery, another restaurant. “The US truck loads first. The restaurants go on the afternoon run. I sort the live ones every morning before my guys get in. Now I’ve got two stacks to sort.”
He lays one slip on the desk and puts a sticky note beside it, in Lisa’s handwriting: Toronto group called 9:10, cut to 20. “Your slip says thirty. It was right at two in the morning. It’s wrong now. Which one do I load?”
Oscar looks at the two pieces of paper for a while. “I’ve been treating the order and the slip as the same thing.”
“They’re not,” Ray says. “The slip is me being told to move a pallet.”
They work it out standing at the shipping desk. An order stays a draft until it’s released to the warehouse, and the release is the instruction. Ray sets the release times, one for each carrier pickup, and decides which orders get a priority flag. Lisa lists what she has been passing along by phone and sticky note for years: the customers who change orders before nine, the two who want a call before every delivery. Sam names the customers whose dates are commitments, not preferences: Henderson’s receiving windows, the Guelph co-op’s flyer weeks, Golden Dragon’s Thursdays.
Oscar changes the release and print logic that night. Slips print at Ray’s release times, sorted by pickup, with the fixed dates on top. Every slip shows when its order was entered or last changed, and a change after release prints a replacement.
The next morning’s PARALLEL stack comes out sorted. Ray reads it twice, then puts his pencil behind his ear.
By Friday, the system has processed 53 purchase orders, and Monday’s two are the only mismatches. Lisa processed the same 53 orders manually, as she normally would, and found the automated version caught a pricing error that she had missed.
“The system caught my mistake?” Lisa says, sounding half-offended and half-impressed.
“The system never gets tired at 3 PM,” Oscar says. “You do. Everyone does.”
The following Monday, they go live for real.
Sam arrives at 8:15. She opens her laptop. On her dashboard, a simple web page Oscar built that pulls from the new order system and QuickBooks, she sees:
12 POs received overnight. 10 processed automatically. 2 flagged for review.
She clicks into the exceptions. The first one: a new customer whose company name doesn’t match any record. Easy. Lisa will confirm it’s a legitimate new account and add them. The second: a PO requesting a product that was discontinued last month. Lisa will call the customer and suggest an alternative.
Two decisions. Two clicks. Five minutes.
The same twelve orders would have taken Lisa two and a half hours to process manually. Price checks, cross-references, data entry, spreadsheet updates, all of it handled while Sam was sleeping.
Sam looks at the dashboard for a while. Then she gets up and makes a second coffee, because she has time to.
She calls Oscar. “It works.”
“I know. I was watching the logs.”
“That’s a little creepy.”
“That’s monitoring. It’s what the sixty days are for.” Everything the system did overnight is in that log, he tells her: what it read, what it checked, what it released, and why. “If Henderson’s ever asks why you shipped something, you can show them the whole chain.”
Three weeks in, Sam is a convert.
The numbers are hard to argue with. Purchase order processing has gone from 12.5 hours per week to approximately 45 minutes of exception review. No errors in the first three weeks, and every PO is validated against the price list and customer database before it’s released.
Lisa has 10 extra hours a week. She’s using them to call customers she hasn’t spoken to in months, chase outstanding invoices that have been sitting in AR for weeks, and work out which products have the best margins by customer segment.
“I didn’t know I could do this kind of work,” Lisa tells Sam one afternoon, looking up from a spreadsheet that she built herself, not as a workaround, but as an actual analysis tool. “I always thought I was the data entry person.”
“You were never the data entry person,” Sam says. “You were the person we couldn’t afford to waste on data entry.”
Lisa doesn’t answer right away. Then: “That’s the nicest thing you’ve said to me in eight years.” She’s joking. Mostly.
Henderson’s hasn’t said anything. No complaints. No “please confirm” follow-ups. Orders go out correctly and on time. The silence, Sam realizes, is the sound of things working.
Ray notices too, in his own way. “Third day in a row nothing’s wrong,” he says to no one in particular, holding a packing slip up to the light on a Tuesday afternoon. He sounds almost suspicious, like a man who’s been burned too many times to trust a streak. “Henderson’s keeps printing twice, though. Same numbers both times.” Nobody asks him about it.
Here is the thing Sam hasn’t told anyone.
She’s been processing Henderson’s POs herself. By hand. The old way.
Not all of them. Just the big ones. The weekly standing orders for the US distribution centres. The high-value seasonal orders. The ones where, if something goes wrong, Henderson’s notices within hours.
She tells herself it’s temporary. Just until she’s sure about the cover sheet, the US-dollar pricing, the volume discounts, the product codes Henderson’s uses that don’t quite match MapleCo’s catalogue.
Every night she pulls a comparison report: her entries against the system’s, line by line. They match. They have matched every night for three weeks. Every morning she keys in the next one anyway.
On a Thursday afternoon, Sam is manually entering Henderson’s weekly standing order. It’s the forty-third PO she’s touched this week, because she’s doing the Henderson’s ones on top of her regular work. She’s tired. She’s been at her desk since 7 AM. She’s answering emails between line items.
The PO says 48 cases Grade A Amber, 24 cases Dark, 12 cases Golden. She types it in, cross-references the pricing, saves the order, and updates the tracker.
She doesn’t notice the mistake. The system checks every line against the PO it came from. It would have flagged it.
Her entry never reaches those checks. During the parallel run, manual entries skipped validation and released straight to the warehouse, so the system couldn’t hold up Lisa’s side of the comparison. Sam never switched that off. For three weeks, every one of her entries has released the moment she saved it and printed a replacement slip that matched the system’s. This one doesn’t match. Its packing slip replaces the system’s, and Ray’s crew loads exactly what it says. Henderson’s receiving dock counts the pallet against the PO and rejects it. MapleCo gets a call.
Lisa is the one who traces it. She pulls up the PO in the system and sees two entries: the automated one (correct) and Sam’s manual one (wrong). The automated entry was created at 2:47 AM. Sam’s manual entry was created at 3:12 PM, and it went to the dock without a single check.
Ray gets to Sam’s office first.
He doesn’t knock. Ray hasn’t been in Sam’s office since the Christmas party. He walks in, drops two packing slips on her desk, and taps the timestamps, one at a time.
“2:47 AM,” he says. “3:12 PM. Guess which one my guys loaded.”
He walks out. Lisa comes in behind him and closes the door.
“Henderson’s rejected the pallet. Dark and Golden were flipped.”
“How?”
“You entered it manually. The system had it right. Your entry overrode it.”
Sam looks down at the two packing slips. She can feel it coming. Not from Lisa. From inside her own chest. The thing she’s been avoiding.
“Sam. Why are you still entering Henderson’s orders by hand?”
“I just wanted to make sure…”
“The system has been right every time. You’ve been checking it every night. I know because I see the comparison reports you pull.” Lisa’s voice is steady. Not angry. Something worse than angry. Honest. “The system would have caught this. You’re the reason it didn’t.”
Sam has no answer.
“I catch mistakes for a living, Sam. I’m not going to watch you become the person who creates them because you can’t let go.”
Lisa stands up. She pauses at the door.
“Let the system work, Sam. That’s what you paid for.”
She leaves. Sam sits alone in her office. The two packing slips are still on her desk where Ray dropped them. The correct one says 2:47 AM. Sam was asleep.
She looks at them for a long time.
Then she deletes the comparison report she’s been running every night, and the folder of Henderson’s POs she’s been keying in by hand. She opens the settings page and switches off the bypass. Corrections are still possible. Anyone can still fix an order, but now the fix goes through the same checks and the same release as everything else, with a reason and a name attached.
Gerald’s words come back to her: You didn’t build this business to be its best employee.
She calls Greg Hollis, explains the error, arranges the correction. She doesn’t make excuses. She says it was a manual processing mistake, and that it won’t happen again.
Two days later, Sam calls Oscar.
“I want to automate the payment matching next. And the shipping notifications. And the monthly reporting. Can we do all three at once?”
There’s a pause on the other end of the line.
“No.”
“I lost three weeks keying Henderson’s by hand. I need to make up the time.”
“Three builds at once is how you get something that works on test data and breaks in production. The PO system worked because we mapped it, tested it, and ran it alongside Lisa before anyone trusted it.”
“Fine,” she says. “One at a time.”
“Before the next one,” Oscar says, “two boring things. Neither one is an automation.”
“Oscar.”
“One price list instead of three, so the system and Lisa are reading the same numbers. That customer table is a patch, and patches leak. And the one-page AI policy we talked about in my office. Marcus asked me last week how I write the extraction prompts. He’s curious, which is great. Did you ever have that talk with him?”
Sam doesn’t answer that. She laughs instead, a little too hard. “Oscar, we sell maple syrup. We’re not CSIS. Nobody is stealing our secrets. And the price lists are fine now that you’ve got the customer table. I need hours back, not paperwork.”
Another pause.
“It’s your call,” Oscar says. “I’ll put both in writing so they stay on the list. Payment matching next, then?”
“No.” Sam has Henderson’s scorecard out of the drawer. She runs her finger down it. “Order accuracy. Delivery. Invoices. Nothing in here counts how many orders we type. And twice a week somebody on Greg’s team emails me to ask where a truck is.” She puts the scorecard down. “Shipping notifications. That’s the part Henderson’s can see.”
“Then that’s next,” Oscar says.
He prices the shipping notifications at $1,500 plus HST, fixed, and starts work. When a shipping label is created in the carrier system, the tracking number gets captured and emailed to the customer automatically. It bolts onto the pipeline that’s already running.
It goes live in four days. Greg Hollis sends Sam an email she’s never received before: “Hey Sam, whatever you changed with your shipping notifications, keep doing it. We’re getting tracking numbers within minutes now. Impressive.”
Sam screenshots that email and pins it above her desk.
Marcus has taken the PO system’s success as permission. If a machine can read a purchase order, why is he still building buyer reports by hand? So he’s been using his personal ChatGPT account to build small tools for himself. A prompt that summarizes customer emails. A template that drafts follow-ups to buyers. A prompt that turns a customer’s order history into a trend report he can send before a sales call.
Some of these are genuinely helpful. The problem is what Marcus is feeding into ChatGPT to make them work.
Customer names. Order quantities. Pricing data. Contract terms. Lisa’s notes on which customers get which discounts. And, lately, Henderson’s product mix.
Marcus isn’t being malicious. He’s being efficient. And he still wants Henderson’s. Twice now, Sam has said she’ll think about it. This, to him, looks like a way to show her.
Nobody has told him not to. The AI policy is on Oscar’s list, in writing, right under the price lists. Both are still on the list.
They can stay there about three more weeks.
Want the full book as a PDF?
All 7 chapters plus the 90-Day Playbook, the Process Discovery and Sam's Math worksheets, the Readiness Staircase self-check, Lisa and Ray's Questions, and Sam's AI Policy template. Free.
Take the book with you
The full PDF, with all 7 chapters, the 90-Day Playbook, the worksheets, and Sam's AI Policy template. Read it offline, or print the worksheets for your team.
What would your first win be?
Sam started with one process: purchase orders. Small enough to trust, big enough to matter. We'll help you find yours.