Summary
iPaaS.com Customers can be transferred out to Zoho CRM as Contacts, one record per transfer, either automatically on a Customer create or update or on demand from the Manual Sync page. Each Customer becomes one Zoho CRM contact, carrying the person's name, email, description, a single mailing address flattened onto the contact, and any custom fields the subscriber has configured. Custom field mapping is where most subscriber-specific configuration for this integration lives.
ID Format
Manual Sync ID Format
To transfer a single Customer on demand, enter the iPaaS.com Customer ID on the Manual Sync page — the numeric identifier of the Customer record in iPaaS.com, for example 1234. The integration retrieves that Customer, along with its address list, and writes it to Zoho CRM.
External ID Format
After a successful transfer, iPaaS.com saves the Zoho CRM contact id — a long numeric value in the shape Zoho CRM uses for all record ids — on a dedicated external-ID record. That record routes a repeat transfer to an update of the existing contact rather than creating a duplicate, and it is the only link between the two systems: this collection does not search Zoho CRM for a matching contact before creating one. If the external-ID record is missing or has been cleared, the next transfer creates a second Zoho CRM contact rather than re-linking.
Deleted Record Support
Deletion is not propagated. Deleting a Customer in iPaaS.com does not delete or deactivate the corresponding Zoho CRM contact; the contact remains until it is removed in Zoho CRM directly.
Custom Field Support
Custom fields are supported on this collection and are used heavily by the shipped mappings. Before a custom field can be transferred, it must already exist in Zoho CRM: go to Settings → Customization → Modules and Fields → Contacts → Fields and create the field. The matching custom field must then be configured on the iPaaS.com subscription using exactly the Zoho CRM field label or API name — the integration matches on either, and API names differ from labels in that spaces and special characters are removed (a label of CF Multi-Select 2 becomes the API name CF_Multi_Select_2). The integration resolves each mapped custom field name against the live Zoho CRM Contacts field list on every transfer, so a field renamed in Zoho CRM is picked up without changing the iPaaS.com mapping, provided the new name is the one configured in iPaaS.com.
The Raise Custom Field Not Found Exception subscription setting controls what happens when a mapped custom field cannot be matched in Zoho CRM. When it is set to True, the transfer stops with a message naming the field that could not be found, which makes typos and permission problems obvious. When it is set to False, the value is sent anyway and Zoho CRM has been observed to accept the request and ignore the unrecognised field, so the mapping fails silently. Subscribers or their MiSP who are still configuring the integration are advised to set it to True.
The seven custom field mappings shipped on this collection are a worked example of each supported Zoho CRM custom field data type — Single Line, Number, Date, Email, Picklist, Multi Select and Lookup. They are configured with demonstration values against fields that will not exist in a subscriber's Zoho CRM organization, so each must be repointed or removed before go-live; the mapping notes flag every one. Their per-type behaviour is documented in the Field Mapping Table below.
Mapping Collection Status
Status: Enabled. This collection has no mapping filter, so every Customer sent to it is processed.
Trigger Events: Created and Updated. Automatic transfers do not activate by default — subscribers or their MiSP subscribe to the customer/created and customer/updated triggers under Outbound Data Flows in the subscription configuration. Until those are enabled, no automatic transfers occur.
Duplicate or Conflicting Mappings
Conflicting collection
The collection Add/Update Zoho CRM Contact TO iPaaS.com operates on the same entity in the opposite direction, bringing Zoho CRM contacts into iPaaS.com. Running both directions carries an overwrite risk: each system can change the same person, and a transfer in one direction can overwrite an edit made in the other. Decide which system is the source of truth, align the two collections' mappings field by field, and pay particular attention to two things — the address fields (this direction flattens one address onto the contact while the inbound direction reads addresses back as separate records, an asymmetric mapping), and the custom fields (several here carry fixed example values that would be written over live data on every transfer).
Collision handling is not configurable on this collection.
Supported Child Collections
None. Addresses are not transferred as a child collection in this direction — they are flattened onto the contact by the Mailing_ field mappings.
System Caveats
Zoho CRM Caveats
Last name is enforced by Zoho CRM, not by iPaaS.com: a contact with no last name is rejected at the Zoho CRM end, so the failure appears in the error log rather than being caught before the call.
Call credits are consumed per transfer: Zoho CRM meters API usage against a rolling 24-hour credit allowance that varies by edition, and caps how many calls an application may have in flight at once. When the allowance or the concurrency cap is reached, Zoho CRM rejects the call, and the transfer is not retried or rescheduled — it fails and is recorded under Dashboard / Integration Monitoring / Error Logs. Stagger bulk contact loads rather than running them in one burst.
Lookup and user fields need Zoho CRM record ids: where a custom field points at another Zoho CRM record or a user, supplying a friendly name instead of that record's Zoho CRM id has been observed to fail. Confirm the behaviour in staging.
Boolean values need a boolean custom field: a Zoho CRM checkbox field expects true or false, and a text value has been observed to produce a data-type error rather than being converted. Define the matching iPaaS.com custom field as boolean.
Picklist and Multi Select values are not added to the option list: a value that is not one of a field's predefined options is saved against the individual record but not added to the field's option list for other records. Add permanent options in the Zoho CRM field definition.
iPaaS.com Caveats
The Customer must exist in iPaaS.com first: this collection writes outward only. A contact created directly in Zoho CRM is brought into iPaaS.com by the opposite collection, not this one.
Custom fields must be configured on the subscription: a Zoho CRM custom field with no matching iPaaS.com subscription custom field is never populated, regardless of the exception setting.
Only the first address is used: the address flattening reads the customer's iPaaS.com address list in its stored order — see the Address Selection note under Mappings, and Additional Notes.
Setup Requirements
In Zoho CRM, confirm the connected user can read and write the Contacts module.
Create any Zoho CRM contact custom fields to be populated, under Settings → Customization → Modules and Fields → Contacts → Fields, then create the matching custom fields on the iPaaS.com subscription using the Zoho CRM field label or API name exactly, each with the data type Zoho CRM expects.
Review every custom field mapping flagged with a placeholder callout in the mapping notes and replace the example values before go-live.
To enable automatic transfers, subscribe to the customer/created and customer/updated triggers under Outbound Data Flows in the subscription configuration.
Authentication is handled by the integration's Zoho CRM connection; see the Zoho CRM Connections and Settings article.
Integration Flow
When a Customer transfer is started from iPaaS.com, the integration:
Resolves any mapped custom fields. It retrieves the Contacts module's field definitions from Zoho CRM and matches each iPaaS.com custom field to a Zoho CRM field by field label or API name. Matched fields are written on the contact; unmatched fields are handled per the Raise Custom Field Not Found Exception setting.
Flattens the address. The mailing address fields are resolved from the customer's iPaaS.com address list by the mapped formulas and written as ordinary fields on the contact. Zoho CRM contacts hold one mailing address, so only one iPaaS.com address can be represented.
Creates or updates the contact. If the Customer is not yet linked to a Zoho CRM contact, a new contact is created; if it is already linked, the existing contact is updated in place. Only mapped fields are sent, so any unmapped Zoho CRM field keeps its current value.
Reads the contact back and records the link. After a create or an update, the integration retrieves the contact from Zoho CRM, and iPaaS.com records the Zoho CRM contact id as the external-id link for subsequent transfers.
Mappings
Add/Update Zoho CRM Contact FROM iPaaS.com
iPaaS.com data type: Customer
Description: Writes an iPaaS.com Customer to Zoho CRM as a contact. This collection has no mapping filter — every Customer sent to it is processed. The field table below groups the mappings as the core contact fields, the flattened mailing address, the approval flag, and the seven custom field type examples.
Address Selection. Each Mailing_ field is populated by a formula that reads one value out of the customer's address list. The value comes from the first address stored on the customer, not from the billing address — the flag intended to select the billing address has no effect in the current build. For a customer with a single address this is correct; for a customer with several, the first one wins. To control which address reaches Zoho CRM, either order the addresses in iPaaS.com so the intended one is stored first, or replace the formulas with logic that selects on the billing flag explicitly (the Add/Update Zoho CRM Sales Order FROM iPaaS.com collection does this and can be used as a reference). Confirm the result in staging for any customer with more than one address.
Mapping Type | Source Field (iPaaS.com) | Destination Field (Zoho CRM) | Description |
Field | LastName | Last_Name | Required. Zoho CRM rejects a contact without a last name. |
Field | FirstName | First_Name | Recommended. For a complete contact record. |
Field | EmailAddress | Recommended. The standard email field; the value Zoho CRM users most often search on. | |
Field | Comment | Description | Optional. The customer's description text. |
Dynamic Formula |
| Mailing_Street | Optional. The street of the customer's first address (see Address Selection). |
Dynamic Formula |
| Mailing_City | Optional. The city of the customer's first address. |
Dynamic Formula |
| Mailing_State | Optional. The state/region of the customer's first address. |
Dynamic Formula |
| Mailing_Zip | Optional. The postal code of the customer's first address. |
Dynamic Formula |
| Mailing_Country | Optional. The country of the customer's first address. |
Static |
| approved | Optional. An approval flag transmitted on every write. Adjust if the Zoho CRM organization uses this field for a different purpose. |
Field | Age (custom field) | Age | Example — custom field data type: Number. Zoho CRM sets a field's maximum digits at creation. Integer fields reject decimals; decimal fields keep extra places within the length limit. Repoint or remove before go-live. |
Field | EmailAddress | Email Address (custom field) | Example — custom field data type: Email. Zoho CRM validates the address on save; a malformed value fails the transfer. This duplicates the standard Email mapping above — most subscribers should keep only one. |
Field | Custom field | Eligibility Status (custom field) | Example — custom field data type: Picklist. Options are predefined text; a value not among them saves on the record but is not added to the option list. The source is a demonstration field literally named |
Static |
| Challenges (custom field) | Example — custom field data type: Single Line. Plain text, strict 255-character limit — a longer value is rejected and the transfer fails. |
Static |
| Date (custom field) | Example — custom field data type: Date. Expects ISO 8601 |
Dynamic Formula |
| How did you hear about us (custom field) | Example — custom field data type: Multi Select. Requires a list of separate strings, not a comma-separated string; unlisted values save on the record only. The two fixed values are demonstration data — replace the formula so it derives the value from the customer. |
Dynamic Formula |
| Delivered Orders (custom field) | Example — custom field data type: Lookup. Must be given the target record's Zoho CRM id; a friendly name is not accepted. The formula returns a hard-coded demonstration id that will not exist in a subscriber's organization — replace it before enabling this collection. |
Error Handling
A mapped custom field cannot be found in Zoho CRM. When Raise Custom Field Not Found Exception is True, the transfer stops with a message naming the field. Resolution: correct the field label or API name in the iPaaS.com custom field configuration to match Zoho CRM exactly, or create the field in Zoho CRM.
A contact is rejected for a missing last name. Zoho CRM enforces a last name; the failure appears in the error log. Resolution: ensure Last_Name is mapped and populated.
A transfer fails when the Zoho CRM call allowance or concurrency cap is reached. The transfer is not rescheduled — it fails and is recorded in the error log. Resolution: stagger bulk loads and re-run affected transfers once the allowance resets.
A data-type error on a Lookup, Boolean, or Date custom field. A friendly name sent to a Lookup, a text value sent to a checkbox, or a mis-formatted date each produce a Zoho CRM data-type error. Resolution: supply the record id for a Lookup, define a boolean iPaaS.com field for a checkbox, and use ISO 8601 for a date.
A dedicated Zoho CRM Error Messages article covers the integration's error catalog in full.
Testing & Validation
Test Scenarios
Create a Customer in iPaaS.com with a last name and email, trigger a transfer, and confirm a Zoho CRM contact is created.
Update the Customer's name and confirm the change updates the existing Zoho CRM contact rather than creating a duplicate.
Map one custom field of each type to a real Zoho CRM field, transfer, and confirm each value lands correctly.
Transfer a Customer with two addresses and confirm which address reaches Zoho CRM matches the intended one (see Address Selection).
Set Raise Custom Field Not Found Exception to True, map a non-existent field, and confirm the transfer stops with a naming error.
Manually sync by entering an iPaaS.com Customer ID and confirm success.
Validation Checklist
The connected Zoho CRM user can read and write the Contacts module.
Every shipped custom field example has been repointed or removed.
Custom fields exist in Zoho CRM and have matching iPaaS.com subscription custom fields with the correct data type.
The customer/created and customer/updated triggers are subscribed if automatic transfers are wanted.
The intended address reaches Zoho CRM for customers with more than one address.
Additional Notes
The mailing address is taken from the first address on the customer, not the billing address. The shipped formulas request the billing address, but the value written is whichever address appears first in the customer's iPaaS.com list. Where the first address is not the one that should appear in Zoho CRM, the wrong address is written silently. Store the intended address first, or select on the billing flag explicitly.
Several Zoho CRM field types are not usable as mapping destinations. Image Upload, File Upload, Multi-line (Rich Text), Multiple Users, and Multi-select Lookup fields have each been observed either to be absent from the Contacts field list or to accept a value without storing it. Confirm any such field in staging first.
There is no fallback match on the Zoho CRM side. No iPaaS.com identifier is written to a Zoho CRM field, so a lost external-ID link produces a duplicate contact rather than a re-link.
There is no bulk initialization. Customers transfer one at a time. For an initial contact load, use bulk sync using Postman.
The following are out of scope: contact deletion, Zoho CRM accounts and companies, transfer of more than one address, and attachments, notes, and activities.
