← Back to blog

Trade Spend Reconciliation: The Ledger Nobody Owns

trade spend reconciliationtrade spenddeductionstrade promotiondispute windowsNetSuiteUNFI

Cinderhaven Provisions paid for the same UNFI feature twice: a $4,750 bill-back claim cleared in April, and in June the identical amount came out again as a deduction coded to nothing in the promotion calendar. Twenty overlaps like that a year, plus $150,000 in deductions that match no promotion at all, put $245,000 a year on the table. That is money the brand has standing to dispute, if it finds the match while the dispute window is open.

Cinderhaven is a fictional company and its figures are a synthetic dataset; the double payment it illustrates is among the most common findings in a real trade spend reconciliation. Its $245,000 sits inside a $380,000 annual gap between what the brand committed, what ran at shelf, and what the retailer took. How much of the $245,000 it gets to argue is decided less by the evidence than by the calendar it reviews the evidence on.

The match fails because nothing shares a key

Trade spend reconciliation is the work of matching three records of the same promotion: the money committed, the activity that ran, and the deductions the retailer took against it. The work is hard for a specific, technical reason. No identifier survives all three records.

The commitment lives in a deal sheet, for many brands a spreadsheet with one tab per retailer. The execution lives in scan data, pulled from Retail Link or UNFI Connect, keyed by store and week and item. The deduction arrives as a line on a remittance, posted to NetSuite or read off the bank statement, carrying the retailer's own reference number and a code from the retailer's own code list. The promotion's name appears in none of them. UNFI does not know the brand called it "Spring Feature, Zone 2." The brand's ERP does not know what deduction code TP-114 refers to.

So the match is inference: this deduction, from this retailer, on these SKUs, in this date range, at roughly this amount, probably belongs to that promotion. An analyst with the promo calendar open can tie most lines back in an afternoon per account. Without the calendar open, the deduction posts to a trade GL bucket, the ledger balances, and the question of what the money bought goes unasked.

The three files disagree because nothing requires them to agree.

Matched, the ledger shows $245,000 worth arguing about

Run the match across Cinderhaven's year and the $380,000 gap that a TPM dashboard cannot close resolves into three streams. About 20 double-funded promotions, where a bill-back claim and a deduction covered the same event, at an average of $4,750 paid twice: $95,000. Roughly $150,000 in deduction codes that tie to no planned promotion at all. And $135,000 in off-invoice allowances funded for displays that never ran or ran without moving units.

The three streams are not equally useful. The first two are claims. The brand's own files are the evidence: the cleared bill-back proves the double payment, the promotion calendar proves the orphan deduction bought nothing that was agreed to. Together they are $245,000 a year the brand can put in front of the retailer with documentation attached.

The $135,000 is different. Nobody deducted it wrongly; the brand spent it on activity that did not perform. Reconciliation surfaces it, and it changes next quarter's calendar rather than this quarter's recovery.

Reconciliation finds all three streams. Dispute has standing on two.

The dispute clock runs while the books close

Standing expires, and it expires at three different speeds. Walmart's Accounts Payable Dispute Portal runs the fastest clock in the set: AP chargebacks must be filed within 15 to 30 days of the posting date, while the standard filing window for other deductions runs 24 months and shortages get 12. UNFI sits in the middle, with disputes reported at 30 to 60 days and adjustments older than a year denied outright. KeHE allows 180 days through K-Solve. The windows are the trading partners' own. Cinderhaven's ledger is synthetic; the clocks it runs against are not.

Sort the $245,000 by clock speed rather than by retailer and it splits three ways: $55,000 on fast clocks measured in weeks, $70,000 on medium clocks of 30 to 60 days, and $120,000 on the slow clocks that run 180 days to two years. Now read each cadence against those three pools.

| Review cadence | Deduction age when read | Clocks still open | Contestable (of $245K) | |---|---|---|---| | Monthly | 20-50 days | All three, over half the fast pool | ~$220K | | Quarterly | 45-135 days | Slow only, plus the youngest medium | ~$130K | | Annual | 45-410 days | Slow only, and its oldest months expired | ~$95K |

Take the quarterly row, the cadence a brand lands on by default whenever the trade review rides the quarterly close. By the time the prior quarter's file is open, Walmart's 15-to-30-day codes are dead on arrival, and UNFI's window has closed on everything but the youngest two weeks of deductions. What survives is the slow-clock money and nothing else. The brand did not decide to forfeit $90,000 of standing between the monthly and quarterly rows; it decided when to hold a meeting.

The evidence keeps. The standing does not.

Cadence is a decision most brands have not made

In Inmar's 2022 survey of more than 300 CPG finance and accounts-receivable leaders, 56% of brands reported taking no proactive measures against deductions. That is not a tooling gap. Every brand already runs a monthly close that reconciles the bank, the AR aging, and inventory. Trade deductions pass through that same close, get coded to a GL bucket, and skip the one match that would give them a claim number, on the same lag that stalls the gross-to-net bridge.

Moving the promotion match into the monthly close costs an analyst a day per month with the promo calendar open: twelve days a year, about $4,800 of loaded time. Between the monthly and annual rows sits $125,000 of standing, surrendered by the review date alone, before anyone has judged a single claim on its merits. Even at Cinderhaven's 15% baseline recovery rate, that standing is worth roughly $19,000 of recovered cash against $4,800 of analyst time, and the cadence change outperforms software bought later, because software inherits whatever cadence the team already runs.

It also changes what a write-off is. A write-off should be a decision made about a documented claim. On an annual cadence, it is a default that happens to money nobody matched in time.

What one month of remittances gives back

Pick your worst month for deductions. Send the remittance detail and the promotion calendar behind it, and I will return the match rate, the deductions that tie to no promotion, and the dollars that expired while the file sat unread. One month is enough to see it. The expired column is usually the one that changes the review calendar.