Connecting Data Sources¶
Kipper connects to your finance system and maintains a read-only copy of your data on AWS servers in the United States. Every answer is generated by running a SQL query against that copy not by searching documents, and not by approximating from a language model's training data. If the records cannot answer your question, Kipper tells you so rather than estimating.
Supported systems¶
| System | What Kipper can answer |
|---|---|
| NetSuite | Invoices, bills, payments, customers, vendors, purchase orders, sales orders, inventory, plus journal entries and general-ledger transaction lines |
| QuickBooks Online | Invoices, bills, expenses, payments, customers, vendors, the Profit and Loss report, and bank transactions |
| QuickBooks Desktop | Invoices, expenses, customer and vendor balances, AR aging |
| Xero | Invoices, payments, contacts, bills, credit notes, prepayments and overpayments |
Coverage is widest on NetSuite and narrowest on Xero. The caveats below are worth reading before you assume a given question is answerable.
What Kipper reads¶
Kipper reads transaction-level records — the individual documents your business creates as it trades. Across all four systems that means:
- Sales side: customers, invoices, payments, line items, credit notes (credit memos)
- Purchase side: vendors or suppliers, bills, bill payments, vendor credits, purchase orders
- Stock: inventory items
- Credits on account: overpayments and prepayments, including how much of each is still unapplied
Each system names things slightly differently — Xero uses contacts and credit notes where QuickBooks and NetSuite use separate customer and vendor records and credit memos — and Kipper answers using your system's own terminology. NetSuite exposes more than the accounting platforms do; see Connecting NetSuite for what is available there.
Anything you can reach by looking up, filtering, or summing these records is a question Kipper can answer, including date-range comparisons of the same records.
Grouping answers by part of the business¶
Every system has a field for splitting transactions across teams, locations, or projects, and Kipper can group answers by whatever values your finance team already uses in it:
| System | Field |
|---|---|
| QuickBooks Online | Class |
| Xero | Tracking Category |
| NetSuite | Class or Department |
Kipper groups by fields that exist in your data. It will not invent a breakdown by something that is not a real field, such as industry or customer sector.
Coverage differences by system¶
Coverage is not identical across systems, because each one exposes different records.
NetSuite additionally syncs journal entries and general-ledger transaction lines, including account, class, location, and amount, so ledger-level questions are answerable. Subsidiary is the exception: it is used once, at sync time, to decide which records to pull, and is not stored on the synced records. Kipper therefore cannot tell you which subsidiary a transaction belongs to, or break answers down by subsidiary.
QuickBooks Online additionally syncs the native Profit and Loss report, monthly by year, stored as report rows rather than reconstructed from transactions. Bank activity covers deposits, transfers, and checks. Cash and credit-card purchases are not synced, so bank coverage is not complete.
Xero does not sync bank transactions or reconciliation status. Questions about cash position, bank balances, and whether an item has been reconciled are outside what Kipper answers on Xero, even though bank feeds are central to Xero itself.
What Kipper does not do¶
Regardless of system, Kipper answers questions from records it has synced. It does not:
- Calculate reporting metrics — financial ratios, budget-versus-actual variance, board summaries
- Run finance workflows — closing the books, reconciling, auditing, budgeting
These are processes your finance team performs in the finance system, not questions with a lookup answer. For definitions of the terms on this page, see the Finance and AI Glossary.
One finance system per workspace¶
Each workspace connects to a single finance system. To switch systems, disconnect the existing source from the Data Sources page and then connect the new one.
To run two finance systems side by side, put each one in its own workspace. See Working with Multiple Workspaces.
Data freshness¶
How quickly a change in your finance system appears in Kipper depends on whether that system can notify Kipper when something changes:
| System | Regular sync | Live change notifications | Full re-sync |
|---|---|---|---|
| QuickBooks Online | Every 15 minutes | Yes, by webhook | — |
| Xero | Every 15 minutes | Yes, by webhook | — |
| NetSuite | Every 15 minutes | No | Weekly, Saturday 05:00 UTC |
| QuickBooks Desktop | Every 15 minutes | No | Weekly |
Where webhooks are available, most changes appear within seconds. Where they are not, the 15-minute incremental sync is the upper bound, and the weekly full sync is a safety net against anything the incremental feed missed.
NetSuite's initial sync scales with your data volume and can take several hours on large accounts. You can follow progress and trigger a manual sync from Data Sources in the sidebar.
Read-only by architecture¶
Kipper cannot write, update, or delete anything in your finance system. Data flows one direction only, from your system into Kipper's query layer, and this is enforced at the architecture level rather than by configuration — there is no write path to switch off.
Because Kipper never writes to your finance system, there is nothing for it to record in that system's own audit trail. What each person can read is controlled separately; see Permission Sets.
Sync actions¶
Each connected source has a Sync Actions card with controls for re-running a sync or removing synced data. The actions work the same way for NetSuite, QuickBooks Online, QuickBooks Desktop, and Xero.
Go to Data Sources in the sidebar and open the source you want to manage. The card sits below the connection details. Only workspace admins can see and use these actions.
Restart Regular Sync¶
Runs the regular incremental sync straight away, instead of waiting for the next scheduled run. Kipper pulls only the records that changed since the last successful sync, so this usually finishes quickly. Use it when you've just made a change in your finance system and want it reflected in Kipper now.
Restart Full Sync¶
Re-pulls all data from the source rather than just recent changes. This takes longer than a regular sync, and for large accounts it can run for several hours. Use it if you think data is missing or out of date and a regular sync hasn't fixed it.
Clear Data¶
Removes all synced records for that source from Kipper. You'll be asked to type a confirmation word before it runs, and it can't be undone.
- Nothing is changed or deleted in your connected finance system. Clearing only affects Kipper's copy.
- The connection and its sync schedule stay in place, so Kipper will start filling the data back in on the next sync (which pulls your full history again, not just recent changes).
- Until the source is synced again, Kipper can't answer questions from it.
Data Operation Jobs¶
Below the Sync Actions card, the Data Operation Jobs table shows the result of each sync operation: the operation type, when it ran, its status, how many records succeeded and failed, and any error message. Rows with an arrow expand to show the individual steps of that operation. Use this to confirm a sync you started has finished, or to see why one didn't.
When the actions are unavailable¶
- The card isn't shown at all. You're not an admin on this workspace. Ask an admin to run the action for you.
- The buttons are greyed out. A sync is already running, or your workspace subscription needs attention (an expired trial, an expired plan, or a suspended workspace). Wait for the running sync to finish, or contact support@kipper.com about the subscription. See Trial & Access for what each restricted state means and what still works.
- Restart Regular Sync is missing. Regular sync is paused for that source, or, for NetSuite, no subsidiary has been selected yet. Select a subsidiary on the source's detail page first.
- Restart Full Sync reports a subsidiary error (NetSuite only). Unlike Restart Regular Sync, this button stays available before a subsidiary is chosen. Starting it shows "NetSuite subsidiary is not configured. Please select a subsidiary before syncing." and nothing is synced. Select a subsidiary first, then run it again.
Data after account closure¶
If you close your Kipper account, your finance data is deleted within a reasonable period. Query logs are retained as required for security and audit purposes, then deleted or anonymized.
Related¶
- Permissions and Access — how access is enforced at query time
- Interfaces — where your team can ask questions
- Your First Question — what to ask once a source is connected
- Troubleshooting — when data looks out of date