QuickBooks Online
The QuickBooks Online (QBO) integration syncs income and categories so your accountant doesn’t have to duplicate work.
What syncs
| Concept in Ministrium | Mapping in QuickBooks |
|---|---|
| Completed donation | Sales Receipt or Deposit |
| Recurring (successful charge) | Sales Receipt + “Recurring” memo |
| Refund | Refund Receipt |
| Fund (Tithes, Missions, Building) | Class or Account (configurable) |
| Campus | Location (QBO class) |
| Donor | Customer (created or linked by email) |
| Stripe fee | Expense Account “Processing” |
| Bank payout | Bank Deposit |
Connect
- Integrations → QuickBooks Online → Connect.
- OAuth with Intuit (sign in to your QBO).
- Pick the Realm (company if you have several in QBO).
- Map funds to Class/Account in QBO.
- Enable.
From that point on, every completed donation creates a Sales Receipt in QBO in under 5 minutes.
Historical backfill
By default donations sync from the connection date forward. To bring history:
Integrations → QBO → Backfill → pick range → confirm.
> ⚠️ Large backfill (> 6 months, > 5,000 transactions) takes hours and consumes QBO API credits. We recommend running overnight.
Idempotency
Each Sales Receipt is created with an External ID = the Ministrium donation ID. If retried for any reason, QBO de-duplicates.
Donation ID: don_abc123
External ID in QBO: ms-don_abc123You’re safe from double-counting income on network retries.
Error handling
If QBO rejects a Sales Receipt (duplicate customer email, unmapped fund, etc.):
- The donation enters
sync_failedstate in Ministrium. - It appears in Integrations → QBO → Errors with the QBO message.
finance_adminfixes it (remap fund, edit customer) and retries with one click.
Once synced, native QBO reports work as-is: P&L, Balance Sheet, Statement of Activities (form 990 friendly), all of it.
Limitations
- QuickBooks Online only, not Desktop. For Desktop, export CSV monthly.
- One QBO company per church (tenant). If you have 2 separate legal entities, that’s 2 Ministrium tenants.
- Custom fields in QBO are not supported in MVP. Use Class and Location for all splits.
- Multi-currency: if your QBO is USD but you receive MXN, donations convert at the day’s FX rate (Stripe rate) and post in USD.
Disconnect
If you decide to stop syncing, Integrations → QBO → Disconnect. Already-synced donations remain in QBO; new ones stop flowing. Reconnecting later resumes flow (no resync of the gap period unless you request a backfill).