n8n-nodes-zoho-inventory
v1.0.0
Published
A comprehensive n8n community node for Zoho Inventory providing 12 resources and 100+ operations for inventory management, sales orders, purchase orders, invoicing, warehousing, and shipment tracking.
Maintainers
Readme
n8n-nodes-zoho-inventory
[Velocity BPA Licensing Notice]
This n8n node is licensed under the Business Source License 1.1 (BSL 1.1).
Use of this node by for-profit organizations in production environments requires a commercial license from Velocity BPA.
For licensing information, visit https://velobpa.com/licensing or contact [email protected].
A comprehensive n8n community node for Zoho Inventory, providing inventory management, order processing, and warehouse operations automation within n8n workflows.
Features
- 12 Resource Categories - Complete coverage of Zoho Inventory functionality
- 100+ Operations - Comprehensive CRUD and action operations
- Multi-Region Support - US, EU, IN, AU, and CA data centers
- OAuth 2.0 Authentication - Secure authentication with automatic token refresh
- Pagination Support - Efficient handling of large datasets
- Trigger Node - Poll-based triggers for real-time automation
Installation
Community Nodes (Recommended)
- Go to Settings > Community Nodes in n8n
- Select Install
- Enter
n8n-nodes-zoho-inventoryand confirm
Manual Installation
npm install n8n-nodes-zoho-inventoryDevelopment Installation
# Clone or extract the package
cd n8n-nodes-zoho-inventory
# Install dependencies
npm install
# Build the project
npm run build
# Create symlink to n8n custom nodes directory
mkdir -p ~/.n8n/custom
ln -s $(pwd) ~/.n8n/custom/n8n-nodes-zoho-inventory
# Restart n8n
n8n startCredentials Setup
Zoho Inventory OAuth2 API
| Field | Description | |-------|-------------| | Client ID | OAuth Client ID from Zoho API Console | | Client Secret | OAuth Client Secret | | Region | Zoho data center region (US, EU, IN, AU, CA) | | Organization ID | Your Zoho Inventory organization ID |
Setting up OAuth in Zoho
- Go to Zoho API Console
- Create a new Server-based Application
- Set the redirect URI to your n8n OAuth callback URL
- Copy the Client ID and Client Secret
- Use scope:
ZohoInventory.fullaccess.all
Resources & Operations
Item (Product)
- Get, Get All, Create, Update, Delete
- Mark Active/Inactive
- Get Inventory, Update Inventory
Sales Order
- Get, Get All, Create, Update, Delete
- Confirm, Void
- Convert to Invoice
- Add/Get Comments
Purchase Order
- Get, Get All, Create, Update, Delete
- Mark as Open, Mark as Billed, Cancel
- Convert to Bill
- Add/Get Comments
Invoice
- Get, Get All, Create, Update, Delete
- Mark as Sent, Mark as Void
- Send Email
- Record Payment, Get Payments
- Apply Credits
Contact (Customer/Vendor)
- Get, Get All, Create, Update, Delete
- Mark Active/Inactive
- Get Statements, Send Statement
- Get/Add Addresses
Package
- Get, Get All, Create, Update, Delete
- Get Shipments
Shipment
- Get, Get All, Create, Update, Delete
- Mark as Delivered
- Get Tracking
Warehouse
- Get, Get All, Create, Update, Delete
- Mark Active/Inactive
- Get Stock
Transfer Order
- Get, Get All, Create, Update, Delete
- Mark as Received
- Get History
Stock Adjustment
- Get, Get All, Create, Delete
Composite Item (Bundle/Kit)
- Get, Get All, Create, Update, Delete
- Get Components
- Bundle, Unbundle
Organization/Settings
- Get Organization, Update Organization
- Get Currencies, Get Taxes, Create Tax
- Get Payment Terms, Get Custom Fields
- Get Preferences
Trigger Node
The Zoho Inventory Trigger node supports polling for the following events:
- Item Created/Updated
- Sales Order Created/Updated
- Purchase Order Created/Updated
- Invoice Created/Updated
- Contact Created/Updated
- Package Created
- Shipment Created
- Stock Adjustment Created
- Transfer Order Created
Usage Examples
Create a Sales Order
// Input data
{
"customerId": "123456789",
"lineItems": [
{
"item_id": "987654321",
"quantity": 5,
"rate": 100
}
],
"reference_number": "PO-2024-001"
}Sync Inventory Levels
// Get all items and their inventory levels
// Then update based on external system data
{
"itemId": "987654321",
"warehouseId": "111222333",
"quantityAvailable": 150
}Zoho Inventory Concepts
Item Types
- Inventory: Tracked items with stock quantities
- Sales: Items for sale only (no stock tracking)
- Purchases: Items for purchase only
- Sales and Purchases: Dual-purpose items
Product Types
- Goods: Physical products
- Service: Non-physical services
Composite Items
Composite items (bundles/kits) are assemblies of multiple component items. You can:
- Bundle: Combine components into a composite item
- Unbundle: Break down a composite into components
Multi-Region Support
Zoho Inventory operates from multiple data centers:
| Region | API URL | Accounts URL | |--------|---------|--------------| | US | zohoapis.com | accounts.zoho.com | | EU | zohoapis.eu | accounts.zoho.eu | | IN | zohoapis.in | accounts.zoho.in | | AU | zohoapis.com.au | accounts.zoho.com.au | | CA | zohoapis.ca | accounts.zohocloud.ca |
Error Handling
The node handles common Zoho API errors:
| Code | Description | |------|-------------| | 0 | Success | | 1 | Internal error | | 2 | Bad request | | 14 | Invalid value | | 36 | Resource not found | | 44 | Rate limit exceeded | | 57 | Authentication failed |
Rate Limiting
Zoho Inventory API has the following limits:
- 100 requests per minute per organization
- Concurrent request limits vary by plan
The node automatically handles pagination for large datasets.
Security Best Practices
- Use environment variables for credentials
- Limit OAuth scopes to required permissions
- Rotate credentials periodically
- Monitor API usage for anomalies
- Enable MFA on your Zoho account
Development
# Install dependencies
npm install
# Build
npm run build
# Watch mode
npm run dev
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Lint
npm run lint
# Fix lint issues
npm run lint:fixAuthor
Velocity BPA
- Website: velobpa.com
- GitHub: Velocity-BPA
Licensing
This n8n community node is licensed under the Business Source License 1.1.
Free Use
Permitted for personal, educational, research, and internal business use.
Commercial Use
Use of this node within any SaaS, PaaS, hosted platform, managed service, or paid automation offering requires a commercial license.
For licensing inquiries: [email protected]
See LICENSE, COMMERCIAL_LICENSE.md, and LICENSING_FAQ.md for details.
Contributing
Contributions are welcome! Please read our contributing guidelines and submit pull requests to our GitHub repository.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new functionality
- Submit a pull request
Support
- GitHub Issues: Report bugs and request features
- Documentation: Zoho Inventory API Documentation
- n8n Community: n8n Community Forum
