Three formats, one decision: OFX for QuickBooks Online, Xero, Wave and GnuCash; QIF for Quicken and older tools; IIF for QuickBooks Desktop. What each carries, and the caveats worth knowing before you import.
QuickBooks Online, Xero, Wave, or GnuCash: use OFX. Quicken or an older desktop finance tool: use QIF. QuickBooks Desktop: use IIF. When a tool accepts more than one, OFX is the safest default — it is the most precisely specified of the three.
OFX is an XML format with an actual published specification, which is why modern accounting tools standardized on it. Each transaction carries an unambiguous date, a signed amount, a stable transaction id (which helps importers skip duplicates), the payee, and a memo; the file also states the statement period and currency. PesaInsights emits OFX 2.x following the 2.1 specification, and every export is round-trip verified: what we write, our own parser reads back identically.
QIF is a plain-text format from the era before specifications were strict, kept alive by Quicken and older tools. It is the only one of the three with a category field, so the categorization PesaInsights infers survives the import. One honest caveat: QIF importers overwhelmingly assume US-style MM/DD/YYYY dates, so that is how we write them — a deliberate choice that keeps 5 March from being read as 3 May.
IIF is Intuit’s tab-delimited journal format, and QuickBooks Desktop’s File → Utilities → Import path expects it. Each row books the transaction against an account whose name is taken from your statement’s source — an M-Pesa statement imports under an M-Pesa account name, with a neutral fallback otherwise — and you can rename the account inside QuickBooks after the import.
None of these formats carries attachments, running balances as first-class data, or your notes — they move transactions, not context. Whatever you import, spot-check the count, the date range, and the sign of a few transactions against the original statement before reconciling.
Convert a statement · Analyze a statement · Help & FAQ · Privacy promise