KosmoKrator

accounting

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.

7 functions 6 read 1 write Manual OAuth token auth

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 use the same stored profile from scripts, coding CLIs, Lua code mode, and the MCP gateway.

KeyEnv varTypeRequiredLabel
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

Call Zoho Invoice Headlessly

Use the generic call form when another coding CLI or script needs a stable universal interface.

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

Use the provider shortcut form for shorter human-facing commands.

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

Agent Discovery Commands

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

All CLI Functions

Every function below can be called headlessly. The generic form is stable across all integrations; the provider shortcut is shorter but specific to Zoho Invoice.

zoho_invoice.zohoinvoice_list_invoices

Read read

List invoices from Zoho Invoice. Supports filtering by status (draft, sent, overdue, paid, void, partially_paid), customer, and date range.

Parameters
status, customer_id, date_start, date_end, page, per_page, sort_column, sort_order

Generic CLI call

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

Provider shortcut

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

Read read

Get full details of a single invoice by its ID, including line items, totals, payments, and notes.

Parameters
invoice_id

Generic CLI call

kosmo integrations:call zoho_invoice.zohoinvoice_get_invoice '{"invoice_id":"example_invoice_id"}' --json

Provider shortcut

kosmo integrations:zoho_invoice zohoinvoice_get_invoice '{"invoice_id":"example_invoice_id"}' --json

zoho_invoice.zohoinvoice_create_invoice

Write write

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.

Parameters
customer_id, line_items, invoice_number, date, due_date, notes, terms, reference_number

Generic CLI call

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

Provider shortcut

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

Read read

List contacts (customers and vendors) from Zoho Invoice. Supports filtering by type (customer or vendor) and pagination.

Parameters
type, status, page, per_page, search_text

Generic CLI call

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

Provider shortcut

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

Read read

List items (products and services) from Zoho Invoice. Use item IDs when creating invoices with line items.

Parameters
type, status, page, per_page, search_text

Generic CLI call

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

Provider shortcut

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

Read read

List payments received in Zoho Invoice. Supports filtering by customer, date range, and payment mode.

Parameters
customer_id, date_start, date_end, payment_mode, page, per_page

Generic CLI call

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

Provider shortcut

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

Read read

Get the authenticated user's profile from Zoho Invoice, including name, email, and role.

Parameters
none

Generic CLI call

kosmo integrations:call zoho_invoice.zohoinvoice_get_current_user '{}' --json

Provider shortcut

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

List invoices from Zoho Invoice. Supports filtering by status (draft, sent, overdue, paid, void, partially_paid), customer, and date range.

Operation
Read read
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_list_invoices --json
ParameterTypeRequiredDescription
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

Get full details of a single invoice by its ID, including line items, totals, payments, and notes.

Operation
Read read
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_get_invoice --json
ParameterTypeRequiredDescription
invoice_id string yes The unique ID of the invoice.

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.

Operation
Write write
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_create_invoice --json
ParameterTypeRequiredDescription
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

List contacts (customers and vendors) from Zoho Invoice. Supports filtering by type (customer or vendor) and pagination.

Operation
Read read
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_list_contacts --json
ParameterTypeRequiredDescription
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

List items (products and services) from Zoho Invoice. Use item IDs when creating invoices with line items.

Operation
Read read
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_list_items --json
ParameterTypeRequiredDescription
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

List payments received in Zoho Invoice. Supports filtering by customer, date range, and payment mode.

Operation
Read read
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_list_payments --json
ParameterTypeRequiredDescription
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

Get the authenticated user's profile from Zoho Invoice, including name, email, and role.

Operation
Read read
Schema command
kosmo integrations:schema zoho_invoice.zohoinvoice_get_current_user --json
ParameterTypeRequiredDescription
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.