data
Zoho Invoice CLI for AI Agents
Use the Zoho Invoice CLI from KosmoKrator to call Zoho Invoice tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.Zoho Invoice CLI Setup
Zoho Invoice can be configured headlessly with `kosmokrator integrations:configure zoho-invoice`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure zoho-invoice --set access_token="$ZOHO_INVOICE_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor zoho-invoice --json
kosmokrator integrations:status --json Credentials
Authentication type: Manual OAuth token oauth2_manual_token. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
| Key | Env var | Type | Required | Label |
|---|---|---|---|---|
access_token | ZOHO_INVOICE_ACCESS_TOKEN | Secret secret | yes | Access Token |
base_url | ZOHO_INVOICE_BASE_URL | URL url | no | Base URL |
organization_id | ZOHO_INVOICE_ORGANIZATION_ID | Text string | no | Organization ID |
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call zoho-invoice.zohoinvoice_list_invoices '{"status":"example_status","customer_id":"example_customer_id","date_start":"example_date_start","date_end":"example_date_end","page":1,"per_page":1,"sort_column":"example_sort_column","sort_order":"example_sort_order"}' --json kosmo integrations:zoho-invoice zohoinvoice_list_invoices '{"status":"example_status","customer_id":"example_customer_id","date_start":"example_date_start","date_end":"example_date_end","page":1,"per_page":1,"sort_column":"example_sort_column","sort_order":"example_sort_order"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs zoho-invoice --json
kosmo integrations:docs zoho-invoice.zohoinvoice_list_invoices --json
kosmo integrations:schema zoho-invoice.zohoinvoice_list_invoices --json
kosmo integrations:search "Zoho Invoice" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
zoho-invoice.zohoinvoice_list_invoices
List invoices from Zoho Invoice. Supports filtering by status (draft, sent, overdue, paid, void, partially_paid), customer, and date range.
read - Parameters
- status, customer_id, date_start, date_end, page, per_page, sort_column, sort_order
kosmo integrations:call zoho-invoice.zohoinvoice_list_invoices '{"status":"example_status","customer_id":"example_customer_id","date_start":"example_date_start","date_end":"example_date_end","page":1,"per_page":1,"sort_column":"example_sort_column","sort_order":"example_sort_order"}' --json kosmo integrations:zoho-invoice zohoinvoice_list_invoices '{"status":"example_status","customer_id":"example_customer_id","date_start":"example_date_start","date_end":"example_date_end","page":1,"per_page":1,"sort_column":"example_sort_column","sort_order":"example_sort_order"}' --json zoho-invoice.zohoinvoice_get_invoice
Get full details of a single invoice by its ID, including line items, totals, payments, and notes.
read - Parameters
- invoice_id
kosmo integrations:call zoho-invoice.zohoinvoice_get_invoice '{"invoice_id":"example_invoice_id"}' --json kosmo integrations:zoho-invoice zohoinvoice_get_invoice '{"invoice_id":"example_invoice_id"}' --json zoho-invoice.zohoinvoice_create_invoice
Create a new invoice in Zoho Invoice. Requires at minimum a customer_id and one line item. Returns the created invoice with its ID and total.
write - Parameters
- customer_id, line_items, invoice_number, date, due_date, notes, terms, reference_number
kosmo integrations:call zoho-invoice.zohoinvoice_create_invoice '{"customer_id":"example_customer_id","line_items":"example_line_items","invoice_number":"example_invoice_number","date":"example_date","due_date":"example_due_date","notes":"example_notes","terms":"example_terms","reference_number":"example_reference_number"}' --json kosmo integrations:zoho-invoice zohoinvoice_create_invoice '{"customer_id":"example_customer_id","line_items":"example_line_items","invoice_number":"example_invoice_number","date":"example_date","due_date":"example_due_date","notes":"example_notes","terms":"example_terms","reference_number":"example_reference_number"}' --json zoho-invoice.zohoinvoice_list_contacts
List contacts (customers and vendors) from Zoho Invoice. Supports filtering by type (customer or vendor) and pagination.
read - Parameters
- type, status, page, per_page, search_text
kosmo integrations:call zoho-invoice.zohoinvoice_list_contacts '{"type":"example_type","status":"example_status","page":1,"per_page":1,"search_text":"example_search_text"}' --json kosmo integrations:zoho-invoice zohoinvoice_list_contacts '{"type":"example_type","status":"example_status","page":1,"per_page":1,"search_text":"example_search_text"}' --json zoho-invoice.zohoinvoice_list_items
List items (products and services) from Zoho Invoice. Use item IDs when creating invoices with line items.
read - Parameters
- type, status, page, per_page, search_text
kosmo integrations:call zoho-invoice.zohoinvoice_list_items '{"type":"example_type","status":"example_status","page":1,"per_page":1,"search_text":"example_search_text"}' --json kosmo integrations:zoho-invoice zohoinvoice_list_items '{"type":"example_type","status":"example_status","page":1,"per_page":1,"search_text":"example_search_text"}' --json zoho-invoice.zohoinvoice_list_payments
List payments received in Zoho Invoice. Supports filtering by customer, date range, and payment mode.
read - Parameters
- customer_id, date_start, date_end, payment_mode, page, per_page
kosmo integrations:call zoho-invoice.zohoinvoice_list_payments '{"customer_id":"example_customer_id","date_start":"example_date_start","date_end":"example_date_end","payment_mode":"example_payment_mode","page":1,"per_page":1}' --json kosmo integrations:zoho-invoice zohoinvoice_list_payments '{"customer_id":"example_customer_id","date_start":"example_date_start","date_end":"example_date_end","payment_mode":"example_payment_mode","page":1,"per_page":1}' --json zoho-invoice.zohoinvoice_get_current_user
Get the authenticated user's profile from Zoho Invoice, including name, email, and role.
read - Parameters
- none
kosmo integrations:call zoho-invoice.zohoinvoice_get_current_user '{}' --json kosmo integrations:zoho-invoice zohoinvoice_get_current_user '{}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
zoho-invoice.zohoinvoice_list_invoices 8 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_list_invoices --json | Parameter | Type | Required | Description |
|---|---|---|---|
status | string | no | Filter by invoice status: draft, sent, overdue, paid, void, partially_paid. |
customer_id | string | no | Filter invoices for a specific customer by their contact ID. |
date_start | string | no | Start date for filtering (ISO 8601, e.g., "2025-01-01"). |
date_end | string | no | End date for filtering (ISO 8601, e.g., "2025-12-31"). |
page | integer | no | Page number for pagination (default: 1). |
per_page | integer | no | Number of invoices per page (default: 25, max: 200). |
sort_column | string | no | Column to sort by: date, total, balance, created_time. |
sort_order | string | no | Sort direction: ascending or descending. |
zoho-invoice.zohoinvoice_get_invoice 1 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_get_invoice --json | Parameter | Type | Required | Description |
|---|---|---|---|
invoice_id | string | yes | The unique ID of the invoice. |
zoho-invoice.zohoinvoice_create_invoice 8 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_create_invoice --json | Parameter | Type | Required | Description |
|---|---|---|---|
customer_id | string | yes | The contact ID of the customer to invoice. |
line_items | array | yes | Array of line items. Each item should have "item_id" or "name" and "rate" and "quantity". |
invoice_number | string | no | Custom invoice number (auto-generated if omitted). |
date | string | no | Invoice date (ISO 8601, e.g., "2025-01-15"). Defaults to today. |
due_date | string | no | Payment due date (ISO 8601, e.g., "2025-02-15"). |
notes | string | no | Notes to display on the invoice. |
terms | string | no | Terms and conditions for the invoice. |
reference_number | string | no | Reference number for internal tracking. |
zoho-invoice.zohoinvoice_list_contacts 5 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_list_contacts --json | Parameter | Type | Required | Description |
|---|---|---|---|
type | string | no | Filter by contact type. |
status | string | no | Filter by status: active, inactive, draft, or archived. |
page | integer | no | Page number for pagination (default: 1). |
per_page | integer | no | Number of contacts per page (default: 25, max: 200). |
search_text | string | no | Search contacts by name or email. |
zoho-invoice.zohoinvoice_list_items 5 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_list_items --json | Parameter | Type | Required | Description |
|---|---|---|---|
type | string | no | Filter by item type. |
status | string | no | Filter by status: active or inactive. |
page | integer | no | Page number for pagination (default: 1). |
per_page | integer | no | Number of items per page (default: 25, max: 200). |
search_text | string | no | Search items by name or description. |
zoho-invoice.zohoinvoice_list_payments 6 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_list_payments --json | Parameter | Type | Required | Description |
|---|---|---|---|
customer_id | string | no | Filter payments for a specific customer by their contact ID. |
date_start | string | no | Start date for filtering (ISO 8601, e.g., "2025-01-01"). |
date_end | string | no | End date for filtering (ISO 8601, e.g., "2025-12-31"). |
payment_mode | string | no | Filter by payment mode: cash, check, bank_transfer, credit_card, etc. |
page | integer | no | Page number for pagination (default: 1). |
per_page | integer | no | Number of payments per page (default: 25, max: 200). |
zoho-invoice.zohoinvoice_get_current_user 0 parameters
kosmo integrations:schema zoho-invoice.zohoinvoice_get_current_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.