SalesforceとIntercom間のデータ同期の仕組み
SalesforceのaccountsとIntercomのcompanies間でデータを同期できます。各属性ごとに同期方向(SalesforceからIntercom または IntercomからSalesforce)を定義することも可能です。
対象者: Salesforce連携を設定するIntercomワークスペース管理者。Accountフィールドを管理するにはSalesforceの管理者権限も必要です。Account Numberなどの識別子フィールドを変更する前にSalesforce管理者と調整してください。
会社とアカウントの同期を設定すると、以下が可能になります:
最新の会社情報を確認できます。
SalesforceのaccountデータをIntercom内で活用し、アウトバウンドメッセージのターゲティングや顧客のセグメント化などが行えます。
Intercomから送信された会社データでSalesforceを更新します。
SalesforceのaccountsとIntercomのcompaniesの同期
leadsとcontactsの同期方法と同様に、SalesforceのaccountsとIntercomのcompaniesを同期できます。
この記事で使われる重要用語
Company ID — JavaScriptやREST APIを通じてIntercomに送信する際に会社に割り当てる一意の識別子です。この値はお客様が管理し、Intercomが自動生成することはありません。(例外:Qualification CompaniesはIntercomが自動作成し、Salesforceと同期できません。)
Account Number — Salesforce Accountレコードの標準フィールドで、マッチング識別子として使用されます。マッチング成立には、このフィールドがIntercomのCompany IDと同じ値である必要があります。
Identity mapping — マッチしたIntercom companyとSalesforce account間に統合が作成する内部リンクです。このリンクを通じてデータが同期されますが、companyやaccountオブジェクト自体は作成されません。
会社とアカウントはどのようにマッピングされますか?
同じ識別子(Account Numberなどのフィールド)を持つオブジェクト(Salesforceのaccounts、Intercomのcompanies)が両方のシステムで見つかると、マッピングが確立されます。
例えば、Intercomのcompany IDが「abc123」の会社は、Salesforceのaccount numberが「abc123」のアカウントとマッチします。
注意: Intercomは自動的に作成された会社の同期をサポートしていません。Salesforceと同期するには、REST APIやJavaScriptスニペットで定義されたCompany IDを持つ会社を作成してください。
Intercomの会社とSalesforceのアカウント間のマッピングは一意で永続的(「1対1」関係)です。同じIDを持つ複数のアカウントがある場合は、最も最近更新されたアカウントがマッチされます。
属性のマッピングはどのように機能しますか?
accountsとcompaniesをマッピングした後、属性(フィールド)をマップして同期できます。同期時の属性の送信方向(IntercomからSalesforceまたはその逆)を決められます。空の値を同期しない、既存の値を上書きしないなどの指定も可能です。
注意: これらのマッピングを通じて同期されたデータは、SalesforceやIntercomのaccountまたはcompanyオブジェクトに直接適用されます。SalesforceのライブデータをIntercomで簡単に見るにはInboxアプリを使用してください。
IntercomとSalesforce間で属性を同期するには、両システムのデータ型が互換性がある必要があります。対応するフィールドタイプはこちら。
アカウントデータ同期の前に必要なもの
IntercomとSalesforce間で会社とアカウントのデータを同期するには、以下が必要です:
1. 設定 > ワークスペース > 一般で「会社関連機能を有効にする」をオンにします:
続行前に: この連携はIntercomに既に存在する会社オブジェクトのみ同期可能で、Salesforceアカウントから新規作成はできません。同期を有効にする前にステップ2と3を完了してください。ステップ2を飛ばすと連携が期待通りに動作しない最も一般的な原因です。
2. 同期を有効にする前にIntercomに会社オブジェクトが存在することを確認してください。連携は既存レコードをマッチングし、SalesforceアカウントからIntercom会社、またはその逆の作成は行いません。会社オブジェクトはintercomSettingsのJavaScriptコードスニペット(companyというJSONオブジェクト)またはREST APIでIntercomに送信されます。
Intercomの会社についてはこちらの記事をご覧ください。
3. Intercomに送信するcompany IDがSalesforceのアカウント識別フィールドと同じ値であることを確認してください。これにより両システムのオブジェクトがマッチします:
Salesforceのアカウントを識別する任意のフィールドを使ってIntercomの会社とマッチングできます。正確なマッチングを保証するため、一意の識別子である必要があります。
識別子としてAccount Numberの使用を推奨します。重複がある場合は、最も最近更新されたものがマッチされます。
注意: Salesforce側で「テキストエリア」タイプのフィールドは識別子として使用できません。この場合はフィールドを「文字列」に設定してください。
ヒント: IntercomのCompany idがSalesforceで使用しているアカウント識別子(フィールド)と同じ形式であることを確認してください:
注意: 現時点でSalesforceのrecord IDとはマッチングできません。代わりにAccount Numberや他のテキストまたは整数フィールドを識別子として使用してください。前述の前提条件ステップ3を参照してください。
重要: SalesforceレコードをIntercomと同期するには、SalesforceのIntercom Company IDフィールドがIntercomのCompany IDと一致している必要があります。このフィールドが設定されていないか不一致の場合、マッピングされたフィールドは同期されず、同期は試みられません。
重要: 連携は会社やアカウントオブジェクトを作成しません。既にIntercomとSalesforceの両方に存在するレコード間にリンク(identity mapping)を作成するだけです。Intercomに会社が存在しない場合、Salesforceでアカウントを作成しても会社は作成されません。会社はJavaScriptスニペット、API、Messengerを使って先にIntercomで作成し、Salesforceアカウント識別子と一致するcompany IDを持つ必要があります。
IntercomにSalesforceの会社と一致する会社ができたら、両システム間で同期したいフィールドのマッピングを開始できます。
マッピングの設定方法
Salesforceアプリ設定に移動し、「Sync account data」タブを開くと、2つのセクションがあります:
companiesとaccountsのマッピング
属性のマッピング
IntercomのcompaniesとSalesforceのaccountsをマッピングする方法
IntercomのCompany IDとSalesforceのaccountオブジェクトを識別する任意のテキスト、整数、倍精度、IDフィールドを使ってcompaniesとaccountsをマッピングできます。Salesforceのプリミティブデータ型についてはこちらをご覧ください。
これは、各会社に対してIntercomとSalesforceの両方で設定された一意のIDを持っている必要があります。一意の識別子を使用することをお勧めします。これにより、IntercomとSalesforce間で一意の一致が保証されます。
Salesforceで会社をアカウントにマッピングするために使用するフィールドを選択してください:
変更を適用するには、設定を保存してください。👌
会社をアカウントにマッピングするために使用するフィールドを変更すると、Intercomの会社とSalesforceのアカウント間で確立された一致は解除され、今後新しい一致が確立されます。
これらの変更は今後の新しい一致に適用されますが、既存の一致は更新されません。つまり、新しい一致が確立されるまで、Intercomに表示されるSalesforceのデータが古くなる可能性があります。
IntercomとSalesforce間で属性をマッピングする方法
2番目のセクションでは、SalesforceのアカウントとIntercomの会社間で属性をマッピングできます。これらは、inboxアプリで表示される属性ではなく、Intercomの会社に直接同期される属性です(編集不可)。
このセクションでは、SalesforceとIntercom間でデータがどのように、いつ同期されるかを正確に説明しています。属性マッピングを設定する前に内容を把握しておくことをお勧めします。
リストの下部にある「+ 新しい属性をマップ」をクリックしてください:
次に、Intercomのどの属性とSalesforceのどのフィールドをマッピングするかを選択します。互換性のあるデータ型のフィールドと属性をマッピングすることを忘れないでください。
各属性とフィールドの横に括弧付きでタイプが表示されます。例:(String):
別の属性またはIDマッピングで既に使用されているフィールドは無効になります。
現在、Salesforceの複合フィールドへの同期はサポートしていません。代わりに個別のコンポーネントフィールドを使用してください。例えば、BillingAddressではなくBillingStreetとBillingCityを使用します。
頻繁に変わる属性(例:last_seen)や数式フィールドの同期は現在サポートしていません。属性同期なしでIntercomで最新のSalesforceデータを利用するには、Salesforce Inbox appを使用してください。
次に、同期の方向を選択します(IntercomからSalesforce または SalesforceからIntercom):
次に、この属性を同期しない状況のチェックボックスをオンにします。この例では、SalesforceからIntercomに同期しているため、Salesforceが「ソース」、Intercomが「宛先」です。同期しない条件を選択できます:
ソースが空の場合。
宛先にすでに値がある場合。
「追加」をクリックしてマッピングをリストに保存します。
マッピングを編集するには、マッピングにカーソルを合わせて「編集」をクリックします:
特定の属性の同期を停止したい場合は、カーソルを合わせて「削除」をクリックします:
マッピングを削除すると、その属性の今後の同期が即座に停止します。既に同期されたデータは削除されません。
変更を適用するには、右下の「設定を保存」をクリックしてください:
変更が保存されると、確認メッセージが表示されます:
既存のデータで同期を有効にするとどうなりますか?
すでにIntercomまたはSalesforceに会社またはアカウントデータがある場合、同期を有効にすると既存のデータが上書きされる可能性があります。これを防ぐには、各属性マッピングの設定時に「宛先にすでに値がある場合は同期しない」オプションを使用してください。データがいつどのように同期されるかについて詳しくはこちら。
アカウント同期はpeople syncに影響しますか?
アカウント/会社データのみを同期することはできません。このアプリがインストールされていると、Salesforceが必要とする一部のフィールドがリード作成時に送信されるか、IntercomまたはSalesforceで更新されるたびに同期されます。people syncの仕組みについてはこちら。
既存のデータを一括更新できますか?
いいえ。同期は設定を保存した時点から開始され、それ以降の変更にのみ適用されます。過去のレコードは自動的に遡って同期されません。既存レコードの同期を自然な変更を待たずにトリガーするには、Intercomの会社を少し編集する(即座にSalesforceに同期される)か、Salesforceのアカウントを編集する(5分以内に反映される)必要があります。
アカウントベースマーケティングのためにアカウントをインポートしますか?
このアプリのアカウント同期機能は、SalesforceとIntercom間でアカウントデータを同期します。
アカウントベースマーケティングのためのアカウントインポートは、SalesforceとIntercom間でアカウントデータを更新し続けることを目的とした機能ではありません。
本番稼働前の重要な推奨事項
Salesforce管理者と連携して、Intercomに適切なAPIリミットを割り当て、他のすべての統合が同時に動作できるようにしてください。この記事を読んでIntercomのSalesforceアプリでのAPI使用量管理方法を確認してください。
どのデータ同期製品統合にもリスクがあります。このリスクを最小限に抑えるために、事前にSalesforceデータのバックアップを行うことをお勧めします。方法はこちらの記事をご覧ください。
まずサンドボックス環境でSalesforceアプリをインストールしてテストしてください。この記事で方法を確認できます。
IntercomとSalesforce間でデータはどのように同期されますか?
IntercomとSalesforce間でマッピングした属性は、どちらかのシステムで変更があった場合に同期されます。Intercomで変更があった場合は即座にSalesforceへの同期がトリガーされ、Salesforceは5分ごとにIntercomへの同期が必要かどうかをチェックします。異なる状況でデータがどのように更新されるかは以下の表を参照してください。
重要: Salesforce または Intercom に変更(または新しいレコード)がある場合にのみデータが同期されるため、履歴データは常に同期されているわけではありません。更新をトリガーする変更がなければ、Intercom に表示されるデータは Salesforce inbox アプリに表示されるデータと一致しない場合があります。Salesforce アプリを使用する場合、既存の履歴データの一括更新は行われません。
Intercom から Salesforce へのデータ同期方法
Intercom の以下のトリガーにより Salesforce のデータが更新されます。これらの場合の動作は、Salesforce のアカウントと Intercom の会社間に既存の一致があるかどうかによって異なります。この一致は「identity mapping」と呼ばれます。
重要: identity mapping は両システムに既に存在するレコード間のリンクです。統合は Intercom に会社オブジェクトを作成したり、Salesforce にアカウントオブジェクトを作成したりせず、既に両側に存在する一致するレコード間のデータのみを同期します。
各行は3つの結果を示します:2つのレコードが既にリンクされている場合(2列目)、IDが一致しているがまだリンクがない場合(3列目)。Intercom の会社に対応する Salesforce アカウントが全く存在しない場合、トリガーに関係なく同期やマッピングは作成されません。
トリガー | identity mapping が既に存在する場合 | 既存の identity mapping が見つからない場合 |
Intercom で会社が更新された場合 | 更新された属性を Salesforce に同期します。 |
|
Intercom で会社が作成された場合 | 該当なし。 | 既存の Intercom 会社と既存の Salesforce アカウント間のリンクである新しい identity mapping を作成します。
すべてのマッピングされた属性を Salesforce に同期します。注:これは新しい Salesforce アカウントを作成するものではなく、既に存在し一致するアカウントに属性を同期するだけです。 |
Intercom で会社が削除された場合 | identity mapping を削除します(Intercom 会社と Salesforce アカウント間のリンクを削除します。Salesforce アカウントは削除されません)。 | 該当なし。 |
注意: 「マッピングされた属性」とは、設定で Intercom と Salesforce 間の同期を設定した属性のことです。
Salesforce から Intercom へのデータ同期方法
Intercom は 5 分ごとに Salesforce の変更(新規または更新されたアカウント)をチェックし、見つけた場合は Intercom の情報を更新します。
重要: 統合は両システムに既に存在するレコード間のデータのみを同期します。Salesforce アカウントから新しい Intercom 会社は作成されません。対応する Intercom 会社が存在しない場合、同期は行われません。
各行は3つの結果を示します:2つのレコードが既にリンクされている場合(2列目)、IDが一致しているがまだリンクがない場合(3列目)。Salesforce アカウントに対応する Intercom 会社が存在しない場合、トリガーに関係なく同期やマッピングは作成されません。
トリガー | identity mapping が既に存在する場合 | 他のシステムに一致するレコードが既に存在する場合(まだマッピングなし) |
Salesforce でアカウントが更新された場合 | すべてのマッピングされた属性を Intercom に同期します。 |
|
Salesforce でマッピングキーが更新されました。(例:Intercom のレコードを一致させるために使用される ID) |
|
|
Salesforce でアカウントが作成された場合
| 該当なし。 |
|
Salesforce でアカウントが削除された場合 | identity mapping を削除します(Salesforce アカウントと Intercom 会社間のリンクを削除します。Intercom 会社は削除されません)。 | 該当なし。 |
Intercom 会社から人が削除された場合、その人は Salesforce アカウントからも削除されますか?
いいえ、Salesforce アプリはプラットフォーム間で人の会社/アカウントの関連付けを同期しません。Intercom の Leads と users が Intercom の会社に追加または削除されても、マッピングされた Salesforce のリード/コンタクトのアカウント関連付けは更新されません。人を Intercom 会社と Salesforce アカウントの両方から削除する必要がある場合は、両方のプラットフォームで変更を行う必要があります。











