Skip to main content
Billbooks now has a REST API you can build on. It covers five core resources: Invoices, Estimates, Clients, Items, and Expenses, each request scoped to exactly one Billbooks organization through a per-organization API key. This is a deliberately separate surface from the internal endpoints the Billbooks web and mobile apps use. Those use a browser/mobile session-token scheme and aren’t intended for third-party use. This API uses a simple bearer token instead, built for scripts, integrations, and your own tools.

What you can do

Invoices

Full parity with the internal app: real stock deduction, real expense-linking, real client-balance reconciliation, not a stubbed subset.

Estimates

Create, update, and manage estimates for your clients.

Clients

Manage the client list every invoice and estimate is scoped to.

Items

Your catalog of billable items, with optional stock tracking.

Expenses

Track and link expenses, including to specific invoices.

Before you start

  • Authentication is a Bearer token you generate from inside the Billbooks app itself. See Authentication for the exact steps.
  • Rate limits apply per resource, independently, not as one shared quota. See Rate Limits.
  • Every response follows one consistent shape, {"success": true, "data": ...} on success, a structured error envelope on failure. See Errors.
  • There is no webhooks feature on this API today. If your integration needs to react to events (a new payment, an updated invoice), you’ll need to poll the relevant endpoint.
Ready to make your first call? Head to the Quickstart.