How to file IFTA from a fuel-card CSV
IFTA is quarterly fuel-tax reporting across US states and Canadian provinces. The data you need is already in your fuel-card export β the hard part is shaping it into a summary you can actually file.
To file IFTA from a fuel-card CSV you need each fuel purchase matched to the right vehicle and the right IFTA jurisdiction, totaled by jurisdiction and fuel type, in a structured CSV/XLS the 2024 IFTA rules accept β not a PDF. Doing that by hand means reconciling hundreds of rows per truck. Fuel Ledger does it automatically: drop in a raw export from WEX, Shell or Fuelman, and it auto-detects the format, matches every transaction to a vehicle and jurisdiction, flags the odd ones, and returns an IFTA-formatted quarterly summary ready to file.
What IFTA actually is, in one paragraph
The International Fuel Tax Agreement (IFTA) lets carriers operating in more than one jurisdiction file a single quarterly fuel-tax return instead of one per state or province. You report the distance traveled and the fuel purchased in each of the 48 contiguous US states and 10 Canadian provinces, and the agreement settles the tax owed between jurisdictions. The math is simple; the bookkeeping is not. Every fuel purchase has to be tied to a specific vehicle and the jurisdiction where it was bought, then rolled up by jurisdiction and fuel type β and as of the 2024 rules, distance records must be submitted as structured CSV/XLS, not PDFs.
Why a raw fuel-card CSV isn't IFTA-ready
Your fuel-card export has the transactions, but not in a shape IFTA can use. Three gaps stand between the raw file and a filable return:
- Every issuer uses a different schema. WEX, Shell and Fuelman each name and order their columns differently, so a generic spreadsheet importer chokes and you end up cleaning columns by hand.
- Transactions aren't matched to a vehicle or jurisdiction. A row might have a card number and a station address, but not the truck it belongs to or the IFTA jurisdiction it counts toward β you have to infer both.
- Nothing is rolled up or screened. IFTA wants totals by jurisdiction and fuel type, and you want anomalies β over-tank-capacity fills, after-hours buys, wrong-jurisdiction entries β caught before they land in a return.
One finance manager reported spending three days a month reconciling 4,200 transactions across 65 vehicles just to get to this point.
What an IFTA-ready summary needs
A summary you can file β or hand to your accountant β has to carry a few things for every fuel purchase, then total them the way IFTA expects:
| Field | Why IFTA needs it |
|---|---|
| Transaction date | Assigns each purchase to the correct quarter |
| Vehicle / unit | Ties fuel to a specific truck in your fleet |
| Jurisdiction (state / province) | Determines which jurisdiction the fuel counts toward |
| Fuel type & gallons / litres | Summary is rolled up by fuel type per jurisdiction |
| Amount & GL code | Keeps the figure reconcilable against accounting |
| Output format | Structured CSV/XLS, per the 2024 rules β no PDFs |
Get all of that right, by jurisdiction and fuel type, and the return is mostly transcription.
Doing it by hand vs. with Fuel Ledger
| By hand | Fuel Ledger | |
|---|---|---|
| Read each card's CSV schema | Manual, per provider | Auto-detected |
| Match fuel to a vehicle | Look up by card number | Automatic |
| Assign an IFTA jurisdiction | Infer from station address | Automatic |
| Catch bad rows | Hope you spot them | Anomalies flagged |
| Roll up by jurisdiction & fuel type | Pivot tables, by hand | IFTA-formatted summary |
| Output format | Whatever you build | Structured CSV/XLS |
Filing IFTA from your CSV in three steps
With a provider-agnostic normalizer, the whole grind collapses into a short flow:
- Drop in the export. Upload the raw CSV straight from WEX, Shell, Fuelman or any other card β no template to fill in, no fixed columns.
- Let it normalize, match and flag. Every transaction is normalized to one ledger, matched to a vehicle and IFTA jurisdiction, and screened for anomalies. Optionally cross-reference a GPS or distance export so each fill lines up with the right truck.
- Export the IFTA summary. Out comes an IFTA-formatted quarterly summary covering the 48 US states and 10 Canadian provinces, as CSV/XLS β ready to file or hand off.
Turn your next fuel CSV into an IFTA-ready summary
Drop in a raw export from any fuel card and get back an IFTA-formatted quarterly summary β vehicles and jurisdictions matched, anomalies flagged. Free to try.
Enter your email to try the free CSV cleaner
Works with any fuel card and any accounting tool. No hardware required.
FAQ
Can I file IFTA straight from a fuel-card CSV?
Not directly β a raw export isn't matched to vehicles or jurisdictions and isn't totaled the way IFTA expects. Fuel Ledger turns that raw CSV into an IFTA-formatted quarterly summary by auto-detecting the format, matching each transaction to a vehicle and jurisdiction, and rolling it up by jurisdiction and fuel type.
Do the 2024 IFTA rules really require CSV instead of PDF?
The 2024 rules call for distance records as structured data β CSV/XLS rather than PDFs β which raises the bar on clean, machine-readable records. Fuel Ledger exports in that structured format, so the summary is ready for the way returns are now expected to be filed.
Does it cover Canadian provinces too?
Yes. The IFTA summary covers all 48 contiguous US states and the 10 Canadian provinces, with each fuel purchase matched to the jurisdiction it belongs to.