Actions62
- Contact Actions
- Deal Actions
- Account Actions
- Invoice Actions
- Lead Actions
- Product Actions
- Sales Order Actions
- Tags Actions
- Purchase Order Actions
- Quote Actions
- Vendor Actions
Overview
This node allows you to create or update (upsert) invoices in Zoho CRM. When provided with a subject (title) and product details, it will check if an invoice with the given subject already exists:
- If it exists, the invoice is updated.
- If it does not exist, a new invoice is created.
This operation is useful for automating invoicing workflows where you want to ensure that duplicate invoices are not created, and existing ones are kept up-to-date.
Example scenarios:
- Automatically generating or updating invoices when a sale is made in your e-commerce system.
- Keeping your Zoho CRM invoices synchronized with another system (e.g., ERP, accounting software).
Properties
| Name | Type | Meaning |
|---|---|---|
| Subject | string | Subject or title of the invoice. Used to identify the invoice for creation or update. |
| Products | collection | List of products included in the invoice. Each product includes fields like price, quantity, description, etc. |
| Additional Fields | collection | Optional extra fields to further define the invoice, such as account, addresses, currency, custom fields, totals, status, etc. |
Details for "Products" collection:
| Name | Type | Meaning |
|---|---|---|
| List Price | number | The list price of the product. |
| Product Name or ID | options | Select from available products or specify an ID. |
| Product Description | string | Description of the product. |
| Quantity | number | Number of units for this product. |
| Quantity in Stock | number | Current stock level for the product. |
| Tax | number | Tax amount for this product. |
| Total | number | Total price for this product line. |
| Total After Discount | number | Total after applying any discounts. |
| Total (Net) | number | Net total for this product. |
| Unit Price | number | Price per unit. |
Details for "Additional Fields" collection (selected):
| Name | Type | Meaning |
|---|---|---|
| Account Name or ID | options | Link the invoice to an account in Zoho CRM. |
| Adjustment | number | Any adjustment to the grand total. |
| Billing Address | fixedCollection | Structured billing address fields (street, city, state, country, zip). |
| Currency | options | Currency symbol for the invoice (e.g., USD, EUR, INR, etc.). |
| Custom Fields | fixedCollection | Set values for custom fields defined in your Zoho CRM Invoice module. |
| Description | string | General description for the invoice. |
| Due Date | dateTime | When payment is due. |
| Exchange Rate | number | Exchange rate if using a non-default currency. |
| Grand Total | number | Final total after taxes and discounts. |
| Invoice Date | dateTime | Date the invoice was issued. |
| Invoice Number | string | Reference number for the invoice. |
| Sales Commission | number | Salesperson's commission percentage. |
| Shipping Address | fixedCollection | Structured shipping address fields. |
| Status | string | Status of the invoice (e.g., Paid, Unpaid). |
| Sub Total | number | Total before tax. |
| Tax | number | Total tax amount. |
| Terms and Conditions | string | Any terms and conditions associated with the invoice. |
Output
The node returns a json object containing the details of the created or updated invoice as returned by the Zoho CRM API.
- The structure of the output matches the Zoho CRM Invoice record, including all standard and custom fields populated during the operation.
- Example output fields may include:
id,Subject,Product_Details,Account_Name,Grand_Total,Status, and any custom fields set.
Sample output structure:
{
"id": "1234567890",
"Subject": "Invoice #1001",
"Product_Details": [
{
"product": "Widget A",
"quantity": 2,
"unit_price": 50
}
],
"Account_Name": {
"id": "0987654321",
"name": "Acme Corp"
},
"Grand_Total": 100,
"Status": "Sent",
"...": "..."
}
Note: The actual fields depend on your Zoho CRM configuration and the data you provide.
Dependencies
- Zoho CRM Account: You must have access to a Zoho CRM account with permission to create and update invoices.
- n8n Credentials: The node requires a credential named
zohoOAuth2Api(OAuth2 authentication for Zoho CRM). - API Access: Ensure your Zoho CRM API access is enabled and the OAuth app has the necessary scopes for invoices.
Troubleshooting
Common Issues:
- Missing Required Fields: If "Subject" or "Products" are missing, the node will throw an error.
- Invalid Product IDs: If a product ID does not exist in Zoho CRM, the request will fail.
- Authentication Errors: Invalid or expired OAuth tokens will result in authentication errors.
- Field Mismatches: Custom fields must match those configured in your Zoho CRM instance.
Error Messages & Resolutions:
"Missing required field: Subject": Ensure you provide a value for the Subject property."No products specified": At least one product must be added to the invoice."Invalid credentials": Check your Zoho OAuth2 credentials in n8n."Field does not exist": Double-check custom field names/IDs against your Zoho CRM setup.