# Zoho Invoice MCP MCP

> Zoho Invoice MCP lets your agent manage every part of your billing cycle. Create professional invoices, check client payment histories, and log business expenses using simple conversation commands. It keeps all your financial data—from initial quote to paid invoice—in one place.

## Overview
- **Category:** finance-accounting
- **Price:** Free
- **Tags:** invoicing, payment-tracking, expense-management, client-billing, financial-reporting, payment-reminders

## Description

Managing payments means juggling multiple systems: the CRM for contacts, a separate spreadsheet for expenses, and the actual accounting software for invoicing. This MCP brings that entire process into a single chat interface. You can use natural language to list every outstanding payment or quickly draft an invoice based on client details you already have.

Need to know if a customer has overdrawn their credit? Ask. Need to see what items were billed last quarter and check the corresponding expenses? Just ask. The entire process of tracking money—from initial quote estimates to final paid invoices, all the way down to logging associated vendor costs—is accessible through conversational commands. Because this MCP handles such sensitive financial records, every piece of data passes through a zero-trust proxy on Vinkius, meaning your credentials are only used in transit and never stored on disk. This keeps your billing process secure while giving you full control over cash flow.

## Tools

### check_zoho_invoice_status
Verifies that your connection to Zoho Invoice is working correctly using API metadata.

### create_contact
Adds a new client record, specifying their name and optional details like email or phone number.

### create_invoice
Generates a draft invoice for a specific customer using defined items and rates. The invoice is ready to send but not yet active.

### get_contact
Pulls all current details for one client, including their full history and contact information.

### get_invoice
Retrieves the complete record and status of a single, specific invoice number.

### get_item
Gets full details about a specific product or service item you sell.

### list_contacts
Searches and lists multiple client contacts, showing their outstanding balances and unused credits.

### list_estimates
Retrieves a list of all price quotes sent to clients, filtering by status like 'accepted' or 'declined'.

### list_expenses
Lists tracked business expenses, providing dates, amounts, and the associated customer or project.

### list_invoices
Gets a list of all invoices, filtered by status (e.g., 'overdue' or 'paid'), showing numbers, amounts, and dates.

### list_items
Lists every product or service item that is available for invoicing.

### list_payments
Retrieves a log of all payments received from customers, useful for reconciliation.

## Prompt Examples

**Prompt:** 
```
List all my unpaid invoices and verify the contact details for 'Acme Corp'.
```

**Response:** 
```
I found 3 unpaid invoices, totaling $4,500. For 'Acme Corp', the contact ID is 84029. Their primary email is 'billing@acme.com' and they currently have an outstanding balance of $1,200. Would you like me to send them a payment reminder?
```

**Prompt:** 
```
Create a new invoice for client 'cust_8823' for 'Consulting Services' at $150.00, and include a note thanking them for their business.
```

**Response:** 
```
Success! Invoice #INV-99023 has been created for $150.00 and assigned to client cust_8823. The note 'Thank you for your business' was added. It is currently in 'DRAFT' status. Shall I send it now?
```

**Prompt:** 
```
List all business expenses recorded this month and fetch the full details for the highest one.
```

**Response:** 
```
I retrieved 12 business expenses for this month. The highest expense is $850.00 for 'Software Subscriptions' (Expense ID: 40392). It was billed by 'TechCloud' and is assigned to the 'Internal IT' project.
```

## Capabilities

### Manage Client Records
Create new client contacts or retrieve detailed information, including their current outstanding balance.

### Generate and Send Invoices
Draft brand-new invoices specifying services, rates, and amounts; you can also list existing invoices by status (draft, sent, overdue).

### Track Payments and Balances
Review all payments received over time or check current client balances to monitor cash flow.

### Log Business Expenses
List and track expenses, pulling details like dates, amounts, vendors, and which projects they belong to.

### Query Quotes and Items
Check on price estimates sent out before invoicing or list all standardized products and services you offer.

## Use Cases

### The client needs a quick statement of account.
Instead of logging into the portal, checking billing history, and then opening the contact file, you simply ask your agent to list all unpaid invoices for 'Acme Corp' and check their current outstanding balance. The agent combines this data point immediately.

### I need to process last month's expenses.
You instruct the agent to list all business expenses from June, then ask it to fetch full details for any expense over $500. This saves hours of clicking through receipts and reports.

### A deal was quoted but never invoiced.
You check the `list_estimates` tool first to see if a quote exists, then ask your agent to convert that accepted estimate into an official draft invoice using `create_invoice`.

### The month is closing and I need reconciliation data.
You ask the agent to list all payments received last week (`list_payments`) and cross-reference them against any invoices marked 'void' or 'paid' to confirm accurate books.

## Benefits

- Stop manually checking balances. Use `list_contacts` to instantly see a client's outstanding balance or unused credits before talking to them.
- Keep your cash flow clean by using `list_invoices` to filter only for 'overdue' status invoices, letting you prioritize collection efforts.
- Build drafts fast. You can use `create_invoice`, specifying the customer and line items in a single chat command; it skips manual data entry.
- Track every dollar spent. The `list_expenses` tool aggregates costs by project or customer, making expense reports painless to generate.
- Go beyond simple billing. By combining `get_item` with `create_invoice`, you ensure the service rates and descriptions are always accurate before generating the document.

## How It Works

The bottom line is you get full visibility into your financial records without ever leaving your chat window or switching between apps.

1. Subscribe to this MCP, providing your Zoho Invoice Authtoken or OAuth credentials.
2. Connect your preferred AI client (Claude, Cursor, Windsurf, etc.) to the Vinkius platform.
3. Ask your agent a billing question: 'List all overdue invoices for Acme Corp.' and receive immediate, actionable data.

## Frequently Asked Questions

**Can I use the `create_invoice` tool if I don't have an item listed?**
No. The `create_invoice` function requires a valid customer ID and at least one line item with both a name and a rate. You must first run `list_items` or `get_item` to ensure your products are correctly defined.

**How do I check if an invoice is actually paid?**
Use the `list_invoices` tool and filter by 'paid' status. For deeper certainty, cross-reference those results with `list_payments` to confirm the transaction ID matches.

**What if I need to add a new client?**
You use the `create_contact` tool. You provide the required name and can optionally include company details, which builds the foundation for future billing.

**Does this MCP help with expense reports?**
Yes. The `list_expenses` tool pulls all tracked business costs, giving you a detailed ledger of amounts, vendors, and associated projects to simplify your accounting work.

**How do I verify if my Zoho Invoice connection details are correct?**
Run the `check_zoho_invoice_status` tool. This quickly verifies your API credentials and returns organizational metadata, confirming that the MCP can communicate with your live account.

**How do I view all my clients' current outstanding balances?**
Use `list_contacts`. This function retrieves a list of contacts along with key financial data like their email and current unpaid balance, helping you manage who owes money.

**Can I see quotes that haven't been finalized into invoices?**
Check your drafts using `list_estimates`. This tool pulls all estimates (quotes), letting you filter by status like 'draft' or 'accepted,' giving you visibility into pending revenue.

**If I have an invoice number, how do I retrieve all its details?**
Execute `get_invoice`. This pulls every piece of information for a specific invoice ID, including the full breakdown of line items, dates, and payment status.

**Can I check the status of a specific invoice via AI?**
Yes! Use the `get_invoice` tool and provide the Invoice ID. Your agent will retrieve the real-time status to see if it has been viewed, paid, or is overdue.

**How do I add a new customer to my Zoho Invoice directory?**
Use the `create_customer` action. Provide the company name and contact details. The agent will instantly register the new profile in your account.

**Is it possible to list all unpaid invoices via AI?**
Absolutely. Use the `list_invoices` query. The agent will retrieve all your billing documents, and you can then ask the AI to identify or filter those with an unpaid or overdue status.