Getting WordPress form data into Zoho CRM shouldn’t require custom API work or settling for Zoho Forms’ limitations. The Ninja Forms Zoho CRM add-on connects your WordPress forms directly to your CRM, no code required, so every lead and contact captured on your site lands exactly where your sales team needs it.
Whether you’re replacing a manual entry process or looking for a more capable form builder than Zoho Forms, this is the WordPress-native Zoho CRM integration built for the way your team actually works.
With the Zoho CRM add-on, you can:
Key Features of the Zoho CRM Add-On
Six Zoho CRM modules supported
The add-on supports all six of the core Zoho CRM modules your team works in every day: Contacts, Leads, Accounts, Potentials (Deals), Notes, and Tasks. One form submission can create records across multiple modules simultaneously, so you never have to choose which part of your pipeline gets the data.
Zoho users navigate by module, not by generic “records,” and the add-on is built to match that mental model. Map your contact form to Contacts, your demo request form to Leads, your project intake form to Potentials. Each module maps independently with its own field configuration.

Auto-linking of related records
When a single form submission creates multiple records, the add-on automatically links them together in Zoho CRM. Create a Contact and Ninja Forms connects it to the Account, Potential, Task, and Note from the same submission. Create a Lead and it links to its associated Note and Task.
This is a meaningful workflow accelerator. Users of native Zoho Forms don’t get this automatic cross-record linking from a single web form submission. Your sales reps open a new Contact and find a complete picture: the deal, the task, the note, all already connected.

Visual field mapper
A dedicated “Add to Zoho CRM” action in the Ninja Forms builder gives you a full-screen field mapper UI. Drag form fields to their matching Zoho CRM fields, or set constant values for fields that should always carry the same data, like setting Lead Source to “Web Form” on every submission.
There’s no code involved. Map any form field to any Zoho field, standard or custom, directly inside the form builder. If you want to see exactly which fields are available for a given module, a built-in command lists them without leaving WordPress.

Custom field support
If your Zoho CRM instance uses custom fields, you can map to those too. The add-on supports all the field types you’re likely using: picklists, date fields, boolean fields, and multi-select fields. Each type handles formatting automatically so values land in Zoho the way the CRM expects them.
Date fields accept standard date formats or relative intervals like “2 days” or “3 weeks” from submission. Boolean fields get proper true/false values. Picklist values match your predefined options exactly. Your custom data model doesn’t require any workarounds.

Workflow rule triggering
Form submissions automatically trigger your Zoho CRM workflow rules and approval processes. With Zoho’s current API, workflow triggers are activated by default, so there’s nothing extra to configure on the Zoho side. If your sales process includes approval requirements before a record advances, you can configure those per form.
This means your existing Zoho automation keeps running. Lead assignment rules, follow-up task creation, email notifications to sales reps: all of it fires when a form is submitted, just as it would from any other lead source.

Multi-region support
Zoho CRM operates regional data centers, and the add-on supports all of them. EU, Australian, Chinese, and Indian Zoho accounts connect using their respective regional endpoints with a simple configuration command. You don’t need a workaround or a separate integration to use this add-on if your organization’s Zoho instance isn’t on the US endpoint.

OAuth 2.0 authentication
The add-on connects to Zoho CRM using OAuth 2.0, the modern standard for API authentication. You create a Self Client application in Zoho’s Developer Console, generate your credentials there, and enter them in WordPress. No legacy API keys, no third-party token services, no key rotation on a schedule.
OAuth 2.0 also means you’re not sharing your Zoho account password with any integration layer. The connection is scoped, revocable, and managed entirely between your WordPress site and Zoho’s own authorization infrastructure.

Stop Copying Form Data into Zoho CRM by Hand
TThe Zoho CRM add-on is available as a standalone purchase or included with the Ninja Forms Pro and Elite memberships. Choose your plan and start sending WordPress form submissions directly into your CRM.
Priority email support and 14-day money-back guarantee included.
A Better Way to Capture Leads from WordPress if You’re Already on Zoho CRM
If your team is already using Zoho CRM and you’ve been using Zoho Forms to capture web leads, Ninja Forms gives you a more capable option on the WordPress side without changing anything in your CRM.
Here’s where Ninja Forms gives you more than Zoho Forms for WordPress-based lead capture:
- Conditional logic: Show or hide form fields based on what a user selects. Build multi-path forms that adapt in real time, something Zoho Forms doesn’t offer at the same level of control inside WordPress.
- File uploads: Accept uploaded documents, images, or files directly in your WordPress forms and store them in your media library or a connected service.
- Visual form builder: Design forms that match your site’s look and feel. Full control over layout, styling, and field arrangement, integrated with your WordPress theme.
- Unlimited email notifications: Send confirmation emails to users, route notifications to multiple team members, and customize every message.
- Custom success messages and redirects: Control exactly what happens after a form submits, from a thank-you message to a redirect to a confirmation page.
- All Zoho CRM modules: Push data into Contacts, Leads, Accounts, Potentials, Notes, and Tasks, the same modules your Zoho Forms submissions reach, with the same auto-linking behavior.
You keep the Zoho CRM workflow you’ve built. You get a form builder designed for WordPress.
How to Integrate Zoho CRM with WordPress Using Ninja Forms
Setup takes a few minutes and doesn’t require a developer. Here’s how the connection works:
- Install and activate the Ninja Forms Zoho CRM add-on from your account dashboard.
- Create a Self Client app in Zoho’s Developer Console to generate your Client ID, Client Secret, and Authorization Code.
- Enter your credentials in the Ninja Forms Zoho CRM settings in WordPress.
- Open any form in the Ninja Forms builder and add the “Add to Zoho CRM” action.
- Select your module (Contacts, Leads, Accounts, Potentials, Notes, or Tasks) and use the visual field mapper to connect your form fields to CRM fields.
- Publish your form. Submissions go directly into Zoho CRM from that point forward.
If your organization uses an EU, Australian, Chinese, or Indian Zoho endpoint, add the appropriate regional command during setup. Everything else works the same way regardless of region.
Common Use Cases
- Replace your Zoho Forms web-to-lead setup: Use Ninja Forms on your WordPress site to capture leads with more control over layout and logic, while still pushing data into the same Zoho CRM Lead and Contact modules. Start with a pre-built contact form template or build your own.
- Automate sales pipeline entry: Map a product inquiry form to the Potentials module. Every submission creates a Deal in your pipeline with the stage, amount, and source already populated, no manual entry for your sales team.
- Capture event or webinar registrations as Leads: Route event sign-up form data to the Leads module and trigger Zoho assignment rules so the right rep gets notified immediately.
- Add notes and tasks automatically at inquiry: When a prospect submits a form, create a Note with the message content and a Task for the assigned rep, linked to the Contact or Lead record, all from one submission.
- Sync account information updates: Let existing customers submit update forms that write directly to the Accounts module, keeping company records current without manual CRM edits.
- International lead capture with regional compliance: Organizations operating in the EU, Australia, China, or India can capture leads into their region-specific Zoho data center without routing data through US endpoints.
Your WordPress Forms, Your Zoho CRM, Connected
The Zoho CRM add-on is available as a standalone purchase or included with the Ninja Forms Pro and Elite memberships. Pick your plan and put your lead capture on autopilot.
Priority email support and 14-day money-back guarantee included.
How do I integrate Zoho CRM with WordPress?
Install the Ninja Forms Zoho CRM add-on, then create a Self Client application in Zoho’s Developer Console to get your OAuth 2.0 credentials. Enter those credentials in the Ninja Forms settings, open any form in the builder, add the “Add to Zoho CRM” action, select your module, and map your form fields to CRM fields using the visual field mapper. No code required. Submissions push to Zoho CRM immediately after you publish the form.
Which Zoho CRM modules does Ninja Forms support?
The add-on supports six Zoho CRM modules: Contacts, Leads, Accounts, Potentials (Deals), Notes, and Tasks. A single form submission can create records in multiple modules at once, and related records are automatically linked in Zoho CRM. For example, a new Contact is automatically connected to its Account, Potential, Task, and Note from the same submission.
Is there a Zoho Forms alternative for WordPress?
Yes. If you’re already using Zoho CRM and have been using Zoho Forms for web-to-lead capture, Ninja Forms is a more capable WordPress-native alternative. You get conditional logic, file uploads, a visual drag-and-drop form builder, unlimited email notifications, and full control over styling, while still pushing data into the same Zoho CRM modules your team already works in. Your Zoho CRM setup doesn’t change; you just get a better form builder on the WordPress side.
Does Ninja Forms support custom fields in Zoho CRM?
Yes. The add-on supports all custom fields you’ve created in Zoho CRM, including picklists, date fields, boolean fields, and multi-select fields. Each field type is handled with automatic formatting so values arrive in Zoho the way the CRM expects them. You map custom fields the same way as standard fields, directly in the visual field mapper without code.
Does Ninja Forms work with Zoho CRM for EU or international accounts?
Yes. EU, Australian, Chinese, and Indian Zoho accounts are all supported. Each regional data center has a corresponding endpoint command you enter in the add-on’s Advanced Commands field during setup. The form builder, field mapping, and module support all work identically regardless of which regional endpoint your organization uses.
Does the Zoho CRM add-on trigger Zoho workflow rules?
Yes. Form submissions automatically trigger your existing Zoho CRM workflow rules and approval processes. With Zoho’s current API, workflow triggers are active by default, so there’s nothing extra to configure on the Zoho side. If your process includes approval requirements, those can be configured per form in the action settings.
How does Ninja Forms connect to Zoho CRM securely?
The add-on uses OAuth 2.0 authentication. You create a Self Client app in Zoho’s Developer Console and use the generated Client ID, Client Secret, and Authorization Code to connect. There are no legacy API keys and no third-party token services involved. The connection is scoped and revocable from your Zoho account at any time.
Changelog
3.5.2 (19 May 2025)
Bug Fixes
- Fixes issue with plugin assets
3.5.1 (17 February 2025)
Bug Fixes
- Resolve new translation timing
3.5.0 (13 December 2021)
Features
- Add tag field mapping
- Add Australia, China, and India endpoints
- Add Case module Field Map Lookup
- Add unescape_backslash Advanced Command to remove backslashes, enabling new line in merge tags
- Add Lead Layout field mapping
Bug Fixes
- Add structured response to action $data[\’extra\’] for downstream actions
- Modify Lead Owner mapping to nested Id structure
- Prevent display error when attempting unauthorized request
- Prevent display error when custom field is not set
3.4
2019.01.23
Add Sales Orders and Quotes modules
– requires API v2 and also Zoho CRM premium subscription
Add Potentials custom field map
3.3.3
2018.09.20
Add linking for Notes using new API structure
Update Potential Name to API v2 name Deal_Name – was Potential_Name
3.3.2
Change Title to Designation – Zoho changed the field name in API v2
3.3.1
Correct Zip Code to Zip_Code – Zoho changed the field name in their v2
3.3.0
Display field list functionality – Helps form designers pick the exact field
name for any non-standard field. Advanced commmand is:
display_fields_MODULE where MODULE is replaced by the name of the module
Add custom validation functionality. Enables form designer to specify which
validation functions to call on any entry in the option repeater
{multipicklist} - structures multi-select field for Zoho multi-picklist
{replace_underscores} - replace underscores with spaces
{remove_nonnumeric} - ensures value comes in as a number
{force_boolean} - converts value to true/false
{convert_date_interval} - converts value to a date interval from submission date
{format_date} - formats value to a Zoho date format
Add custom format options for fields. Force boolean, force integer, format date
are all newly available for any value being mapped to Zoho.
3.2.1
Correct key name for API v1 authtoken
3.2.0
Add EU domain extension for EU accounts. Changed from v1
3.2.0-RC
Use Zoho\’s API v2; v1 is being phased out
Add multiple entries for each module using advanced command
example: Lead_XX adds XX number of leads
Remove undesired modules from field map list for easier map building
example: Lead_0 removes the lead module from the dropdown
Add Email Opt Out field map for Lead and Contact
3.1.0
2017.07.09
Add EU endpoint with filter and advanced command
3.0.2
2017.04.15
Remove html tags appearing in text areas; option to keep tags with
advanced command and filter
Add quick authtoken test link on settings page
3.0.1
Change name and slug constants for auto updates
Add Lead Description to available field maps
3.0
2017.01.19
Add upgrade from 2.9 function
2017.01.07
Return $data in Action process
2017.01.07
3.0-compatible ready for testing
1.8.0
2016.06.28
Add custom field capability for Accounts (standard fields and text area)
Enable text area custom fields for Contacts
= 1.7.1=
2015.09.16
Change field map value for Contact \”Mailing\” and \”Other\” Zip Code
1.7
2015.04.22
Add custom field mapping for Contact Module
1.6.1
2014.11.20
Add mapping capability to more NF fields
Change custom field preg_replace to esc_html
– allows for special characters in custom fields
1.5.1
Escape attributes for form submission data; prevents error when certain characters are included
1.5
2014.08.06
New Features:
Add modules for Accounts, Contacts, Potentials, Tasks, and Notes
Add parameters for Approvals and Workflow Triggers
Tweaks:
Convert to JSON for response handling and OOP for communication
1.4.1
2014.06.24 Escape attributes for pick list options to prevent comm failure when selections include special characters
1.4
2014.06.03 Add raw communication data to settings page to enable faster customer support
1.3.4
2014.05.19 Modify zoho crm scope to remove key from value
1.3.3
Update tags
1.3.2
Custom mapped field to allow dash
1.3.1
Use User Analytics\’ field grabbing function created by Patrick Rauland instead of custom function originally used
1.3
Add Custom Field Mapping
–data-processing.php
Add Custom Field Mapping option
Modify Annual Revenue validation to remove all non-numeric and conver to integer
Remove function that turns on error log writing
–field-registration.php
modify field mapping function to make it extendable by other plugins with custom fields
add custom mapping field
1.2
Initial communication with User Analytics
Add User Analytics fields \’country\’ \’region\’ \’postal_code\’ \’city\’ as
mappable fields
In field-registration.php, change mapped field values for dividers from \”none\” to \”divider\” and
add code to reset to \”none\” before processing. The resetting prevents
unwanted fields from being mapped.
In data-processing.php, add secondary check during mapping to ensure divider
fields don\’t get mapped
1.1
Modify log data status and debug information based on recent learning from Elicere support ticket
Add preg_replace code for Annual Revenue field to prevent comm failure – Zoho requires integer for Annual Revenue
Format documentation with html headers
Modify instructions for end user documentation
1.0
Changed the name of the plugin to fit in with the Ninja Forms standard: Ninja Forms – Zoho CRM.
Fixed the version number constant.
Changed the licensing option call to the correct format.
Add text-domain for all translations (ninja-forms-zoho-crm)
Add gettext function around \’Map this field to your Zoho CRM\’ – missing it prior
Remove .nff file from plugin – to be uploaded to NF site after approval
Remove authtoken test value from remarks
Add default .po and .mo to initiate translations

