zoho-books

Installation
SKILL.md

Zoho Books (via Apideck)

Access Zoho Books through Apideck's Accounting unified API — one of 34 Accounting connectors that share the same method surface. Code you write here ports to Access Financials, Acumatica, banqUP and 30 other Accounting connectors by changing a single serviceId string. Apideck handles auth, pagination, rate limiting, and retries so you don't write per-tenant Zoho Books plumbing.

Quick facts

When to use this skill

Activate this skill when the user explicitly wants to work with Zoho Books — for example, "create an invoice in Zoho Books" or "reconcile payments in Zoho Books". This skill teaches the agent:

  1. Which Apideck unified API covers Zoho Books (Accounting)
  2. The correct serviceId to pass on every call (zoho-books)
  3. Zoho Books-specific auth and coverage caveats

For the full method surface (parameters, pagination, filtering), use your language SDK skill:

For the raw OpenAPI spec:

Minimal example (TypeScript)

import { Apideck } from "@apideck/unify";

const apideck = new Apideck({
  apiKey: process.env.APIDECK_API_KEY,
  appId: process.env.APIDECK_APP_ID,
  consumerId: "your-consumer-id",
});

// List invoices in Zoho Books
const { data } = await apideck.accounting.invoices.list({
  serviceId: "zoho-books",
});

Portable across 34 Accounting connectors

The Apideck Accounting unified API exposes the same methods for every connector in its catalog. Switching from Zoho Books to another Accounting connector is a one-string change — no rewrite, no new SDK.

// Today — Zoho Books
await apideck.accounting.invoices.list({ serviceId: "zoho-books" });

// Tomorrow — same code, different connector
await apideck.accounting.invoices.list({ serviceId: "access-financials" });
await apideck.accounting.invoices.list({ serviceId: "acumatica" });

This is the compounding advantage of using Apideck over integrating Zoho Books directly: code against the unified Accounting API once, gain access to every connector in it. New connectors Apideck adds become available to your app without code changes.

Zoho Books via Apideck Accounting

Zoho Books is Zoho's accounting product, part of the Zoho One suite. Strong in India and emerging markets, with multi-currency and multi-entity support.

Entity mapping

Zoho Books entity Apideck Accounting resource
Invoice invoices
Bill bills
Payment (Customer Payment) payments
Bill Payment (Vendor Payment) bill-payments
Journal journal-entries
Chart of Account ledger-accounts
Contact (customer) customers
Contact (vendor) suppliers
Item invoice-items
Tax tax-rates
Credit Note credit-notes
Purchase Order purchase-orders

Coverage highlights

  • ✅ Full CRUD on invoices, bills, payments, customers, suppliers
  • ✅ Journal entries
  • ✅ Multi-currency
  • ✅ Purchase orders
  • ✅ GST / VAT handling (India and other regions)
  • ⚠️ Recurring invoices — not exposed; use Proxy
  • ❌ Projects and time tracking — separate Zoho products (Zoho Projects, Zoho People)
  • ❌ Expense claim workflow — use Proxy with Zoho Expense API

Auth notes

  • Type: OAuth 2.0, managed by Apideck Vault
  • Data center / region: Zoho is sharded by region (US, EU, IN, AU, CN, JP). The user's data center is determined during OAuth; wrong-DC errors mean re-authorization is needed.
  • Organization binding: one Zoho Books organization per connection.
  • Zoho One: users on Zoho One share auth across Zoho apps — connecting Books doesn't automatically connect CRM/People etc.

Example: create an invoice with tax

const { data } = await apideck.accounting.invoices.create({
  serviceId: "zoho-books",
  invoice: {
    customer_id: "contact_abc",
    invoice_date: "2026-04-18",
    line_items: [
      { description: "Software license", quantity: 1, unit_price: 500, tax_rate: { id: "tax_gst_18" } },
    ],
    currency: "INR",
  },
});

Escape hatch: Proxy API

When an endpoint isn't covered by the Accounting unified API, use Apideck's Proxy to call Zoho Books directly — Apideck injects auth headers and handles token refresh. Set x-apideck-downstream-url to the target endpoint on Zoho Books's own API:

curl 'https://unify.apideck.com/proxy' \
  -H "Authorization: Bearer ${APIDECK_API_KEY}" \
  -H "x-apideck-app-id: ${APIDECK_APP_ID}" \
  -H "x-apideck-consumer-id: ${CONSUMER_ID}" \
  -H "x-apideck-service-id: zoho-books" \
  -H "x-apideck-downstream-url: <target endpoint on Zoho Books>" \
  -H "x-apideck-downstream-method: GET"

See Zoho Books's API docs for available endpoints.

Sibling connectors

Other Accounting connectors that share this unified API surface (same method signatures, just change serviceId):

access-financials (beta), acumatica (beta), banqup (beta), campfire (beta), clearbooks-uk (beta), digits (beta), dualentry, exact-online, and 25 more.

See also

Related skills

More from apideck-libraries/api-skills

Installs
2
GitHub Stars
2
First Seen
Apr 20, 2026