View as Markdown

Zoho Books Integration

Manage Zoho Books organizations, contacts, items, invoices, bills, payments, and reports

The Zoho Books integration provides access to manage Zoho Books organizations, contacts, items, invoices, bills, payments, and reports through the Integrate MCP server.

Installation

The Zoho Books integration is included with the SDK:

import { zohoBooksIntegration } from "integrate-sdk/server";

Setup

1. Create a Zoho Books OAuth App

  1. Go to Zoho API Console
  2. Create a new OAuth application
  3. Configure your redirect URI
  4. Note your Client ID and Client Secret

2. Configure the Integration on Your Server

Add the Zoho Books integration to your server configuration. The integration automatically reads ZOHO_BOOKS_CLIENT_ID and ZOHO_BOOKS_CLIENT_SECRET from your environment variables:

import { createMCPServer, zohoBooksIntegration } from "integrate-sdk/server";
 
export const { client: serverClient } = createMCPServer({
  apiKey: process.env.INTEGRATE_API_KEY,
  integrations: [
    zohoBooksIntegration({
      scopes: ["ZohoBooks.fullaccess.all"], // Optional
    }),
  ],
});

You can override the environment variables by passing explicit values:

zohoBooksIntegration({
  clientId: process.env.CUSTOM_ZOHO_BOOKS_ID,
  clientSecret: process.env.CUSTOM_ZOHO_BOOKS_SECRET,
      scopes: ["ZohoBooks.fullaccess.all"], // Optional
});

3. Client-Side Usage

The default client automatically includes all integrations. You can use it directly:

import { client } from "integrate-sdk";
 
await client.authorize("zoho_books");
const result = await client.zoho_books.listOrganizations({});
 
console.log(result);

If you're using a custom client, add the integration to the integrations array:

import { createMCPClient, zohoBooksIntegration } from "integrate-sdk";
 
const customClient = createMCPClient({
  integrations: [zohoBooksIntegration()],
});

Configuration Options

export interface ZohoBooksIntegrationConfig {
  clientId?: string;

Default Scopes

These defaults are applied unless you override scopes in the integration config:

  • ZohoBooks.fullaccess.all

Tools

zoho_books_list_organizations

Books list organizations

export interface ZohoBooksListOrganizationsParams { organization_id?: string;

zoho_books_list_contacts

Books list contacts

export interface ZohoBooksListContactsParams { organization_id?: string;

zoho_books_list_items

Books list items

export interface ZohoBooksListItemsParams { organization_id?: string;

zoho_books_list_invoices

Books list invoices

export interface ZohoBooksListInvoicesParams { organization_id?: string;

zoho_books_list_bills

Books list bills

export interface ZohoBooksListBillsParams { organization_id?: string;

zoho_books_list_customerpayments

Books list customerpayments

export interface ZohoBooksListCustomerpaymentsParams { organization_id?: string;

zoho_books_create_invoice

Books create invoice

export interface ZohoBooksCreateInvoiceParams { organization_id?: string;

zoho_books_profit_and_loss

Books profit and loss

export interface ZohoBooksProfitAndLossParams { organization_id?: string;

Notes

  • Category: Accounting
  • Authentication mode: OAuth