You can import expenses into QuickBooks Desktop from Excel in two ways. Accountant and Enterprise editions paste rows straight into Batch Enter Transactions as checks or card charges. Pro and Premier users convert the sheet into an IIF file. Either way, every payee and expense account named in Excel must already exist, spelled the same, before the import.
Can QuickBooks Desktop import expenses from Excel directly?
Not through the Excel import menu. That menu is for lists: Intuit's page on importing and exporting Excel files in QuickBooks Desktop names customers, vendors, items and the chart of accounts, and says the multiple-entry tool cannot bring in transactions. Expenses need a transaction route instead.
Desktop has no record called "expense" in the way QuickBooks Online does. A spending line becomes a check if it came out of a bank account, a credit card charge if it went on a card, or a bill if you owe it and will pay later. Decide which one each row is before you pick a method. Rows you have not paid yet belong in a bills import; the guide to importing bills into QuickBooks Desktop covers that file.
Pasting an expense sheet into Batch Enter Transactions
Batch Enter Transactions is a grid in QuickBooks Desktop Accountant and Enterprise that accepts rows pasted from a spreadsheet. Intuit's guide to batch entering transactions lists checks and credit card charges among its types, so most expenses fit.
The grid's columns come in a fixed order, so the spreadsheet has to follow it. Here is an example sheet arranged for a batch of checks. The values are made up for illustration.
| Date | Number | Payee | Account | Amount | Memo |
|---|---|---|---|---|---|
| 05/04/2026 | 3301 | Halvorsen Printing | Printing and Reproduction | 186.40 | Flyers for May event |
| 05/06/2026 | 3302 | Westgate Utilities | Utilities | 242.17 | April electric |
| 05/11/2026 | 3303 | Mesa Office Supply | Office Supplies | 58.92 | Toner |
Open the grid first and compare its headings with your sheet, because the exact columns shown depend on the transaction type you choose. Then:
- Open the Accountant menu and choose Batch Enter Transactions.
- Pick Checks, or Credit Card Charges for card spending.
- Select the bank or card account the money left.
- In Excel, copy the data rows only, not the header row.
- Right-click the first Date cell in the grid and choose Paste.
- Read down the pasted rows for any payee or account that looks wrong, then select Save Transactions and confirm.
Run one batch per bank or card account. Mixing accounts in one sheet is how expenses end up in the wrong register.
Expense IIF files for Pro and Premier users
An IIF file is the tab-separated text format QuickBooks Desktop imports through File, Utilities, Import. Intuit's IIF overview with sample files includes a sample check file, so a sheet of expenses paid from a bank account can be rebuilt as IIF in any edition.
Each transaction takes a TRNS line for the bank side, one SPL line per expense account, and an ENDTRNS line to close it. The block below shows that shape for one check. Copy the exact headers from Intuit's sample check file rather than from here.
!TRNS TRNSTYPE DATE ACCNT NAME AMOUNT DOCNUM MEMO
!SPL TRNSTYPE DATE ACCNT NAME AMOUNT DOCNUM MEMO
!ENDTRNS
TRNS CHECK 05/06/2026 Checking Westgate Utilities -242.17 3302 April electric
SPL CHECK 05/06/2026 Utilities Westgate Utilities 242.17 3302 April electric
ENDTRNS
The TRNS amount is negative and the SPL amounts are positive, and they must cancel out. Intuit warns that IIF imports do only limited error checking, so a badly formed file can post wrong figures without any message. Back up the company file before every IIF import.
Which payee and account names must exist before the expenses go in?
Every payee and every expense account in the sheet should already be in QuickBooks Desktop, spelled exactly as the lists show them. Batch Enter shows every row on screen before you save. IIF is blunter: Intuit says an account the file names that does not exist is created as a new bank account.
That bank-account fallback is the reason to check names first. A typo such as "Utilites" in the SPL line produces a stray bank account holding the expense, and your Utilities total stays short. Before you import:
- Export the chart of accounts and the vendor list to Excel.
- Use a lookup on each payee and account in your expense sheet.
- Fix every row that returns no match, or add the missing name to QuickBooks first.
- Write sub-accounts with the parent name and a colon, such as "Utilities:Electric", when that is how QuickBooks shows them.
Expense imports that land in the wrong company file or account
The costliest expense-import mistake is a correct file posted to the wrong place. Desktop opens whichever company file you used last, and accountants often have several open in a day. A batch pasted into a client's file by mistake looks perfectly valid there, so nothing warns you.
Check the title bar for the company name before you paste or import. If it already happened, the guide to fixing a bank import made into the wrong QuickBooks company walks through finding and removing the entries.
Desktop habits that don't carry over to Online
If the business is moving to QuickBooks Online, the methods change. Online has no Batch Enter or IIF; unpaid expenses go in through its bills import, which the guide to importing bills into QuickBooks Online covers. Paid expenses usually arrive as bank lines instead. SimpleBankConvert is being built to turn PDF bank statements into those upload files.