QuickBooks Export
Treasurers — anyone with View All Invoices / billing.invoices.view-all, or Organization Admin — can download billing data from Billing → Export to QuickBooks for import into QuickBooks Online or Desktop.
What you get
A ZIP file named quickbooks-export-{org-slug}-{yyyyMMdd}.zip containing:
| File | Contents |
|---|---|
invoices.csv |
One row per invoice line item (invoice header columns repeated). Draft invoices are omitted. |
payments.csv |
One row per succeeded or refunded payment. Failed charges are omitted. |
Amounts are major units — for example 50.00 USD, not cents. Dates in the file are yyyy-MM-dd in the organization timezone. The From / Through filter also uses that timezone (start of From through end of Through), not the browser’s local zone.
Column mapping
invoices.csv
| Column | Maps to |
|---|---|
InvoiceNumber |
QuickBooks invoice / sales receipt number |
CreatedDate / SentDate / PaidDate |
Invoice dates |
CustomerName / CustomerEmail |
Customer (create or match on first import) |
LineDescription |
Product/service or line description |
Quantity / UnitPrice / LineAmount |
Line qty and amounts |
IsTaxable |
Taxable flag: TRUE / FALSE |
AmountPaid |
Amount already paid on the invoice |
Status |
Hearth & Hall status such as Sent, Paid, or Void |
InvoiceId / HearthHallInvoiceId |
Stable Hearth & Hall id — use to detect re-imports manually |
payments.csv
| Column | Maps to |
|---|---|
PaymentDate / Amount / Currency |
Receive payment |
InvoiceNumber / InvoiceId |
Link to the related invoice |
MethodSummary |
Card brand + last four (when available) |
ProviderChargeId |
Stripe (or simulator) charge reference |
CustomerName / CustomerEmail |
Payer / bill-to customer |
PaymentId / HearthHallPaymentId |
Stable Hearth & Hall id for manual dedupe |
Import steps (QuickBooks Online)
- In Hearth & Hall, open Billing, choose Export to QuickBooks, set the date range, and download the ZIP.
- Unzip the file.
- In QuickBooks Online, use Settings → Import data (or Gear → Import data).
- Import Customers first if names are new (or create them from the customer columns while importing invoices).
- Import sales / invoices from
invoices.csv, mapping columns above. Confirm totals against a sample invoice in Hearth & Hall. - Import payments from
payments.csv(or record receive-payment against the matching invoice numbers).
Exact menu labels vary by QBO plan and region. If Intuit’s invoice CSV importer is unavailable for your plan, open invoices.csv in a spreadsheet and use Bank transactions / journal import only when your accountant approves that path — prefer the sales invoice import when offered.
Import steps (QuickBooks Desktop)
- Export and unzip as above.
- Use File → Utilities → Import → Excel Files (or CSV) and map columns to Customers, Invoices, and Payments / Receive Payments as your Desktop edition supports.
- IIF is not shipped in this release; use the CSVs.
Verified paths
| Path | Status |
|---|---|
| Sample org export from Hearth & Hall (MemDb / local) | Verified in automated tests (row content + tenant isolation) |
| Live QuickBooks Online tenant import | Not yet verified against a production QBO company |
| QuickBooks Desktop CSV import | Documented; not yet verified against a Desktop company file |
Re-importing the same date range can create duplicates in QuickBooks — use HearthHallInvoiceId / HearthHallPaymentId (or invoice numbers) to skip rows you already imported.
See also
- Billing — open tabs, invoices, refunds, and payouts