Stria and QuickBooks Online
Invoices and payments pushed to your ledger, and reconciliation read back.
Plans: Paid plans. See plans and pricing
Stria issues invoices and collects payment; QuickBooks Online is where your books live. This
connection keeps the two agreeing in both directions, and it is the same mechanism the
Xero connection uses — one queue and one worker, with the provider resolved
beneath them.
How the sync works
One worker, one queue, both directions.
Push. An invoice or payment raised in Stria is queued and pushed to your ledger. Pushes are
claimed in small batches so a slow batch cannot hold locks, and retry backoff, jitter and the
dead-or-skipped decision are all decided server-side rather than by the worker.
Pull. After pushing, the same run polls for reconciliation and reads the result back. Pushing
first is deliberate: an invoice created this tick is already in your ledger when the poll reads it,
so it comes back as agreement rather than as a false divergence against your own unsent work.
The pull uses conditional requests, so a poll that finds nothing costs one cheap call rather than
walking pages.
Why the batches are small
Your ledger provider, not Stria, sets the call budget — for Xero it is 60 calls a minute and 5,000 a
day per connected organisation. Stria pushes at most ten per batch and five batches per
invocation, a ceiling of fifty pushes per run, which at a ten-minute schedule is around 300 an hour.
That is far above any freelancer's invoice volume and comfortably inside a tenant's minute budget
even when every push belongs to the same organisation.
One ledger at a time
A workspace connects one accounting provider, not both. Sync state, cursors and the push queue are
shared infrastructure with the provider resolved beneath them, so connecting a second would be
ambiguous about which ledger is authoritative.
What you will see when it breaks
Every run writes a heartbeat, including an idle one — because a stopped sync looks identical from
inside Stria. Every invoice is still present and still correct here; the gap only becomes visible in
your accountant's ledger. The heartbeat is what turns that into an alarm instead of a discovery.
Where a pushed total does not match what the ledger recorded, the divergence is reported with the
figures rather than silently reconciled.
Setting it up
- In Settings → Integrations, connect QuickBooks Online and authorise the company.
- Confirm the account mapping.
- Leave it. The sync runs on a schedule.
Access tokens are encrypted at rest and rotated automatically when they expire.
See also Stripe for collection, and
where the money went for reporting.
Other connections
- Stria and Slack — Scope checks on the channels you nominate — and a consent screen with four scopes on it.
- Stria and Stripe — Your Stripe account, your money, your merchant relationship — Stria issues the invoice.
- Stria and Xero — Invoices and payments pushed to your ledger, and reconciliation read back.
- Stria and Asana or Linear — Push an approved item to the tracker your team already works in. One way, one item at a time.
- Webhooks and the API — Signed HTTPS events when work is approved or money moves, plus token-authenticated endpoints.
Start your 14-day trial · See plans and pricing · Partner API reference