Zoho CRM Custom icon

Zoho CRM Custom

Consume Zoho CRM API

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.

Links and References

Discussion