Instabooks delivers fast read-only PostgreSQL access to QuickBooks Online data. Unlock ledger-backed analytics, agents and applications.
Below we cover some common problems encountered with Instabooks Database Access and how to solve them.
There a few reasons authentication can fail, here are some likely causes to evaluate.
If you are hand-writing a
postgresql://user:pass@host/db URL, the
@ in your email breaks it. Use the
key=value form, or copy the pre-encoded URL from the
URL tab in
Settings.
If you are seeing refused connections, network timeouts, or "could not translate host name", consider the following suggestions.
db.instabooks.io and the port is
5432. Note this is not the same host you use
in a browser.
Instabooks Database Access connections are always
encrypted. Most PostgreSQL clients negotiate this on their
own; if for some reason this is failing, check your client
documentation on how to set the SSL mode to
require (sslmode=require) in a
connection string.
| Error | What it means |
|---|---|
relation … does not exist42P01 |
No such table. Names are
snake_case and plural. See
Tables & SQL.
|
column … does not exist42703 |
No such column. See Tables & SQL. |
column must appear in the GROUP BY clause42803 |
A projected column is neither grouped by nor inside an
aggregate. Add it to GROUP BY, or wrap it.
See Tables & SQL.
|
… is not supported0A000 |
A construct outside the supported subset. The error's detail and hint name what to write instead. See Tables & SQL. |
syntax error at or near …42601 |
The statement could not be parsed. Check for a typo, more than one statement in the box, or a psql meta-command sent to the wrong client. See Tables & SQL. |
Both sides of every QuickBooks transaction are stored as rows
in transaction_lines, so an unconstrained
sum(amount) should net to zero by construction. Join
accounts on account_oid and filter it —
see Tables & SQL.
LIKE is case-sensitive here, as in PostgreSQL.
'expenses:%' matches nothing;
'Expenses:%' matches the subtree.
select distinct type from accounts before filtering
on a type, and mind the exact spelling QuickBooks uses.
PostgreSQL Unicode(x64) for 64-bit Excel. See Connecting Excel.
There is no query timeout, so an expensive query runs to completion. Two habits keep things quick:
transaction_lines
whole. Lean on SQL filtering and aggregation.
date_trunc exists so that a monthly trend is a single
query.
Write to support with the client you are using, the exact error text, and the company you were connecting to. Never send us your password.