Skip to main content
YUFAN & CO.
Back to Blog
blog.categories.industry-insights

How to Use AI Workflows to Kill the Passive Renewal Tax

Yufan Zheng
Founder · ex-ByteDance · MSc Peking University
1 min read
· Updated
Cover illustration for How to Use AI Workflows to Kill the Passive Renewal Tax

Look at the last 50 invoices that hit your Xero inbox this morning. Three are from your primary steel stockholder. Your MD negotiated those rates over lunch last month. The other 47 are for packaging, machine lubricants, safety boots, pallet wrap, and software subscriptions.

You're paying whatever price they emailed you last November. Your ops manager clicks approve because the line stops if the pallets don't ship. You're bleeding margin on the small stuff because nobody has the bandwidth to argue over a 4% hike on cardboard boxes.

It's a mess. Nobody knows why we accept it. End of.

Actually, enterprise companies know exactly why, and they stopped accepting it.

The passive renewal tax

The passive renewal tax is the margin you lose every month simply because your team lacks the human hours to negotiate the bottom 80% of your supplier contracts. It's a structural flaw in how SMEs buy things. You have 150 suppliers, but your ops manager only has time to talk to the top ten. The rest just slide through.

This isn't a new problem. But the way big business solves it has changed. Retail giants and global shipping lines used to ignore this tail-spend too. Now they automate it.

Take Maersk and Walmart. They recently deployed an AI platform called Pactum to handle their tail-end suppliers. According to Harvard Business Review, Walmart uses this system to negotiate with the 100,000 suppliers that make up the bottom 20% of their spend source (https://hbr.org/2023/11/how-walmart-and-maersk-are-using-ai-to-negotiate-contracts). The AI actively messages suppliers, agrees on terms, and updates the ERP.

Maersk did the same thing for spot trucking rates. When capacity got tight, their AI stepped in to analyse routes and secure trucks at optimal prices. They didn't hire 500 new junior buyers. They built a system.

A £10M UK manufacturing business doesn't need a massive enterprise platform like Pactum. You don't have 100,000 suppliers. But you do have the exact same margin bleed. Every time a supplier emails a new PDF price list and your accounts assistant just updates the system, you pay the passive renewal tax.

The money is sitting right there. You just need a mechanism to push back automatically.

Why the obvious fix fails

The obvious fix is buying a generic SaaS tool or wiring a shared Gmail inbox to ChatGPT via Zapier. You hope the AI will flag price hikes and draft pushback emails. This is what most SMEs try first. It fails completely.

Off-the-shelf invoice processing tools like Dext or Hubdoc are great at data entry. They extract the new, higher price from the invoice and feed it directly into Xero. They don't negotiate. They just make you pay the higher price faster.

So you try to build your own AI agent. You string together Zapier, Gmail, and an OpenAI API key. You tell the prompt to act like a tough procurement manager. Here's what actually happens.

Zapier's trigger fires on every new email thread. The packaging supplier emails you, attaching their 2026 price list as a PDF. Zapier's native Gmail integration often strips the attachment or fails to parse the binary data. It feeds only the email body text to ChatGPT.

The AI can't see the PDF. It hallucinates a response based on the friendly email body, cheerfully replying to the supplier and approving the unseen terms. You just automated your own margin compression. In my experience, if you run 100 generic supplier emails through Zapier's basic parsers, at least 15 of them will drop the attachment entirely or corrupt the text.

Zapier's linear logic also breaks when the supplier replies with a counter-offer. Zapier's email triggers don't thread context properly out of the box. When the supplier says we can meet you halfway, your Zapier bot treats it as a brand new interaction. It replies with a generic greeting, confusing the supplier and ruining the relationship.

A £25 a month ChatGPT subscription can't replace a £35k salary. A linear Zapier flow can't handle a multi-turn negotiation. You need a stateful system that actually understands the data before it speaks.

The approach that actually works

The approach that actually works

A technical architecture showing how n8n bridges the gap between unstructured PDF price lists and structured Xero historical data via Claude 3.5.

You need a workflow that reads the incoming price list, compares it to your historical Xero data, and drafts a highly specific counter-offer for a human to approve. Not Zapier. You build this in n8n.

Here's the exact mechanism. Your packaging supplier emails orders@yourbusiness.com with the subject line 2026 Price Update.

First, an n8n webhook catches the email via IMAP. The workflow extracts the attached PDF and passes it to the Claude 3.5 Sonnet API. You don't use a generic chat prompt. You use a strict JSON schema. You force Claude to output exactly four fields: Item_Name, Old_Price, New_Price, and Percentage_Increase.

Next, n8n queries the Xero API. It searches your last three paid invoices for that specific supplier to verify the Old_Price. If the supplier claims the old price was £15.00 but Xero says you paid £14.50, the system flags the discrepancy.

If the Percentage_Increase is greater than 3%, the workflow moves to the negotiation step. It triggers another Claude API call, feeding it the exact Xero data and the supplier's new terms. Claude generates a polite, data-driven pushback email.

The prompt instructs the AI to say something like: Hi Dave, I noticed the 5% bump on the 500mm pallet wrap. We're looking to consolidate our packaging spend this quarter and need to keep this at last year's £14.50 a roll to maintain our current volume with you. Can you do that?

Crucially, n8n doesn't send this email. It uses the Gmail API to create a Draft in your ops manager's inbox. Your ops manager reviews the draft, tweaks it if necessary, and clicks send. You keep the human in the loop, but you remove all the manual data gathering.

This system takes about 2 to 3 weeks of build time. It costs roughly £6k to £12k to ship, depending on how clean your Xero supplier data is. The API costs to run it are pennies per email.

The most common failure mode is the AI hallucinating the unit of measure. It might confuse the price per roll with the price per box. You fix this by forcing the JSON schema to extract the unit of measure and comparing it directly to the item code in Xero. If they don't match, the workflow stops and pings you in Slack.

Where this breaks down

This system is highly effective for standard commodities, but it's not a silver bullet. You need to know where it fails before you commit resources to building it.

First, it breaks on legacy accounting setups. If you're running an on-premise version of Sage 50 from 2018, API access is a nightmare. The n8n workflow can't easily query your historical purchase data to verify the supplier's claims. Without that ground truth, the AI is flying blind.

Second, it fails on complex multi-line bills of materials. If your raw material prices are pegged to external indices, like LME copper prices, a simple percentage check doesn't work. The AI needs real-time market data feeds to know if a 6% increase is a rip-off or a genuine reflection of spot prices.

Third, document quality matters. If your invoices come in as scanned TIFFs from a legacy supplier who still uses a fax machine, you need a dedicated OCR layer first. Once you rely on OCR for handwritten delivery notes, the error rate jumps from 1% to around 12%.

Check your data maturity before you start. If your suppliers email clean PDFs and you use cloud accounting, you're ready. If your warehouse is buried in carbon-copy paper, fix that first.

What to do this week

  1. Export your Xero supplier spend for the last 12 months to a spreadsheet. Sort the list by transaction volume, not total spend. Identify the 20 suppliers you interact with most but spend under £50k with. These are your prime targets for automation.
  2. Open your Gmail or Outlook. Search for price update or revised pricing in the last 90 days. Count exactly how many of those emails you just accepted without replying. Put a rough pound value on that passive renewal tax. Seeing the real number changes how you view this problem.
  3. Set up a free Make or n8n account. Build a simple workflow that watches your inbox for emails containing those specific keywords and drops them into a dedicated Slack channel. Don't try to automate the negotiation yet. Just build the visibility layer to stop the silent approvals.
  4. Pick one low-risk supplier from that Slack feed. Draft a polite pushback email asking to hold last year's pricing for another six months. Send it manually. Watch how often they just say yes. Once you prove the mechanism works, you can build the system to scale it.

Get our UK AI insights.

Practical reads on AI for UK businesses — teardowns, how-to guides, regulatory news. Unsubscribe anytime.

Unsubscribe anytime.