Keelway
Freight AP automation · Plaid-native · Two-sided

Stop typing bank lines into your books.

Connect your operating account through Plaid once. Every ACH credit lands already matched to the load, the invoice, and the factoring company. Every rate-con PDF gets parsed into a structured invoice line. Outbound carrier pay flows the same way in reverse. Bookkeepers stop reconciling at month-end — there's nothing left to reconcile.

~6 hrs
per dispatcher per day eliminated
Keelway internal benchmark, 2026
>95%
rate-con field extraction accuracy
Keelway production corpus, Q1 2026
<3%
ACH credits land unmatched after 2-week calibration
Keelway customer cohort (illustrative)

The wedge — what every other freight TMS still makes a human do

Pull up the bank tab of any LoadStop, Tai, McLeod, Rose Rocket, or Truckstop install. The reconciliation screen still assumes the bookkeeper will sit there and type. Match this ACH credit to that invoice. Split this factoring deposit across three loads. Cross-walk this carrier wire against the rate confirmation in a different system. Then do it again tomorrow.

The math is brutal. A 200-load-a-month brokerage runs roughly 400 inbound credits a month (shipper remittance + factoring advances + reserve releases) and 200 outbound carrier payments. That's 600+ bank lines a month, each one a 30-90 second cross-reference job. Twelve to twenty hours of bookkeeper time, every month, on work that should never have left the bank line.

Keelway eliminates the cross-reference entirely. Plaid feeds the bank lines in. Keelway matches them against the load + invoice + factoring ledger before the bookkeeper opens the tab. The bookkeeper sees a Cleared queue and an Exceptions queue — everything else is already on the keel.

Before · raw bank line
06/01  ACH CREDIT   IRONBRIDGE
       CARRIERS LLC     +$3,700.00

06/01  ACH CREDIT   TRIUMPH
       FINANCIAL ADV    +$2,565.00

06/02  WIRE OUT     COLD CHAIN
       LOGISTICS         -$2,850.00

What the bank descriptor actually says. Three lines, three different relationships, zero context. The bookkeeper has to open three tabs to figure out what they are.

After · what Keelway shows you
  • load_id#18402
    carrierIronbridge Carriers
    laneCalhoun GA → Englewood CO
    invoiceINV-2026-0418
    statuscleared · 0.99
  • factorTriumph (advance 90%)
    invoiceINV-2026-0419
    load_id#18411 · Cold Chain
    reserve_pending$285.00
  • ap_billBILL-2026-0204
    carrierCold Chain Logistics · MC#445821
    laneDallas TX → Atlanta GA
    statuspaid · matched

How the Plaid link is wired

One-time connect. You hit Connect bank, Plaid opens your bank's own OAuth screen, you log in on the bank's domain, you grant read-only access to the transactions stream. Keelway never touches the credentials. The feed starts inside two minutes — the prior 24 months of transactions backfill in the first hour so historical reconciliation isn't a separate project.

  • Scope is read-only. We request only thetransactions Plaid scope. We cannot move money, change wire instructions, or initiate ACH. Outbound payments stay inside your bank's own bill-pay or your factoring portal.
  • Multi-account. Operating, payroll, factoring reserve, escrow — link as many as the brokerage uses. Each account routes to its own ledger inside Keelway.
  • Bank coverage. Chase, Bank of America, Wells Fargo, Citi, US Bank, PNC, Truist, Capital One, Fifth Third, Regions, BMO, TD, plus the modern small-business stack — Mercury, Relay, Bluevine, Brex, Live Oak. If your bank shows up in Venmo, it shows up here.
  • Revocable. You can drop the link from your bank's dashboard or from Keelway settings. The feed dies within minutes; matched history stays in your ledger.

Rate cons stop being PDFs you drag across screens

Every booking comes with a rate confirmation — the carrier-or-broker-signed PDF that says "here's the load, here's the rate, here's the pickup window." Keelway extracts it into a structured invoice line the moment it lands. The carrier name, MC#, lane, equipment, rate, accessorials, pickup and delivery windows, reference numbers, and special instructions come out as fields — not as a PDF you have to read into a TMS form.

Drop a rate-con PDF into Keelway directly, forward it from your dispatch inbox, or let our email triage pull it out of the attached carrier reply automatically. Every field carries a confidence score. Anything under 0.9 drops into a one-click review row. Production accuracy stays above 95% on the freight PDFs we've seen — and the model learns each brokerage's carrier corpus week-over-week.

Inbound

Shipper remittance, already matched

Shipper ACH and wire credits hit the Plaid feed, get cross-walked against your AR invoices, and flip to cleared in your books before the bookkeeper opens the tab. Partial payments split across the right invoices. Short pays surface as exceptions, not silent losses.
Factoring

Advance + reserve, on the same invoice

Triumph, RTS, OTR, TBS, Apex — every advance (typically 90% inside 24 hours) and every reserve release (the remaining 10% minus fees, sometimes weeks later) ties back to the originating invoice and load. Chargebacks net automatically.
Outbound

Carrier pay, batched and matched

Outbound carrier pay flows the same way in reverse — Keelway emits the matched AP batch (carrier, amount, load, remit-to, factoring instructions if any). You approve in bill-pay or in your factoring portal. We never originate without an explicit click.
Rate-con

PDF in, structured invoice line out

Carrier, MC#, lane, equip, rate, accessorials, pickup and delivery windows, refs — every field extracted with a confidence score. Anything under 0.9 routes to a one-click review row. Above 95% accuracy across the freight-PDF corpus.
Fuel + tolls

Fleet One, EFS, Comdata, Bestpass — by load

Carrier-side reconciliation extends to fuel-card swipes and toll passes. Each transaction ties back to the load the truck was running under at the timestamp. IFTA worksheet feeds itself.
QuickBooks

Two-way sync, the chart of accounts you already have

Every matched ACH credit, AP bill, and rate-con invoice posts to the right account with the right class and customer. QuickBooks Online native, QuickBooks Desktop via Web Connector, Xero and Sage Intacct pre-built. Your CPA keeps the books they know.

Two-sided story — broker and carrier, same primitive

The AP-automation primitive is symmetric. Same engine, different ledger:

  • Broker side. Incoming shipper remittance matches to AR invoices. Outgoing carrier pay matches to AP bills. Factoring is a wash — you don't factor as a broker, your carriers do. Bookkeeping is shipper-AR-heavy.
  • Carrier side. Incoming broker remittance and factoring advances match to your AR. Outbound fuel-card settlements (Fleet One, EFS, Comdata), toll passes (Bestpass, PrePass), insurance debits, and IFTA filings match to the load they ran under. Bookkeeping is fuel-and-factoring-heavy.
  • Carrier-broker hybrids. Asset-based 3PLs that broker spillover and own trucks: run both ledgers in the same tenant. Inter-company moves (where you broker a load to your own carrier arm) reconcile against themselves and don't show up as cash events.

What the bookkeeper's month-end actually looks like

Day 28 of the month, the bookkeeper opens Keelway, opens the Exceptions queue, sees nine items — three ACH credits with ambiguous descriptors, two factoring chargebacks that need a human read, one duplicate carrier payment to claw back, three partial-payment splits to confirm. Twenty minutes of decisions. Hits close.

Day 30, the financial-reporting feed (revenue by week, AR aging, per-broker GP, per-driver margin) is already live — there's no nightly batch to run, no spreadsheet to assemble, no cross-walk between the TMS report and the QuickBooks export. The CPA gets a clean trial balance on the first business day of the next month. The bookkeeper gets their afternoons back.

Why competitors don't do this

LoadStop, Tai, McLeod, Rose Rocket, Truckstop — they all bolted AR/AP onto a load-management TMS that was originally a dispatch tool. The accounting module is a screen, not a primitive. The assumption is still that a human sits there and types bank lines. Drumkit and a few other AI add-ons cover rate-con extraction but stop at the carrier-email boundary — they don't cross into the bank feed.

Keelway treats the bank feed and the rate-con corpus as first-class inputs, the same way the carrier inbox is. Plaid link is a one-time setup. Rate-con extraction is automatic on every booking. The bookkeeper's job changes shape — from data-entry to exception-handling — without changing the chart of accounts.

Frequently asked questions

Is Plaid safe for an operating account this size?+

Yes. Plaid is the same bank-link layer used by Venmo, Chime, Robinhood, Wise, and most modern fintech — over 12,000 institutions and read-only by default. Keelway requests only the transactions scope; we cannot initiate transfers, change wire instructions, or move money. Credentials never touch Keelway servers — they go straight from your browser to Plaid to your bank's OAuth screen. You can revoke from your bank's dashboard at any time and the feed drops in minutes.

Which banks are supported?+

Plaid covers the rails brokers actually use — Chase, Bank of America, Wells Fargo, Citi, US Bank, PNC, Truist, Capital One, Fifth Third, Regions, BMO, TD, plus most regional and community banks (Live Oak, Pinnacle, Mercury, Relay, Bluevine, Brex). If your bank shows up in Venmo's bank-add screen, it shows up here. Factoring-company portals (Triumph, RTS, OTR, TBS, Apex) are wired separately via direct API or SFTP for daily advance and reserve files.

What happens if a deposit doesn't match a load?+

It lands in a small Unmatched queue with the raw bank line, our best guess, and a confidence score. The bookkeeper clears it with one click — pick the load or invoice from a ranked dropdown. Keelway watches the resolution and learns the descriptor pattern, so the next ACH from that same broker or factoring company matches itself. After two weeks of calibration on a typical book, under 3% of credits land unmatched.

Does this work with QuickBooks?+

Yes. Two-way sync with QuickBooks Online — every matched ACH credit, outbound carrier pay, and rate-con-derived invoice posts to the right account with the right class and customer. QuickBooks Desktop runs through the Web Connector. Xero and Sage Intacct are pre-built. NetSuite is custom — usually two weeks. Your CPA keeps the chart of accounts they already have.

How does rate-con extraction handle weird PDFs?+

Every rate con — clean broker template, scanned image, photographed phone PDF, email body, the seven-page McLeod export — runs through the same vision-first pipeline. Carrier, MC, lane, equipment, rate, accessorials, pickup and delivery windows, references, and special instructions emit as structured fields with a per-field confidence score. Anything under 0.9 confidence routes to a one-click review row. Production accuracy holds above 95% on the corpus of freight PDFs we've seen.

What about factoring advances and reserves?+

Factoring-side reconciliation is the whole point. Keelway ties every advance (typically 90% of the invoice within 24 hours) and every reserve release (the remaining 10% minus fees, days or weeks later, sometimes net of chargebacks) back to the originating invoice and load. The two-line factoring entry that used to take 15 minutes per invoice — advance line, reserve line, fee math, chargeback check — lands matched. Triumph, RTS, OTR, TBS, Apex all wired.

Carrier side too, or just broker?+

Both, and they're symmetric. Broker side: incoming shipper remittance matches to AR invoices, outgoing carrier pay matches to AP bills. Carrier side: incoming broker remittance and factoring advances match to your AR, outbound fuel-card settlements (Fleet One, EFS, Comdata) and toll passes (Bestpass, PrePass) match to the load they ran under. Same primitive — bank line in, structured match out — pointed at different ledgers.

What's left to reconcile at month-end?+

The exceptions. Typical brokerage closes a month with 50-150 reconciliation items left after Plaid; under Keelway that drops to single digits — a couple of unmatched ACH credits, a factoring chargeback that needs a human read, a duplicate carrier payment to claw back. The bookkeeper's three-day month-end becomes a two-hour cleanup. The CPA stops billing for cleanup work that doesn't exist anymore.

Does Keelway initiate the outbound carrier payment itself?+

By default no — Keelway emits the matched AP batch (carrier, amount, load, invoice, factoring instructions, remit-to address) and you approve it inside your bank's bill-pay or your factoring portal. Optional: connect an ACH origination provider (Modern Treasury, Increase, Column) and Keelway will originate the batch after a human approval click. We never originate without an explicit approval step.

Pricing?+

AP automation is bundled into the Keelway TMS at $997/mo flat — unlimited bank accounts, unlimited rate-con extraction, unlimited matched lines, unlimited users. No per-transaction fee, no per-document fee, no per-seat fee. If you're on the $1/load Keelway carrier-email tier and want AP automation as an add-on, it's $200/mo additional. See the pricing page for the full breakdown.

Plaid linked · Rate cons parsed · AP matched

Nothing left to reconcile at month-end.

Book AP demo

Related