Skip to content
Back to skills

Zoho Books Automation

ASecurity

Automate Zoho Books accounting workflows including invoice creation, bill management, contact lookup, payment tracking, and multi-organization support through natural language commands

  • 11 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 10, 2026
business

Works with

  • mcp

Security analysis

A100/100

Scanned September 10, 2026

npx -y skills add luokai0/ai-agent-skills-by-luo-kai --skill zoho-books-automation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Zoho Books Automation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Zoho Books Automation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/luokai0-zoho-books-automation/badge)](https://www.skillsdirectory.com/skills/luokai0-zoho-books-automation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
author: luo-kai
name: Zoho Books Automation
description: "Automate Zoho Books accounting workflows including invoice creation, bill management, contact lookup, payment tracking, and multi-organization support through natural language commands"
requires:
  mcp:
    - rube
---

# Zoho Books Automation

Automate Zoho Books accounting workflows -- create and manage invoices, track bills and payments, look up contacts, export PDFs, and handle multi-organization setups -- all through natural language.

**Toolkit docs:** [composio.dev/toolkits/zoho_books](https://composio.dev/toolkits/zoho_books)

---

## Setup

1. Add the Rube MCP server to your environment: `https://rube.app/mcp`
2. Connect your Zoho Books account when prompted (OAuth flow via Composio)
3. Start issuing natural language commands for Zoho Books automation

---

## Core Workflows

### 1. Discover Organizations

Retrieve all organizations for the authenticated user. This is a prerequisite since `organization_id` is required by nearly every other endpoint.

**Tool:** `ZOHO_BOOKS_LIST_ORGANIZATIONS`

No parameters required. Returns organization IDs, names, and metadata.

> Always call this first to obtain the `organization_id` needed by all other Zoho Books tools.

Example prompt:
> "List my Zoho Books organizations"

---

### 2. Create and Manage Invoices

Create invoices with line items, manage existing invoices, and export them as PDFs.

**Create:** `ZOHO_BOOKS_CREATE_INVOICE`

Key parameters:
- `organization_id` -- target organization (required)
- `customer_id` -- customer to bill (required)
- `line_items` -- array of line items (required), each with:
  - `item_id` or `name` -- reference existing item or create ad-hoc line
  - `quantity`, `rate` -- amount details
  - `description`, `tax_id`, `discount` -- optional details
- `date` / `due_date` -- dates in `YYYY-MM-DD` format
- `invoice_number` -- custom number (set `ignore_auto_number_generation=true`)
- `discount` / `discount_type` -- invoice-level discount (`entity_level` or `item_level`)
- `notes` / `terms` -- printed on the invoice
- `send` -- email the invoice immediately after creation
- `payment_terms` -- number of days for payment

**List:** `ZOHO_BOOKS_LIST_INVOICES`

Key parameters:
- `organization_id` (required)
- `status` -- `sent`, `draft`, `overdue`, `paid`, `void`, `unpaid`, `partially_paid`, `viewed`
- `customer_id` / `customer_name` -- filter by customer
- `date_start` / `date_end` -- date range filter (`YYYY-MM-DD`)
- `search_text` -- search invoice number, reference, or customer name
- `sort_column` / `sort_order` -- sort by `date`, `due_date`, `total`, `balance`, etc.
- `page` / `per_page` -- pagination (max 200 per page)

**Get details:** `ZOHO_BOOKS_GET_INVOICE` -- fetch by `invoice_id` with `accept` format: `json`, `pdf`, or `html`

**Delete:** `ZOHO_BOOKS_DELETE_INVOICE` -- remove by `invoice_id`

**Bulk export:** `ZOHO_BOOKS_BULK_EXPORT_INVOICES_PDF` -- merge up to 25 invoices into a single PDF

**Bulk print:** `ZOHO_BOOKS_BULK_PRINT_INVOICES` -- generate a combined print-ready PDF for up to 25 invoices

Example prompt:
> "Create an invoice for customer 1234567890 with 2 line items: 10 units of Widget A at $25 each, and 5 units of Widget B at $50 each, due in 30 days"

---

### 3. Track and Manage Bills

List, view, and update vendor bills with comprehensive filtering.

**List:** `ZOHO_BOOKS_LIST_BILLS`

Key parameters:
- `organization_id` (required)
- `status` -- `paid`, `open`, `overdue`, `void`, `partially_paid`
- `vendor_id` / `vendor_name_contains` -- filter by vendor
- `bill_number` / `bill_number_contains` -- filter by bill number
- `date_start` / `date_end` -- date range filter
- `total_greater_than` / `total_less_than` -- amount range filters
- `sort_column` / `sort_order` -- sort by `vendor_name`, `bill_number`, `date`, `due_date`, `total`, etc.
- `page` / `per_page` -- pagination (max 200)

**Get details:** `ZOHO_BOOKS_GET_BILL` -- fetch full bill by `bill_id` and `organization_id`

**Update:** `ZOHO_BOOKS_UPDATE_BILL` -- modify existing bill (requires `bill_id`, `organization_id`, `vendor_id`, `bill_number`)

Example prompt:
> "List all overdue bills for my organization, sorted by due date"

---

### 4. Look Up Contacts

Search and filter contacts (customers and vendors) for use in invoices and bills.

**Tool:** `ZOHO_BOOKS_LIST_CONTACTS`

Key parameters:
- `organization_id` (required)
- `contact_type` -- `customer` or `vendor`
- `contact_name_contains` / `contact_name_startswith` -- name filters
- `email_contains` / `email_startswith` -- email filters
- `company_name_contains` -- company name filter
- `filter_by` -- status filter: `Status.Active`, `Status.Inactive`, `Status.Duplicate`, etc.
- `search_text` -- search by contact name or notes (max 100 chars)
- `sort_column` -- sort by `contact_name`, `email`, `outstanding_receivable_amount`, `created_time`, etc.
- `page` / `per_page` -- pagination (max 200)

Example prompt:
> "Find all active customers whose company name contains 'Acme'"

---

### 5. Track Invoice Payments

List all payments recorded against a specific invoice.

**Tool:** `ZOHO_BOOKS_LIST_INVOICE_PAYMENTS`

Key parameters:
- `invoice_id` -- the invoice to check (required)
- `organization_id` -- the organization (required)

Returns all payment transactions applied to the invoice including amounts, dates, and payment methods.

Example prompt:
> "Show all payments recorded against invoice 451025000000123045"

---

### 6. Full Invoicing Workflow

Combine tools for end-to-end invoice management:

1. **Organization**: `ZOHO_BOOKS_LIST_ORGANIZATIONS` -- get `organization_id`
2. **Contacts**: `ZOHO_BOOKS_LIST_CONTACTS` -- find or verify `customer_id`
3. **Create**: `ZOHO_BOOKS_CREATE_INVOICE` -- create invoice with line items
4. **Review**: `ZOHO_BOOKS_GET_INVOICE` -- fetch invoice details or PDF
5. **Track**: `ZOHO_BOOKS_LIST_INVOICE_PAYMENTS` -- monitor payment status
6. **Export**: `ZOHO_BOOKS_BULK_EXPORT_INVOICES_PDF` -- batch export for records

Example prompt:
> "Find the customer ID for 'Acme Corp', create an invoice for them with consulting services, and then get the PDF"

---

## Known Pitfalls

| Pitfall | Details |
|---------|---------|
| Organization ID always required | Nearly every endpoint requires `organization_id` -- always call `ZOHO_BOOKS_LIST_ORGANIZATIONS` first |
| Line items required for invoices | `ZOHO_BOOKS_CREATE_INVOICE` requires at least one line item with either `item_id` or `name` |
| Invoice ID format | Use the numeric `invoice_id` from the invoice object (e.g., `7472322000000264123`), not the encoded ID from `invoice_url` |
| Bulk limits | Both `ZOHO_BOOKS_BULK_EXPORT_INVOICES_PDF` and `ZOHO_BOOKS_BULK_PRINT_INVOICES` accept a maximum of 25 invoice IDs |
| Pagination max 200 | All list endpoints cap at 200 records per page -- iterate pages for complete results |
| Bill update requires all fields | `ZOHO_BOOKS_UPDATE_BILL` requires `bill_id`, `organization_id`, `vendor_id`, and `bill_number` even for partial updates |
| Date format | All date parameters use `YYYY-MM-DD` format |
| response_option undocumented | `ZOHO_BOOKS_LIST_INVOICES` has an undocumented `response_option` parameter (0=full, 1=full+totals, 2=counts only) that may change without notice |

---

## Quick Reference

| Action | Tool Slug | Key Params |
|--------|-----------|------------|
| List organizations | `ZOHO_BOOKS_LIST_ORGANIZATIONS` | (none) |
| Create invoice | `ZOHO_BOOKS_CREATE_INVOICE` | `organization_id`, `customer_id`, `line_items` |
| List invoices | `ZOHO_BOOKS_LIST_INVOICES` | `organization_id`, `status`, `date_start` |
| Get invoice | `ZOHO_BOOKS_GET_INVOICE` | `invoice_id`, `organization_id`, `accept` |
| Delete invoice | `ZOHO_BOOKS_DELETE_INVOICE` | `invoice_id`, `organization_id` |
| Bulk export PDF | `ZOHO_BOOKS_BULK_EXPORT_INVOICES_PDF` | `organization_id`, `invoice_ids` |
| Bulk print | `ZOHO_BOOKS_BULK_PRINT_INVOICES` | `organization_id`, `invoice_ids` |
| List bills | `ZOHO_BOOKS_LIST_BILLS` | `organization_id`, `status`, `vendor_id` |
| Get bill | `ZOHO_BOOKS_GET_BILL` | `bill_id`, `organization_id` |
| Update bill | `ZOHO_BOOKS_UPDATE_BILL` | `bill_id`, `organization_id`, `vendor_id` |
| List contacts | `ZOHO_BOOKS_LIST_CONTACTS` | `organization_id`, `contact_type`, `search_text` |
| List payments | `ZOHO_BOOKS_LIST_INVOICE_PAYMENTS` | `invoice_id`, `organization_id` |

---

*Powered by [Composio](https://composio.dev)*

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.