Free online XLSX to QIF converter
Convert Excel transaction workbooks into QIF files for compatible finance software.
Convert XLSX to QIF online - free
Your file is processed instantly and never stored on our servers.
Import a file from a URL
Paste a direct link to the file. We download it to our server and it is converted exactly like an upload.
How it works
-
1/3
Upload your .xlsx file
Click to browse to select your file you want to convert or simply drag & drop your file into selected area.
-
2/3
Perform .xlsx to .qif conversion
After successful file upload, click to convert when you are ready.
-
3/3
Download converted .qif file
Conversion result is ready to download.
How to convert xlsx to qif file
- Accounting and taxes
- No ratings yet.
A finance program may require QIF when transaction records are stored in an Excel workbook and cannot be imported as XLSX or CSV. Converting the data creates an import file for supported personal-finance and accounting software while retaining core fields such as dates, payees, amounts, memos, and categories.
What the XLSX format is
XLSX is the XML-based workbook format used by Microsoft Excel, LibreOffice Calc, Apple Numbers, and spreadsheet-generation software. A workbook can contain multiple worksheets, formulas, formatting, tables, charts, and mixed data types; a transaction sheet commonly has columns such as Date, Payee, Amount, Memo, Category, and Check.
XLSX is designed for spreadsheet editing, not direct financial-data interchange. Select the worksheet containing the transactions, remove blank or summary rows, and replace formulas with calculated values if the converter or destination program cannot read formula results. Dates and amounts should use consistent values rather than display-only formatting.
What the QIF format is
QIF is a plain-text interchange format used by Quicken and other personal-finance applications that support QIF imports. A bank transaction normally contains a date beginning with D, an amount beginning with T, an optional payee beginning with P, memo beginning with M, category or transfer beginning with L, and a record terminator consisting of ^. The file begins with a type line such as !Type:Bank.
QIF is small, human-readable, and useful when the destination does not accept XLSX. It does not preserve spreadsheet formatting, formulas, charts, worksheets, or all modern financial metadata. Import support varies by application and version; some newer programs restrict QIF imports or support them only for particular account types.
Convert XLSX to QIF on 101convert.com
- Prepare the workbook: keep transaction headers in the first row, remove totals and unrelated rows, and check that every transaction has a valid date and amount.
- Open the XLSX-to-QIF converter on 101convert.com and upload the workbook.
- Select the transaction worksheet and map the spreadsheet columns to QIF fields if the converter presents those options. Map withdrawals and expenses to negative amounts and deposits to positive amounts unless the destination application specifies another convention.
- Choose the account type, commonly bank or credit card, start the conversion, and download the resulting
.qiffile. - In the finance application, use its QIF import command, commonly File → Import → QIF. Select the correct account, then review dates, signs, categories, transfers, and duplicate transactions before accepting the import.
For confidential records, check the service's handling and retention terms before uploading. A local script avoids sending the workbook to a third party.
Create a QIF file locally with Python
Install Python and the XLSX reader with python -m pip install openpyxl. Save the following as xlsx_to_qif.py. It expects a workbook named transactions.xlsx, uses the active worksheet, and requires Date and Amount headers; the other listed columns are optional.
from datetime import date, datetime
from decimal import Decimal
from openpyxl import load_workbook
book = load_workbook('transactions.xlsx', data_only=True)
sheet = book.active
headers = {
str(cell.value).strip().lower(): i
for i, cell in enumerate(sheet[1], start=1)
if cell.value is not None
}
def col(name, required=False):
value = headers.get(name.lower())
if required and value is None:
raise ValueError(f'Missing required column: {name}')
return value
def text(row, index):
return '' if index is None or row[index - 1] is None else str(row[index - 1]).strip()
date_col = col('Date', True)
amount_col = col('Amount', True)
payee_col = col('Payee')
memo_col = col('Memo')
category_col = col('Category')
check_col = col('Check')
with open('transactions.qif', 'w', encoding='utf-8', newline='') as out:
out.write('!Type:Bank\n')
for row in sheet.iter_rows(min_row=2, values_only=True):
raw_date = row[date_col - 1]
raw_amount = row[amount_col - 1]
if raw_date in (None, '') or raw_amount in (None, ''):
continue
if isinstance(raw_date, (datetime, date)):
qif_date = raw_date.strftime('%m/%d/%Y')
else:
qif_date = str(raw_date).strip()
amount = Decimal(str(raw_amount)).quantize(Decimal('0.01'))
out.write(f'D{qif_date}\nT{amount:f}\n')
for prefix, index in (
('P', payee_col), ('M', memo_col), ('L', category_col), ('N', check_col)
):
value = text(row, index)
if value:
out.write(f'{prefix}{value}\n')
out.write('^\n')
Run it with python xlsx_to_qif.py, inspect transactions.qif in a plain-text editor, and import it into the destination program. If the account is a credit card, change !Type:Bank to !Type:CCard; other QIF types include Cash and Invst.
Compatibility and data-quality limits
- QIF date syntax and accepted year formats vary by importer. The script writes
MM/DD/YYYY; confirm the destination's locale and date requirements when dates are ambiguous. - Categories use the
Lfield, for exampleLGroceries. Transfers commonly use account syntax such asL[Checking], while split transactions need multiple category and amount fields and are not generated by the simple script. - QIF may not carry currency codes, account balances, transaction IDs, opening balances, or complete investment data. Verify currency and account settings in the destination application.
- QIF importers differ in their treatment of duplicate transactions, cleared status, check numbers, encoding, and negative amounts. Legacy software may require a local character encoding instead of UTF-8.
- Keep the original workbook, compare the imported transaction count and total with the source, and reconcile the account after import. Do not rely on a successful file import as proof that every field mapped correctly.
XLSX vs QIF: format comparison
How the XLSX and QIF formats compare on the properties that matter most for this conversion.
| Property | .XLSX Microsoft Excel Open XML Spreadsheet | .QIF Quicken Interchange Format |
|---|---|---|
| Open standard | Yes | Partly open |
| Compression | Both | Uncompressed |
| Typical file size | Medium | Small |
| Opens in a web browser | Partial | No |
| Further editing | Easy | Limited |
| Metadata support | Extensive | Basic |
| Plain-text readable | No | Yes |
| Best used for | Data exchange | Data exchange |
| Introduced | 2007 | — |
| Developer | Microsoft | Intuit (originally Quicken/Intuit; later maintained by various finance software vendors) |
| MIME type | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | — |
The database currently does not contain any direct xlsx file converter links.
Frequently asked questions
Is the XLSX to QIF converter free?
Yes, converting XLSX to QIF on 101convert.com is completely free. No registration, email address or installation is required. If you need a higher file size limit or want to convert more files at once, see our plans.
How large can my XLSX file be?
You can upload XLSX files up to 1000 MB and convert up to 20 files at once in a single batch.
What happens to my uploaded files?
Files are processed automatically and deleted from our servers within a few minutes after conversion. We never view or share your files.
Do I need to install any software to convert XLSX to QIF?
No. The XLSX to QIF conversion runs entirely online in your browser and works on Windows, Mac, Linux, Android and iPhone.
Did the conversion fail?
In most cases, the cause is an incorrect file format. Please upload a valid XLSX file for this XLSX to QIF conversion. Occasionally, the issue may be on our side. We analyze recurring conversion failures and disable or fix the converter if we detect a defect.