Import Invoices into Sage Intacct from CSV

Jun 17, 2026

Try it now: upload an invoice and get a clean Excel or CSV file in seconds.

PDF, JPG, PNG, BMP, HEIC, TIFF

Upload your invoices

Sage Intacct will load a whole batch of vendor bills from one CSV file, but only on a template it generates for your company, with vendor IDs that match exactly and line amounts that add up. It will not read a PDF or a scanned image. So the job has two halves: turn your invoice data into clean spreadsheet rows, then run those rows through the Sage Intacct bill import. This guide covers both, with the exact menu path, the fields the template expects, how vendors are matched, and the errors that stop an import cold. If your invoices are still PDFs or photos, drop them into the converter at the top of this page first and you will have an import-ready file in a few minutes.

Can you import bills into Sage Intacct?

Yes. Sage Intacct imports accounts payable bills in bulk through a CSV upload, so you can post a whole stack of vendor invoices at once instead of keying each one. Go to Accounts Payable, All, Bills, then Import, and you upload a CSV built on the template Intacct generates for your company. It does not read PDFs or scanned images, so those invoices have to become spreadsheet rows first.

That split shapes the whole task. The Sage Intacct side is a short upload once your file matches the template. The real work is preparing accurate rows with the right vendor IDs, dimensions, and line amounts, which is where most failed imports actually begin.

How do I import AP bills into Sage Intacct from CSV?

Go to Accounts Payable, All, Bills, and select Import. Download a fresh template from the pop-up window, fill the columns with your bill data in your spreadsheet software, save the file as CSV, then upload it on that same Import window. Sage Intacct validates the file and posts each row as an AP bill, then shows a confirmation page with any rows it could not process.

One setup step comes before your first import: the AP journal has to be configured. Open bills post to a journal, so confirm your Accounts Payable application and its journals are set up under Company, Admin, Subscriptions before you upload. Get that in place once and every later import is just download, fill, save, upload.

Where do I get the Sage Intacct bill import template?

Download it from the Import pop-up window itself, using the Download template link, rather than reusing an old file. You can also reach the blank templates through Company, Setup Checklist, or Company, Data, Import Data. Either way, pull a new copy each time you import bills.

The reason matters: Intacct customizes the template to your company configuration, including the dimensions and custom fields you have set up, and Sage updates the templates between releases. A template you saved months ago may be missing a column the current import expects. Download fresh, and the correct headers are already in place, so you only fill in the data and save as CSV.

Can Sage Intacct import PDF invoices?

No. Sage Intacct's bill import reads CSV files only, so a PDF or scanned invoice has to be converted into structured rows first. There is no native step that turns a PDF bill into a posted Sage Intacct transaction. You extract the header fields and line items into the template's columns, save as CSV, then upload that file.

This is the step that eats the most time when teams do it by hand, because every PDF gets retyped field by field. Running the invoices through an extraction tool first gives you the vendor, date, bill number, line items, and amounts as columns, ready to drop into the template. The converter at the top of this page does exactly that, and you can pull invoice line item extraction into the same file so each line carries its own account and amount.

How do you import multi-line bills into Sage Intacct?

Put one row per line item, and repeat the bill-level fields (vendor ID, bill number, date) on each row that belongs to the same bill. Sage Intacct groups rows that share those header values into a single bill with multiple lines. The line amount goes in the AMOUNT column, and the header TOTAL_DUE has to equal the sum of all the AMOUNT rows for that bill.

Single-line bills are the simple case: TOTAL_DUE and AMOUNT are the same figure. The mistake that breaks multi-line bills is a TOTAL_DUE that does not match the lines beneath it, so total your line amounts per bill before you save. If your company uses dimensions like Department, Location, or Project, add those values on each line so the bill posts where your reporting expects.

How does Sage Intacct match vendors when importing bills?

Sage Intacct matches each bill to a vendor by the Vendor ID in your file, and the match is exact, including capitalization. VEN100 and ven100 are treated as different IDs, so a case mismatch or a vendor that has not been set up will fail that row rather than create a new record. The vendor has to exist in Intacct before the import.

Set up any new vendors first, or import the vendor records in an earlier pass, then the bills. Keep a short reference list of your Vendor IDs next to your extraction file so you drop the exact ID into every row. Getting the ID right is the single biggest factor in a clean AP bill import.

Why won't my bills import into Sage Intacct?

Most failed imports trace to a few causes: a Vendor ID that does not match an existing record or has the wrong capitalization, a TOTAL_DUE that does not equal the sum of the line AMOUNT rows, a missing required dimension or GL account, a date in a format Intacct rejects, or an old template missing a column. The AP journal not being configured will also block open bills.

The confirmation page after an upload links to a CSV that contains only the failed rows, with the reason for each, while the good rows post. Fix the data in your spreadsheet rather than inside Intacct so your source file stays correct for next time. Re-download the template if it is stale, confirm every ID exists with the right case, check that each bill's lines total to its TOTAL_DUE, and re-upload only the corrected rows.

How do I handle dimensions when importing bills into Sage Intacct?

Dimensions such as Department, Location, Project, Customer, and any custom fields show up as columns in the template Intacct generates for your company, and required ones have to be filled on each line. If an expense account demands a dimension and the row leaves it blank, that line fails. Fill the dimension columns at the line level, not the header.

Because the template already contains your company's dimension columns, the cleanest workflow is to map your extracted line items straight into them. Decide the Department, Location, or Project for each line as part of preparing the file, so the bill posts fully coded and your team is not reclassifying transactions after the fact.

From PDF invoices to an import-ready Sage Intacct file

The reliable workflow is short. Convert your PDF and image invoices into spreadsheet rows, check the vendor, date, bill number, line items, dimensions, and totals, paste them into a freshly downloaded template, save as CSV, then upload it on the Bills Import window. The converter at the top of this page handles the first step, and you can read the full method in how to extract invoice data to Excel and the format details in the invoice PDF to CSV converter guide.

Once your file is clean, the Sage Intacct side rarely fights you. The import invoices to Sage Intacct page covers the vendor and template specifics in more depth, and if you run several platforms, the same exported data maps across them, so compare the steps for each in the how to import invoices into an ERP overview. When you reconcile those posted bills against what actually left the bank, converting the statement with a bank statement to Excel converter puts both sides in the same spreadsheet. Convert once, build the file once, and a monthly stack of invoices posts in minutes instead of an afternoon.