Freight Close

User guide

Everything you need to run the month-end freight accrual — set up a new period, work the eight close steps, and reconcile when invoices arrive. Each step links straight to the tab that does the work; the calculation flow lives on Method & sensitivity and the reconciliation flow on Closed periods.

Setting up a new period

Get the month's data into the engine — then work the close steps below.

  1. 1.Open Run a close.
  2. 2.Load a bundled sample period to see it priced instantly, or upload the month's shipments CSV (and any newly-arrived carrier invoices) — validated against the schema, every fallback flagged.
  3. 3.Confirm the close period (auto-inferred from the file).
  4. 4.Click Run close — the deterministic engine prices the accrual in your browser and saves it with its inputs and the rate-card version in force, so the close reproduces bit-for-bit.
  5. 5.The period is now ready — work the eight close steps below.

Closing the period — the eight steps

Expand any step for what to look for and the action to take. Each step opens the tab that does the work.

1Review the accrualOverviewMonth-end close (Day 1) · Go/no-go: total, confidence band, bias, tie-outs

Start here. The Overview shows the recommended accrual, the ±1σ confidence band, the six-month bias, and whether every control tie-out passes. This is your go/no-go decision point before any drill-down.

What to look for
  • Total accrual and confidence band are reasonable for the month's volume
  • Accrual bias is near zero — no systematic over- or under-statement
  • All tie-outs pass (the header badge is green)
  • The calibration line reads sensibly (printed card vs the calibrated rate)
Action — If the number and band look reasonable and tie-outs pass, proceed. If a tie-out fails, stop and fix it before continuing.
2Drill into carrier & shipment detailShipment backupMonth-end close (Day 1) · Every dollar ties to a shipment — full calc trace

Every booked dollar ties to a shipment. Open Shipment backup for the full calc trace of any shipment (base → fuel → accessorials → minimum/residential), filter to flagged rows, or switch to the map for a geographic read.

What to look for
  • Per-carrier split is sensible (Peak 40 / Heartland 65 / Coastal 55)
  • A sample shipment's calc trace is correct end-to-end
  • Flagged shipments are the ones you would expect
  • Nothing was priced on a silent fallback
Action — Spot-check two or three shipments per carrier. If a trace looks wrong, note the shipment id and check Rates or Exceptions.
3Review exceptions & controlsExceptionsMonth-end close (Day 1) · Review & annotate every flag; ready-to-close gate

Every fallback and assumption raises a flag — no silent defaults. Review the register, pin a disposition note to each material flag, and confirm the period is “ready to close.”

What to look for
  • Zero error (blocking) flags
  • Warnings reviewed and acceptable (dedup, imputed weight, mileage fallback, rate divergence)
  • Each material flag carries a reviewer note
  • The banner reads “Ready to close”
Action — Resolve any error flags before sign-off. Annotate the warnings with their disposition so the audit trail is complete.
4Validate accuracyAccuracyMonthly review · Reconstruction + out-of-sample back-test

Two honest views of the engine's own accuracy. Reconstruction proves the pricing mechanics reproduce six months of invoices to the cent (in-sample); the expanding-window back-test is the out-of-sample test, calibrated only from prior months.

What to look for
  • Reconstruction error ≈ $0 — the mechanics are correct
  • Out-of-sample MAPE is within your tolerance
  • Bias is near zero — it matters more than per-month error
  • The per-carrier breakdown explains the misses
Action — Bias is what compounds in the P&L — if it drifts from zero, investigate. Per-month noise is expected and is carried in the confidence band.
5Test sensitivity & check ratesMethod & sensitivity · RatesWhen uncertain · quarterly · What moves the number; printed vs calibrated rates

Drag the assumptions in the sensitivity lab to see what moves the number (and see how the accrual is calculated, end to end). Check Rates for printed-card-vs-calibrated divergence and any rate-card change effective this month.

What to look for
  • What a fuel-surcharge or volume change does to the accrual
  • Calibrated index vs the printed card (divergence is flagged in both directions)
  • Whether a carrier repriced — if so, save a new effective-dated card
  • Worst-case / best-case range for CFO reporting
Action — Document any scenario that produces materially different results. If a carrier renegotiated, save a new rate-card version effective from that month.
6Book the journal entryJournal entriesMonth-end close (Day 1) · DR 6200 / CR 21500 — export NetSuite CSV

The pre-formatted entry is ready to book: DR 6200 Freight Expense by carrier, CR 21500 Accrued Freight Liability. Export the NetSuite-import CSV and keep the shipment backup as support.

What to look for
  • Debits = credits (the entry balances)
  • Subledger split by carrier
  • The entry reverses on receipt of the carrier invoices
  • The memo states the accrual basis
Action — Export the JE CSV and import it into your ERP. Retain the shipment-level backup as audit support.
7Approve & lock the periodApprovalMonth-end close (Day 1) · Control gates + attestation → lock + archive

The controlled close-out: every automated control gate must pass, the approver attests the manual reviews, and on sign-off the period locks and a full archive saves.

What to look for
  • All control gates green
  • The three attestations checked and the approver recorded
  • Archive saved (JE, shipment backup, portable HTML, approval record)
  • A timestamped entry appears in the approval audit trail
Action — Sign to lock. If you must re-open later it is timestamped and the prior approval stays in the audit log — nothing is lost.
8Reconcile when invoices arriveClosed periods15–30 days after month-end · Estimate vs actual + true-up when invoices arrive

When the carriers' invoices land, Closed periods compares the estimate to actual, scores the variance against materiality bands, and books a balanced true-up journal entry (see the reconciliation flow there).

What to look for
  • Variance vs materiality (green ≤5% / amber ≤10% / red >10%)
  • The true-up JE balances
  • Actuals reconcile to the invoice register
  • The variance is fed into next month's calibration
Action — Within ±5%, no action. ±5–10%, document the root cause. Over 10%, investigate and recalibrate — the variance improves next month's estimate either way.

Go deeper

The two detailed process diagrams live on the tabs they belong to.

  • How the accrual is calculated — the branching data-flow (manifest → group by carrier → per-carrier pricing → total), on Method & sensitivity.
  • Reconciliation flow — book → invoices arrive → compare vs materiality → true-up → feed next month, on Closed periods.

Quick reference — what each tab is for

Where to go for what. Tab names link straight there.

TabPurposeWhen to use
OverviewExecutive accrual summary + go/no-goEvery month-end
Run a closeLoad a sample or upload, price, save, reproduceEach month / to try it
ExceptionsFlags, dispositions, ready-to-close controlEvery month-end
Journal entriesThe booked entry + NetSuite exportBooking
ApprovalSign-off, lock, archive, audit trailClose-out
Shipment backupPer-shipment calc trace (+ map)Audit / spot-check
RatesEffective-dated cards + calibration divergenceWhen rates change
AccuracyReconstruction + out-of-sample back-testMonthly / accuracy review
Closed periodsEstimate vs actual + true-up + reconciliation flowWhen invoices arrive
May scenarioAdaptability — the fuel-spike what-ifDemonstration
vs. DeniseHonest head-to-head vs the prior manual estimateBenchmarking
Method & sensitivityCalculation flow + what-if lab + methodologyUnderstanding / audit

Frequently asked questions

Is the model more accurate than Denise's manual estimate?

Honestly, not on headline error. A trailing-3-month average (Denise) runs ≈8.3% out-of-sample MAPE versus the engine's ≈15.0%, because it smooths month-to-month rate noise a per-shipment engine can't foresee. The engine wins where a trailing average can't: every dollar ties to a shipment (auditable), it adapts to rate changes and new carriers, it carries controls, it's repeatable, and it is near-unbiased (−0.2% vs Denise's chronic −3.2%). The full head-to-head is on the vs. Denise tab.

What if a carrier rate is wrong?

Go to Rates, edit the card, and save a new version effective from the month it changed. History keeps its old card (prior closes reconstruct unchanged) and the next close prices on the new one. Printed-card-vs-calibrated divergence is always flagged, never silent.

When are invoices uploaded, and how are they used?

On the Run a close tab (the optional invoices slot). Invoices do two jobs: they extend the calibration window (the engine recalibrates and the window rolls forward) and they become the “actual invoiced” that the estimate is trued-up against on Closed periods.

How do I prepare for an audit?

Three places: Method & sensitivity (calculation flow, formulas, data sources, assumptions, limitations), Accuracy (reconstruction + back-test), and Approval (the locked archive — JE, shipment backup, portable HTML, approval record, and the timestamped audit trail). Every figure derives only from the bundled data and config.