FSO v1.0

POD → Invoice (Same Day)

Last updated: August 15, 202511 min read

Goal

Send accurate invoices the same day POD is stored—median ≤ 4 hours; P90 ≤ 8 hours—to accelerate cash, reduce disputes, and eliminate manual prep delays.

Success metrics

  • POD→Invoice time (median) ≤ 4 hours
  • POD→Invoice time (P90) ≤ 8 hours
  • Same-day invoice rate ≥ 95%
  • Invoice error rate ≤ 2%
  • Delivery confirmation rate ≥ 99%

Prerequisites

REQDocuments module live

POD/BOL capture and matching system operational with quality validation.

REQInvoicing & Receivables module configured

Payer routing rules; EDI 210/JSON formats; delivery confirmation tracking.

REQRate confirmation fields

Standardized extraction for base rate, fuel surcharge, accessorials (detention, lumper, etc.).

REQException codes defined

Codes for missing POD, document mismatch, portal/API downtime, validation failures, duplicates.

REQAccounting/factoring connectivity

Credentials and endpoints for GL export and/or factoring submission (if applicable).

Baseline measurement

Measure current performance over the last 30 days before implementation:

KPICurrentTargetData source
POD→Invoice time (min, median)[fill]≤ 240Invoicing logs
POD→Invoice time (min, P90)[fill]≤ 480Invoicing logs
Same-day invoice rate (%)[fill]≥ 95%Daily calc
Invoice error rate (%)[fill]≤ 2%Ticketing system
Delivery confirmation rate (%)[fill]≥ 99%Portal/API/email logs

Step-by-step SOP

1Trigger

Load status = Delivered and POD matched to the correct load.

2Assemble

Compile line items from the rate confirmation + verified accessorial events (detention, lumper, FSC).

3Validate

Confirm required docs present; run duplicate guard (idempotency key); check payer-format rules and reference fields (PO/PRO/SCAC, etc.).

4Render

Generate PDF invoice + JSON/EDI 210 with required references.

5Route

Submit via payer channel (portal/API/email) per routing rules; capture submission receipt (portal ID or 2xx/API or mailbox acceptance).

6Post

Set invoice status Sent; write immutable audit event with timestamp, actor, payload hash, and delivery confirmation.

7Exceptions

Queue failed submissions with reason codes; auto-retry with backoff; notify the designated owner for manual intervention if retries exhaust.

8Cash application (optional)

Ingest remittance to mark invoices Paid/Short-paid; track variances and link to dispute workflow.

Artifacts to prepare

  • billing_validation_checklist.csvRequired fields and document validation rules
  • payer_routing_sheet.csvPayer-specific endpoints, formats, contact paths, and SLA notes
  • Sample invoice templatesPDF + JSON/EDI 210 examples
  • exception_codes_list.csvStandardized failure reason codes and resolution procedures

Common failure modes & fixes

SymptomLikely causeQuick fixPrevention
Missing accessorialsEvent not capturedManual add + reprocessDriver/app prompts; event audits
Portal rejectionsFormat mismatchValidate against spec; resubmitTemplate tests; schema checks CI
Duplicate invoicesGuard failureVoid + regenerateStronger idempotency key + pre-send lookup
Late sendsQueue backlog or outagePrioritize queue; confirm portal recoveryHealth checks; autoscaling; outage logging
Rate errorsRC parse issuesManual correctionRC field standardization; vendor QA

Audit & evidence

Retention requirements

  • Invoice records & attachments: 7+ years (finance/tax policy)
  • Processing logs (create/edit/send): ≥ 12 months
  • Delivery confirmations: ≥ 3 years
  • Exception reports: ≥ 90 days

Keep idempotency keys, submission receipts, and outage windows for all exceptions.

Done-when criteria

30 consecutive days with all targets met:

  • • POD→Invoice (median) ≤ 4 hours
  • • POD→Invoice (P90) ≤ 8 hours
  • • Same-day invoice rate ≥ 95%
  • • Invoice error rate ≤ 2%
  • • Delivery confirmation rate ≥ 99%