KozyOps / Industries / Heating oil
Heating Oil

KozyOps for heating-oil dealers

Degree-day delivery windows, K-factor on the system, HOD compliance on every ticket, will-call, budget plans and fuel contracts, fuel assistance at program scale, and an iOS app that runs delivery and service on the same trucks.

The back office for heating-oil dealers in cold-weather states.

A guy and a truck up to a thousand-vehicle fleet across a dozen depots. Degree-day-driven delivery, will-call, monitored tanks where the customer agreed to one, HOD compliance on every ticket, fuel assistance at program scale, and a service department riding the same trucks. KozyOps is the back office, the field app, the customer portal, and the card processor.

What an oil operation actually faces

Heating oil is a forecasting problem. The customer who burns the most gallons is the one whose tank you can least afford to let run dry, and the only way to know when to go is to know the weather, the K-factor on that system, and the calendar, across a book of thousands. HOD compliance has to ride along on every delivery the truck makes. Budget plans, fixed-price contracts, cap contracts, autopay, and the fuel-assistance customers (often hundreds of them) whose authorizations are about to expire all live on the AR side. Then there’s the dispatch desk, who has to coordinate seats, hand-offs, and a queue on top of the trucks themselves.

KozyOps was designed against this workload from the start.

Window Strategies: how the schedule actually gets built

Degree Day

This is the literacy test for oil scheduling, so here’s the math.

HDD per day is max(0, base_temp − avg_outdoor_temp). Default base temp 65 degrees F. K-factor for a system is HDD accumulated between fills divided by gallons delivered. Gallons consumed since the last drop is HDD accumulated divided by K. Trigger a delivery when remaining gallons hit that system’s reserve threshold. K is smoothed against a rolling average of the last three to five deliveries so one weird fill doesn’t pull the whole curve off.

The K-factor lives on the system, not on the customer, because a system represents a group of equipment that all share the same fill connection. A manifolded multi-tank setup rolls up to one K, one Recommended Capacity, one Optimum Delivery.

Weather data refreshes on a cycle. Degree-day calculations run for every customer, every cycle. The output is a working signal on the dispatch board, across thousands of accounts.

Monitored

For the oil customers who agreed to a tank monitor (it does happen, especially commercial). IoT readings by tank serial. Stale-monitor grace period falls back to a degree-day projection so the customer doesn’t disappear from the board. Degree day provides a forecast; monitor provides ground truth.

Calendar

Recurring fixed-interval deliveries. Day-of-week or specific-date triggers. Most oil shops run a slice of their book on calendar, especially commercial accounts and the will-call customers they’ve talked into a cadence.

HOD compliance on every ticket

State heating-oil-dealer licensing isn’t a memo, it’s a field set on the delivery. HOD license numbers live at the brand level so a multi-brand operator carries the right number on the right ticket. BOD and EOD inventory, meter readings, and mileage are required, with the HOD compliance fields filled before the ticket prints. The Pre-trip Checklist Banner enforces inventory, safety, and mileage before the first stop.

The route board

The Fuel Map shows every delivery request, manual and auto, geographically. Filter by Fuel Type, Routing Date, and Min or Optimal gallons. Lasso the polygon. Stage the load, assign a Terminal (the origin for pickup and the drop-off for leftover), assign a Load Number, then drop the load onto a Route. Drag-and-drop placement, drag the sequence, reuse routes from last week, optimize. Filter the board by depot when you run more than one.

The driver’s day on KozyServiceman

The oil delivery card is the meatiest screen in the field app for a reason. With Meter mode pairs a Bluetooth or wired LCR meter: Start Delivery, live gallons on the screen, End Delivery, ticket prints with the HOD fields populated, sync. Manual mode for the stops you ran by stick: gallons, additives and flags, printer, preview, Sync. Offline mode stores locally and runs Sync Pending on reconnect. Pickups and transfers back to the terminal close out the leftover at end of shift.

The same iOS app handles service orders. An ATU service call runs through the same driver’s day as the oil drop. See the iOS app

Will-calls on a shared queue

Customer-initiated requests, with optional payment at the time of the call through Kozy Payments or the customer portal. The request lands on the desk’s shared queue and flows to the driver’s iPad. Multi-seat hand-off doesn’t drop the context.

The AR side, built for an AR team

Budget plans

Degree-day-based budget plans are a first-class module. The customer pays an estimated even amount, the platform reconciles against actual usage. The AR team has a real screen for this.

Fuel contracts

Fixed-price and cap-price fuel contracts, attached to the customer record. The platform knows when a contract delivery is being applied versus a market-price delivery, and the ledger card reflects it.

Autopay at scale

Card on file, charged automatically on invoice. Per-invoice override of which card on file gets used. The AR team posts results, the controller sees the close-side rollup.

Kozy Payments

Our own card processor, run at-cost, integrated through the ledger: partial refunds, chargebacks, deposit-batch reconciliation with gateway settlement timestamps. NMI and Qualpay are also supported. Read why

Winter rate recommendations

A helper that suggests a seasonal rate based on the prices you’ve been running. Real math against your own data.

Sage Intacct and QuickBooks

Two-way Sage Intacct integration. QuickBooks for shops on QuickBooks. Generic adapter for everyone else.

Fuel assistance (LIHEAP and state programs) at program scale

Authorizations, contracts, vendor pricing, third-party assistance programs. Daily stale-price alerts so you don’t deliver against vendor numbers from a week ago. Authorization expirations and contract expirations are cron-driven, not someone-remembering. Backend models for fuel-assistance vendors landed in v3.10.0. For operations carrying hundreds of fuel-assistance customers, this is one of the few back offices that does it right.

HVAC on the same trucks

Most oil dealers we work with also run heating and cooling service. ATU (heating equipment) and ACT (cooling equipment) tabs on the service ticket. The Tune Up Scheduler has ATU Email List and ACT Email List bulk-add for the spring and fall pushes. Service plans, parts, projects, equipment readings, equipment-level service history attached to the same system the fuel side reads from. Any fuel you sell, any trade you also run, on the same trucks. See the service side

Reporting

The Fuel Delivery Report aggregates expected vs delivered, shortages, margin, and leftovers per fuel type. Aging buckets and ledger cards on the AR side. Route board and dispatch metrics on the operations side.

Things that aren’t here yet

  • AI route generation: coming.
  • Mobile signature capture: coming.
  • Customer profitability analytics: coming.

In the product reference

Ready to run a tighter operation

See KozyOps on your own data.
30 minutes, real questions, no slides.

Bring a route, a customer card, last month's deposit reconciliation, anything you would like walked through inside KozyOps on a demo tenant.

Request a demo Open docs ↗