Zoho CRMモジュールの全体像

make.comのZoho CRMアプリは、Make社によって公式に検証・サポートされている「Verified app」です。全26モジュールが用意されており、大きく4つのグループに分かれます。

グループ主なモジュールできること
オブジェクトCreate/Update/Delete/Get/List/Search an ObjectLeads・Accounts・Contacts・Deals等の標準モジュールに対する基本操作
監視(トリガー)Watch Objects新規作成・更新されたレコードを検知してシナリオを起動
リード専用Upsert a Lead既存なら更新・なければ新規作成(重複防止に便利)
関連レコード・タグ・添付Update/List/Delete a Related Record、各種タグ操作、Upload/Download an Attachment関連データやタグ、添付ファイルの管理

🗓 情報確認日:2026年8月11日(make.com公式アプリドキュメントapps.make.com/zohocrmで確認)。仕様は変更される場合があるため、最新情報は公式ドキュメントでご確認ください。

💡 「Make an API call」という抜け道もある

上記のモジュールでカバーされていない操作をしたい場合、「Other」グループの「Make an API call」モジュールを使えば、Zoho CRM APIの任意のエンドポイントを直接呼び出せます。専用モジュールで足りない場合の最終手段として覚えておくと安心です。

接続を作成する

1Zoho CRMモジュールを追加し、接続を作成する

新規シナリオで「Zoho CRM」を検索し、使いたいモジュール(例:Upsert a Lead)を選択します。「Add」をクリックして新しい接続を作成します。

💡 freeeと違い、通常はConnection nameを入力して「Save」するだけです。そのままZohoのログイン・許可画面に遷移し、認証が完了します。
2(任意)カスタムアプリを使う場合のみ詳細設定を行う

独自のZoho開発者アカウントでカスタムアプリを作成して使いたい場合のみ、「Show advanced settings」からクライアントID・シークレットを入力します。この場合、Zoho側のリダイレクト(コールバック)URIにはhttps://www.integromat.com/oauth/cb/zohocrm2を指定します。

💡 通常利用ではこの手順は不要です。まずは手順1のシンプルな接続で始めることをおすすめします。

シナリオ①:Webフォーム→リード自動登録(重複防止)

問い合わせフォームからの回答を、手作業でZoho CRMに転記していませんか?「Upsert a Lead」を使えば、重複を気にせず自動登録できます。

3トリガーを設定する(Google Sheets)

Googleフォームの回答は自動的にスプレッドシートに記録されます。そのスプレッドシートを「Google Sheets」→「Watch Rows」でトリガーに設定します。

4「Upsert a Lead」で自動登録する

トリガーの後ろに「Zoho CRM」→「Upsert a Lead」を追加し、フィールドをマッピングします。

マッピング例Last_Name: {{フォームの氏名列}} Email: {{フォームのメールアドレス列}} Company: {{フォームの会社名列}} Lead_Source: “Webフォーム” 一致条件(Duplicate check field): Email
💡 「一致条件」に指定したフィールドで既存リードを検索し、あれば更新・なければ新規作成します。メールアドレスを一致条件にするのが最も一般的です。
Upsert a Leadのポイント
  • どのフィールドを「一致条件」にするかを指定できる(通常はメールアドレスを使用)
  • 一致するリードがあれば更新、なければ新規作成を自動判定
  • フィールド名はZoho CRM側のAPI名(例:Last_Name、Email等)に対応させる必要がある
🔗 make.com × Zoho CRM

ここまでの設定で、フォーム回答が重複なく自動でリード登録されるようになります。どちらもクレジットカード不要で無料から試せます。

シナリオ②:商談ステータス変更→Slack通知

商談が「成約」に変わった瞬間をチームに知らせたい場合は、「Watch Objects」トリガーを使います。

5「Watch Objects」でDealsモジュールを監視する

トリガーに「Zoho CRM」→「Watch Objects」を選択し、監視対象モジュールとして「Deals」を指定します。

⚠️ Watch Objectsは「作成」だけでなく「更新」も検知します。商談名の誤字修正など、無関係な更新でも反応してしまうため、次の手順でフィルターを追加します。
6「ステータスが成約に変わった場合のみ」フィルターを追加する

トリガーとSlackモジュールの間に「フィルター」を挿入し、条件を設定します。

フィルター条件Stage(商談ステータス) が等しい “Closed Won”(成約)
7Slackに通知メッセージを送る

「Slack」→「Create a Message」を追加し、商談名・金額・担当者などのフィールドをマッピングした通知文を設定します。

メッセージ例🎉 商談成約:{{商談名}} 金額:{{金額}}円 担当:{{担当者名}}

シナリオ③:条件別に担当営業へ自動振り分け

問い合わせ内容や地域によって、リードの担当営業を自動で変えたい場合は、「Router」モジュールを使って条件分岐を組みます。

応用シナリオ問い合わせ内容で担当営業を自動振り分け
Googleフォーム回答 → make.com Router(条件分岐)  ├─ 東日本の問い合わせ → Upsert a Lead(Lead Owner:担当者A)  └─ 西日本の問い合わせ → Upsert a Lead(Lead Owner:担当者B)

「Upsert a Lead」の直前に「Router」モジュールを挿入し、フォームの「都道府県」列の値によって処理を2つの経路に分岐させます。それぞれの経路の「Upsert a Lead」で、Lead_Ownerフィールドに異なる担当者IDをマッピングすれば、地域ごとの自動アサインが完成します。地域だけでなく、問い合わせ内容の商材カテゴリ別に振り分ける、といった応用も同じ考え方で組めます。

難易度:中 設定時間の目安:40〜60分
💡 担当者IDの調べ方

Lead_Ownerフィールドには、担当者の表示名ではなくZoho CRM内部のユーザーIDを指定する必要があります。「List Users」モジュールを一度実行してレスポンスを確認すると、各担当者のIDを一覧で取得できます。取得したIDを控えておき、Routerの各経路で固定値としてマッピングするのが実務的な進め方です。

Watch Objectsの制約について

Watch Objectsトリガーには、Zoho CRM API自体の仕様に由来するいくつかの制約があります。事前に把握しておくと、想定外のエラーを防げます。

Watch Objectsを使う前に確認すること
  • 作成日時・更新日時フィールドが必須:監視対象モジュールにこれらのフィールドが存在しないと、「Cannot read property ‘itemId’」というエラーが返ります。Zoho CRM側の「設定」→「カスタマイズ」→「モジュールとフィールド」で、対象モジュールにこの2つのフィールドが存在するか確認してください
  • レスポンスは最大50フィールドまで:選択できるフィールド数は、ID・作成日時・更新日時の3つの必須項目を除いた最大47項目までです
  • 対象は標準モジュールが中心:Leads・Accounts・Contacts・Deals・Forecasts・Activities等の標準モジュールが対象です

実際に組んでみた感想

💬 公式ドキュメントを精査して感じたこと

接続の手軽さについて:freeeの経費精算連携と比べると、体感の設定時間は3分の1程度で済みそうです。OAuthアプリの作成・コールバックURLの設定・Advanced Parametersの入力といった手間がなく、「Add」→ログイン→許可の3ステップで完結する設計は、freeeのような複雑なAPI連携をすでに経験していると、その差がよく分かります。

Upsert a Leadについて:重複防止の仕組みを自分でシナリオ内に組み込む必要がある一般的なAPI連携と違い、1モジュールで「あれば更新・なければ新規作成」が完結するのは、実務上かなり便利な設計だと感じました。フォームからの問い合わせが多いサイト・営業チームには特に相性が良さそうです。

Watch Objectsの制約について:「作成日時・更新日時フィールドが必須」という制約は、公式ドキュメントを読み込まないと気づきにくいポイントでした。エラーメッセージ「itemId」だけを見て原因を特定するのは初見だと難しく、この記事のような事前情報がないと、原因究明に時間がかかりそうな箇所だと感じました。

よくあるつまずきポイント

⚠️ つまずき①:フィールド名が一致せずマッピングできない

make.comの画面に表示されるフィールド名は、Zoho CRM側で設定した「表示名」ではなく「API名」(例:Last_Name)で表示されることがあります。事前にZoho CRM開発者向けドキュメントでモジュールごとのAPI名を確認しておくと、マッピング時に迷いません。

⚠️ つまずき②:接続が複数できてしまい混乱する

同じZoho CRMアカウントに対して複数の接続を作成すると、モジュールが正しく動作しないことがあります。基本的には1つのZoho CRMアカウントにつき接続は1つに統一することをおすすめします。

⚠️ つまずき③:Watch Objectsのエラーで動かない

前述の「作成日時・更新日時フィールドが削除されている」ケースが最も多い原因です。エラーメッセージに「itemId」という文字列が含まれていたら、まずこのフィールドの有無を確認してください。

⚠️ つまずき④:Router分岐で担当者IDを間違えて割り当てる

シナリオ③のような分岐処理では、担当者IDの入力ミスに気づきにくいという特徴があります。本番運用前に、必ずテストデータで各経路を1回ずつ実行し、意図した担当者にリードが割り当てられているかをZoho CRM画面で確認してください。

freee連携との違い

同じmake.comでの会計・CRM連携でも、freeeとZoho CRMでは難易度がまったく異なります。

比較項目Zoho CRMfreee(経費精算)
専用モジュール✔ あり✗ なし(HTTPモジュールで代替)
接続設定ログイン・許可のみOAuth 2.0の手動設定が必要
難易度易しいやや高い(API知識が必要)
重複防止の仕組みUpsertアクションで標準対応自前でフィルター等を設計する必要あり

freeeとの連携に興味がある方はmake.com × freee 経費精算 自動化ガイド、Slackとの連携(Webhookベースの即時トリガーに対応)はmake.com × Slack 自動化ガイドもあわせてご覧ください。

よくある質問

Qmake.comにZoho CRM専用モジュールはありますか?
あります。freeeと違い、Zoho CRMはMake社公式にレビュー・サポートされた専用モジュールが提供されており、リード・商談・連絡先などの標準モジュールに対応した「作成」「更新」「検索」「監視」といった操作をドラッグ&ドロップで設定できます。
Q接続設定にOAuthの手動設定は必要ですか?
基本的には不要です。「Add」から接続を作成し、Zohoアカウントでログイン・許可するだけで接続できます。独自のカスタムアプリを使いたい場合のみ、詳細設定でクライアント認証情報を入力する必要があります。
Qリードの重複登録を防ぐにはどうすればいいですか?
「Upsert a Lead」アクションを使います。指定した条件(メールアドレス等)に一致するリードが既に存在すれば更新、存在しなければ新規作成という動作を自動で判定してくれるため、重複防止の仕組みを自分で組む必要がありません。
QWatch Objectsトリガーを使う際の注意点はありますか?
監視対象のモジュールに「作成日時」「更新日時」の項目が存在している必要があります。削除されている場合はエラーになるため、Zoho CRM側の設定画面から追加してください。またレスポンスは最大50フィールドまでで、IDや日時などの必須3項目を除くと選択できるのは最大47フィールドです。
Qリードを担当者ごとに自動で振り分けることはできますか?
できます。make.comの「Router」モジュールで条件分岐を組み、地域や問い合わせ内容などの条件ごとに異なる担当者IDをUpsert a Leadの「Lead Owner」フィールドにマッピングすることで、自動アサインを実現できます。
QZoho CRMのAPI呼び出し回数に制限はありますか?
Zoho CRM APIには契約プランに応じた1日あたりのAPI呼び出し上限があります。大量のレコードを短時間で処理するシナリオを組む場合は、Zoho CRM公式のAPI制限ドキュメントで契約プランごとの上限を確認することをおすすめします。

まとめ

make.comとZoho CRMの連携は、専用モジュールが用意されているため、freeeのような複雑なAPI設定は不要です。「Upsert a Lead」による重複防止つきのリード自動登録、「Watch Objects」による商談変更の自動通知、「Router」を使った担当営業への自動振り分けまで、いずれもドラッグ&ドロップの範囲で構築できます。まずはシナリオ①のシンプルなリード登録から試してみてください。

🟣
make.com
Zoho CRM専用モジュールも無料プランで利用可能
  • 無料プランでZoho CRM連携の設定が可能
  • 月1,000クレジットまで無料
make.comを無料で始める →
🔴
Zoho CRM
3名まで無料・make.comとの連携も無料枠で試せる
  • 3ユーザーまで永久無料
  • 有料 月1,760円〜(年払い)
Zoho CRMを試す →
※ 本記事はアフィリエイトリンクを含みます。API仕様・価格は記事確認時点の情報です。