code API & Developers

Build on your books with a modern REST API

Programmatic access to customers, invoices, bills, payments, banking, inventory, accounting and CRM. Mint a scoped API key, read and write your data, and connect WisoBooks to any app or third-party tool.

REST
JSON over HTTPS
OpenAPI
+ Scalar try-it docs
Sandbox
Safe test data
api.wisobooks.com/v1/customers
# Create an invoice with your API key
curl -X POST https://api.wisobooks.com/v1/orders \
  -H "Authorization: Bearer bk_live_…" \
  -H "Idempotency-Key: 7f3a-1" \
  -H "Content-Type: application/json" \
  -d '{ "customerId": "…", "issueDate": "2026-06-27" }'

# → 201 Created  ·  ETag, RFC 9457 errors, pagination, rate limits
vpn_keyFeature focus

Secure, scoped API keys — issued after you log in

Create keys in the developer portal. Each key is bound to your account and carries OAuth-style scopes that can only narrow what you can already do — never widen it. Secrets are hashed; you see the full key once.

  • check_circleAuthorization: Bearer or X-Api-Key header
  • check_circleCoarse scopes like customers:read, orders:write, or * for full access
  • check_circlePer-key rate limits, expiry and one-click revocation
  • check_circleLive and test (sandbox) keys with distinct bk_live_ / bk_test_ prefixes
Create a key east
portal · API keys
GET  https://api.wisobooks.com/v1/me
{
  "tenantId": "…",
  "environment": "Live",
  "scopes": ["customers:read","orders:write"],
  "permissions": ["Permissions.Customers.View", …]
}
apiFeature focus

Every part of your business, as REST resources

Consistent JSON resources with paged lists, ETags for optimistic concurrency, Idempotency-Key on creates, and RFC 9457 problem-details errors across the board.

  • point_of_saleSales: customers, orders/invoices, quotes, customer payments, credit notes
  • inventory_2Inventory: items, categories, warehouses, units of measure
  • shopping_cartPurchases: suppliers, bills, purchase orders, expenses, supplier payments
  • account_balanceAccounting & tax: taxes, tax groups, fixed assets
  • account_balance_walletBanking: bank accounts and transactions
  • hubCRM: leads, contacts, opportunities, activities
/v1/customers?page=1&pageSize=50
{
  "data": [ { "id": "…", "name": "Acme Co", "dueAmount": 1200 } ],
  "meta": { "page": 1, "pageSize": 50,
            "totalCount": 348, "totalPages": 7 }
}
menu_bookFeature focus

Interactive docs, generated from the live API

An OpenAPI 3.1 document powers a Scalar reference with a built-in try-it console — paste a key, call any endpoint, and copy the request as curl or your language of choice.

  • check_circleMicrosoft OpenAPI document at /openapi/v1.json
  • check_circleScalar API reference with authentication and try-it
  • check_circleGenerate clients in any language from the OpenAPI spec
  • check_circlePredictable pagination, sorting and search conventions
Open the API reference east
api.wisobooks.com/scalar/v1
# Rate limits & quota are returned as headers
HTTP/1.1 429 Too Many Requests
Retry-After: 60
Content-Type: application/problem+json
paymentsPricing

Start free, scale with usage

Hybrid pricing: every tier includes a monthly call quota and a rate limit; paid tiers bill overage per 1,000 calls. Free tier forever, plus a 14-day Pro trial for new accounts.

  • check_circleFree — 1,000 calls/mo, 60 req/min
  • check_circleStarter — 50,000 calls/mo, 300 req/min, overage $1/1k
  • check_circlePro — 500,000 calls/mo, 600 req/min, overage $0.50/1k
  • check_circleEnterprise — custom quota, dedicated limits and SLA

FAQ

How do I authenticate?

Create an API key in the developer portal and send it as Authorization: Bearer (or X-Api-Key). Keys are scoped to your permissions.

Is there a sandbox?

Yes — bk_test_ keys run against an isolated sandbox company with sample data. Sandbox calls are free and never count toward quota.

What about rate limits?

Each plan sets a per-minute rate limit and a monthly quota. Exceeding them returns 429 with Retry-After; over-quota returns 402/429 unless overage is enabled.

Can I generate a client SDK?

Yes. The OpenAPI 3.1 document lets you generate typed clients in any language, or use the Scalar try-it console directly.

Ready to build?

Log in to the developer portal, mint a key and make your first call in minutes.