DocuSign eSignature for Salesforce - 一括送信を開始してSalesforceレコードを更新するには


注: ここで説明する手順はカスタムのワークフローであるため、通常のDocuSignサポートでサポートを提供することはできません。このワークフローで問題が生じる場合はアカウントマネージャーに連絡して、DocuSign Professional Servicesチームとの問題解決スケジュールを手配してください。

目的

DocuSignの一括送信機能とSalesforceとのインテグレーションを設定する方法について説明します

概要

エンベロープの一括送信機能では、多くの受信者に同じエンベロープを一括で送信できます。この機能はSalesforce内でエンベロープを送信するためのものではないため、Salesforce組織でこの機能を使用する場合に以下の課題に直面します。
  1. SalesforceのデータをどのようにDocuSignエンベロープに取り込むのか。
  2. 一括送信したエンベロープからの更新情報をどのようにSalesforce側に発行するのか。
  3. DocuSignエンベロープのステータスをどのようにSalesforceレコードに関連付けるのか。
  4. 完了した文書をどのようにSalesforceレコードに添付するのか。
一括送信機能を使用する場合、受信者の個々のSalesforceレコードが更新されるようにするにはConnect設定をカスタマイズする必要があります。以降では、上記の課題を解決して、一括送信したエンベロープのデータがSalesforceに正しく同期されるようにする方法について説明します。

必要な条件

必要なタスクの概要/目次

  1. カスタムのSalesforceレポートを作成します。
  2. DocuSignテンプレートを作成します。
  3. 以下のタスクを実行するカスタムのDocuSign Connectワークフローを作成します。
    1. 受信者ステータスを更新する
    2. Salesforceレコードを更新する
    3. 完了した文書を添付する
  4. 一括送信機能で使用するCSVファイルを変更します。
  5. 一括送信を実行します。
  6. Salesforce内でエンベロープステータスを確認します。
  7. 付録: エンベロープカスタムフィールドマッピングと一括送信機能

サンプルケース

「Average Joe's Gym」というスポーツジムを経営しています。潜在的なリスクに関する免責条項に変更を加えたので、すべての会員にその文書を送信し、必要事項の入力および署名を依頼します。この文書には、緊急連絡先の入力欄も追加しました。

以下のタスクを行う必要があります。
  1. 新しい免責条項の文書をすべての会員に送信する。
  2. Salesforceのデータから会員番号を文書内に事前入力する。(手順2.〜4.は会員が自分で入力する必要がないようにするためのタスクです。)
  3. Salesforceのデータから会員名を文書内に事前入力する。
  4. Salesforceのデータから緊急連絡先の情報を文書内に事前入力する。
  5. 事前入力された緊急連絡先の情報を必要に応じて会員が更新できるようにする。
  6. 会員が更新した緊急連絡先の情報をSalesforceの会員レコードに反映させる。
  7. 送信したDocuSignエンベロープのステータスをSalesforceの各会員レコード上で確認できるようにする。
  8. エンベロープの署名プロセスが完了した時点で、署名済みの免責文書をSalesforceの各会員レコードの[メモ&添付ファイル]セクションに添付する。
 

カスタムのSalesforceレポートを作成する

概要

エンベロープを一括送信するには、そのエンベロープのすべての受信者のリストであるCSVファイルを作成する必要があります。CSVファイルを新規に作成する代わりに、Salesforceのレポートを利用することができます。Salesforceでは、カスタムのレポートをCSVファイルとして出力できます。

手順(例)

Salesforce内でレポートアプリケーション(タブ)を開き、新しいレポートを作成します。
[新規レポート]をクリックします。
上記タスクの1.では、新しい免責条項の文書をすべての「アクティブ」な会員に送信します。
このため、カスタムレポートのタイプとして[取引先責任者と取引先]を選択します。
この例のすべての会員レコードには[Membership Status]というピックリストがあります。そこで、この項目の値が[Active]であるレコードのみをレポートに含めます。

Salesforce Classicでは、以下のようにフィルターを設定します。 
User-added image

さらに、会員の名前とメールアドレスの情報が必要です。そこで、以下の列がレポートに書き出されるように設定します。
  1. 名前
  2. メールアドレス
  3. 会員番号
  4. 緊急連絡先の名前
  5. 緊急連絡先の電話番号
  6. 緊急連絡先との関係
  7. 取引先責任者ID
各取引先責任者(つまりジム会員)のID(このサンプルケースでは「Contact ID」)をレポートに含めていることに注意してください。この情報は、エンベロープの完了後に緊急連絡先の情報を正しいSalesforceレコードページに書き戻すために必要です。

レポートを実行し、[エクスポート]をクリックします。エクスポート形式として、[カンマ区切り形式(.csv)]を選択します。使用言語に適切な文字コード(UTF-8など)を選択してください。

Salesforce Classicでは、以下のように設定します。 
User-added image

Salesforce Lightningでは、以下のように設定します。 
User-added image

[エクスポート]をクリックしてCSVファイルをダウンロードします。ダウンロードしたCSVファイルを開き、後でアクセス可能な場所に保存します。

Salesforceにより、著作権情報やレポート作成者に関するメタデータがCSVファイルに追加される場合があります。これらの不要な情報(下図)を削除しておく必要があります。

User-added image
 

DocuSignテンプレートを作成する

概要

次に、エンベロープを特定の設定で送信するためのDocuSignテンプレートを作成します。テンプレートの概要については、こちらのビデオを参照してください。
  1. テンプレートの名前を設定します。
  2. 送信する文書をアップロードします。この例では、会員に署名と必要事項の記入を依頼する「潜在的なリスクに関する免責条項」という文書をアップロードします。
  3. 受信者の役割を追加します。この例では、「会員」役割を追加します。名前およびメールアドレスのボックスは空白のままにしておきます。
  4. [メールの件名]ボックスに「DocuSignで送信: 免責条項にご署名ください」などの件名を入力します。
  5. 必要に応じて、[メールの件名]ボックスに差し込みフィールドを追加して動的な情報を挿入することもできます。これを行うには、ボックス内右側のアイコンをクリックして、[会員の名前の挿入]などを選択します。これにより、このテンプレートで送信されるエンベロープの件名に各受信者の名前が自動的に挿入され、後で各受信者のエンベロープを区別しやすくなります。
  6. 必要に応じて、すべての受信者宛てのメッセージを入力します。
  7. 必要に応じて、[詳細設定]の[編集]リンクをクリックして、テンプレートの詳細設定を確認します。設定を変更したら、[保存]をクリックします。
  8. [次へ]をクリックします。
  9. 文書上に[イニシャル]、[署名]、[署名日]などのフィールドを追加します。
  10. 文書上に会員番号と緊急連絡先用の[テキスト]フィールドを追加します。これらの項目名は、Salesforceからダウンロードしたレポートに記載されています。これらのSalesforceデータを[テキスト]フィールド内に取り込むために、各[テキスト]フィールドの[データラベル]をレポートに記載されている項目名に変更します。データラベルはそのエンベロープの差出人にのみ表示されるフィールド名であり、この情報により各フィールドが識別され、一括送信のCSVファイル内の情報がフィールドにマッピングされます。この例では、会員番号用の[テキスト]フィールドに「Membership Number」というデータラベルを設定します。

SalesforceからエクスポートしたレポートのCSV列ヘッダーとデータの例:
User-added image

上図の列ヘッダーに一致する[テキスト]フィールドのデータラベル:User-added image
  1. [保存して閉じる]をクリックします。

重要:

作成するDocuSignテンプレートに取引先責任者ID用の[テキスト]フィールドを追加しておく必要があります。DocuSign Connectでは、一括送信したエンベロープの更新情報(送信、完了、無効化などのイベント情報)がこのIDに基づいてSalesforce側に同期されます。詳しくは、「Salesforce内でエンベロープステータスを確認する」で説明します。

使用するテンプレートをクリックして、[編集]をクリックします。または、テンプレート名の右側にある[使用]ボタンの下矢印をクリックして、[編集]を選択します。[次へ]をクリックして文書上に[テキスト]フィールドを追加し、文書右側のプロパティパネルでデータラベルに「Contact ID」と入力します。さらに、以下のプロパティを設定します。
  1. [データラベル]プロパティに「Contact ID」が設定されていることを確認します。
  2. [読み取り専用]チェックボックスをオンにします。これにより、文書上のIDを受信者が変更できなくなります。
  3. [フォーマット設定]プロパティで文字の色を[白]に設定します。文書の地の色が白であるため、受信者がこの文書に署名するときにこのフィールド内のID情報が非表示になります。ただし、読み取り専用として取引先責任者IDが文書上に残るため、そのIDに基づいてエンベロープの情報がSalesforceレコードに書き戻されます。
  4. この[テキスト]フィールドを文書上の余白部分に配置します。たとえば、ページ右上の余白部分に配置します。
  5. [保存して閉じる]をクリックしてテンプレートを保存します。
 

カスタムのDocuSign Connectワークフローを作成する

概要

DocuSign Connect for Salesforceは、エンベロープのデータをSalesforceに発行するプッシュサービスです。DocuSign Connectを設定すると、エンベロープのステータス、データ、および署名後の文書がSalesforce側に反映されるようになります。


受信者ステータスを更新する

概要
DocuSign Recipient Status(DocuSign受信者ステータス)は、デフォルトのConnectオブジェクト(またはワークフロー)です。DocuSign eSignature for Salesforceで取引先責任者レコードからエンベロープを作成すると、Recipient Statusレコードが自動的に作成され、その取引先責任者レコードに関連付けられます。これは、署名時に表示されないエンベロープカスタムフィールドとして取引先責任者のIDが設定されるためです。一括送信機能では、DocuSign Webアプリケーション(DocuSign.com)からエンベロープが送信されます。このため、エンベロープステータスをSalesforceの適切な取引先責任者レコードに関連付けるためのカスタムConnectオブジェクトを作成する必要があります。この手順を行わない場合、Salesforce内でRecipient Statusが作成されてDocuSign Recipient Statusレコードなどに適用されることはあっても、特定の取引先責任者レコードには関連付けられません。
手順:
DocuSignに管理者としてログインして、以下の操作を行います。
  1. ページ右上のプロフィール画像をクリックして、[管理画面に移動]を選択します。
  2. 複数のアカウントが関連付けられている場合は、使用するアカウントを選択します。組織管理者の場合は、[アカウント]タイルをクリックします。
  3. ページ左側の[DocuSign Connect]をクリックします。
  4. Salesforce用の設定をクリックします。一覧にSalesforce用の設定が表示されない場合は、DocuSign eSignature for Salesforceをインストールおよび設定することをお勧めします。
  5. [Connectオブジェクト]セクションの[新しいオブジェクト]をクリックし、[Salesforceオブジェクト]を選択します。
User-added image

[Salesforce Connectオブジェクト]ページが開きます。
User-added image
 
  1. [オブジェクト名]および[オブジェクトの説明](オプション)を更新します。ここでは、オブジェクト名を「Bulk Send Recipient Status」に変更します。
  2. [Salesforceオブジェクトの選択]ボックスの一覧から[DocuSign受信者のステータス]を選択します。このオプションを選択するには、ドロップダウンリストを下にスクロールしなければならない場合があります。
  3. この例では、[一致しない場合は追加する]チェックボックスをオフのままにします。これにより、Salesforceのジム会員レコードページ内に存在するレコードの情報だけが更新されるようになります。
  4. ページ上部の[非アクティブなオブジェクト]をクリックして、[オブジェクトの有効化]を選択します。
  5. [対象の選択]セクションで、以下の設定を行います。
  6. [フィールドの更新]セクションで、以下の設定を行います。
    • [Salesforce.comフィールド][SalesforceソースID(string)]を選択します。
    • [DocuSignフィールド][Recipient Secure Field]を選択します。
    • [Recipient Secure Field]を選択すると、[受信者のSecureFieldの値]ボックスが表示されます。ここには、上記手順で設定した[テキスト]フィールドのデータラベル(この例では「Contact ID」)を入力します。
    • ここでは、[添付]セクションのチェックボックスをオンにする必要はありません。
カスタムのSalesforceオブジェクトの例:

User-added image

DocuSign Connect for Salesforceでは、複数のワークフロー(Connectオブジェクト)を順次実行できます。リスト上部に表示されているものからステップバイステップ形式ですべてのアクティブなワークフローが実行されます。

User-added image

このカスタムワークフローは、「dsfs__DocuSign_Recipient_Status__c」よりも後に実行されなければなりません。

dsfs__DocuSign_Recipient_Status__cにより、ステータスが作成されます。ここで作成したカスタムワークフローは、作成されたステータスを更新して適切な取引先責任者レコードに関連付けます。dsfs__DocuSign_Recipient_Status__cよりも前にカスタムワークフローを実行すると、ステータスが存在しないため更新に失敗します。

Salesforceレコードを更新する

概要
Connectワークフロー(Connectオブジェクト)の目的は、Salesforce項目にマッピングされたDocuSignメタデータ(フィールドのデータ)に基づいてSalesforceレコードを更新または作成することです。また、Connectでは、署名者によりDocuSignエンベロープに入力されたデータをSalesforce側に直接プッシュすることもできます。
手順:
  1. カスタムのConnectオブジェクトを作成します。
  2. [オブジェクト名]および[オブジェクトの説明](オプション)を更新します。
  3. [Salesforceオブジェクトの選択]ボックスの一覧から、更新するオブジェクト(ここでは[取引先責任者])を選択します。
  4. この例では既存の取引先責任者レコードだけを更新するため、[一致しない場合は追加する]チェックボックスをオフのままにします。
  5. [対象の選択]セクションで、以下の設定を行います。
    1. [Salesforce.comフィールド][取引先責任者ID]を選択します。
    2. [DocuSignフィールド][Recipient Secure Field]を選択します。
[Recipient Secure Field]を選択すると、その下に新しいボックスが表示されます。ここに、DocuSignテンプレートに追加した[テキスト]フィールドのデータラベル(およびSalesforceから出力されたCSVファイルに記載されているIDの列見出し)を入力します。この例ではデータラベルを「Contact ID」と設定したので、ここでも「Contact ID」と入力します。これにより、CSVファイルに記載されているレコードIDに基づいて、Salesforceレコードが更新されるようになります。これは、Salesforce SOAP APIで更新要求のID項目を定義することに相当します。
User-added image
  1. フィールドの更新
[フィールドの更新]セクションでは、DocuSignフィールドをSalesforce項目にマッピングします。これにより、Connectイベントが発生したときにDocuSignフィールドの情報がSalesforce側に「書き戻し」されます。下図はマッピングの例です。この例では、以下のマッピングが設定されています。
  1. [Salesforce.comフィールド]で[Emergency Contact(string)]を選択。
  2. [DocuSignフィールド]で[Recipient Secure Field]を選択し、その下に新しいボックスにDocuSignテンプレートの緊急連絡先フィールドに設定したデータラベル(「Emergency Contact」など)を入力。[Recipient Secure Field]を選択すると、その下に新しいボックスが表示されます。ここに、DocuSignテンプレートに追加した[テキスト]フィールドのデータラベルを入力します。「Emergency Contact」のほか、「Emergency Phone」や「Emergency Phone」などのデータラベルを持つ[テキスト]フィールドをマッピングします。
User-added image
 

完了した文書を添付する

概要
デフォルトでは、署名が完了した文書がSalesforceレコードに関連付けられることはありません。完了した文書が適切な取引先責任者レコードの[メモ&添付ファイル]関連リストに添付されるようにするには、以下の手順に従います。
手順:
  1. 前のセクションで作成したConnectオブジェクトを開きます。
  2. ページの下部までスクロールして、[添付]セクションを表示します。
  3. [DocuSignエンベロープを添付する]チェックボックスをオンにします。
  4. さらに、[完了したエンベロープのみ]チェックボックスをオンにします。
User-added image

この時点で、[Connectオブジェクト]の一覧が以下のようになります。

User-added image

Connectについてのまとめ
  • カスタムConnectオブジェクトの[一般設定]セクションには、有効/無効(アクティブ/非アクティブ)[完了したエンベロープのみ]の2つの属性があります。
  • ワークフローを実行するには、そのConnectオブジェクトが[アクティブ]であることを確認してください([アクション]>[アクティブ化])。
  • 「Bulk Send Recipient Status」ワークフローでは、[完了したエンベロープのみ]チェックボックスをオフのままにします。これにより、エンベロープステータスが「送信」のときにもこのワークフローが実行されます。
  • 完了した文書を添付して緊急連絡先の情報を更新するワークフローは、エンベロープステータスが「完了」になったときにのみ実行されるように[完了したエンベロープのみ]チェックボックスをオンにします。
 

一括送信機能で使用するCSVファイルを変更する

 

この手順を行う場合は、「一括送信の受信者リストのCSVファイルを生成する」セクションの説明を参照してください。

「複数の受信者への一括送信」の説明に従ってDocuSign Webアプリケーションからエンベロープを一括送信するときに、(i)アイコン(情報アイコン)をクリックしてサンプルのCSVファイルをダウンロードします。サンプルのCSVファイルを編集して、Salesforceレポートからの情報がDocuSignエンベロープの対応するフィールドに事前記入されるようにします。また、不要な情報の列(DocuSignエンベロープ内に取り込まないSalesforceデータの列など)をすべて削除しておきます。

入力ミスを避けるため、前の手順でエクスポートしたSalesforceレポートからデータをコピーして、DocuSignテンプレートからダウンロードしたCSVファイルに貼り付けることをお勧めします。さらに、実際にエンベロープを大量の受信者に一括送信する前に、CSVファイルをテストしてください。
 

一括送信を実行する

「複数の受信者への一括送信 - DocuSign eSignatureユーザーガイド」の説明に従ってDocuSign Webアプリケーションからエンベロープを一括送信します。ただし、「一括送信機能で使用するCSVファイルを変更する」の手順を忘れずに行ってください。



Salesforce内でエンベロープステータスを確認する

Connectオブジェクトを設定し、DocuSign Webアプリケーションからエンベロープを一括送信したら、DocuSign Connect for Salesforceにより各エンベロープに対する更新情報がSalesforce側に発行されます。この更新情報には、エンベロープステータス、マッピングしたDocuSignフィールドのデータ、および署名が完了した文書が含まれます。これらの更新アクションは、受信者およびエンベロープのイベントに基づいて実行されます。

送信したエンベロープの署名が完了すると、エンベロープの文書が取引先責任者レコードに添付され、「潜在的なリスクに関する免責条項」文書に各会員が記入した情報でSalesforceのカスタム項目が更新されて、エンベロープステータスをSalesforce内で確認できるようになります。これらのSalesforceレコードやDocuSign受信者ステータスレイアウトにアクセスできるすべてのユーザーが、このエンベロープのステータスを確認できます。

DocuSignステータスの関連リストをSalesforceレイアウトに追加する方法については、「DocuSign eSignature for Salesforce管理者ガイド」の「DocuSignステータスの関連リストをSalesforceレイアウトに追加する」を参照してください。


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

付録: エンベロープカスタムフィールドマッピングと一括送信機能

概要
ここでは、上記手順公開後の追加情報について説明します。一括送信機能でエンベロープカスタムフィールドを使用すると、上記手順よりも効率的にエンベロープをSalesforceにマッピングできます。エンベロープカスタムフィールドを使用する場合、文書レベルのカスタムフィールドを文書上に追加する必要がなく、文書カスタムフィールドを使用するよりも効率的にエンベロープとSalesforceを関連付けることができます。

ただし、エンベロープカスタムフィールドには制限事項があることに注意してください。たとえば、現在のところ、DocuSignアカウントでエンベロープカスタムフィールドを有効にすると、そのアカウントから送信されるすべてのエンベロープにエンベロープカスタムフィールドが使用されます。また、(この記事の執筆時点では)DocuSign eSignature for Salesforceからの送信時にエンベロープカスタムフィールドを作成できない、DocuSign for iOSモバイルアプリでエンベロープカスタムフィールドを追加できない、などの制限事項があります(DocuSign Webアプリケーションでは追加できます)。

エンベロープカスタムフィールドを使用するメリットとしては、DocuSign Webアプリケーションの[管理]タブでエンベロープをフィルタリングできる点があげられます(このセクションの「レポートとエンベロープカスタムフィールド」を参照)。

上記手順との相違
  1. カスタムのSalesforceレポートを作成する - 上記手順と相違ありません。
  2. DocuSignテンプレートを作成する - 上記手順に加えて、テンプレートにエンベロープカスタムフィールドを追加する必要があります。
  3. カスタムのDocuSign Connectワークフローを作成する - 文書カスタムフィールドの代わりにエンベロープカスタムフィールドを使ってDocuSignデータをSalesforce側に書き戻します。それ以外の手順に相違はありません。 
    1. 受信者ステータスを更新する - 後述の「エンベロープカスタムフィールドとDocuSignカスタムConnectワークフロー」を参照してください。
    2. Salesforceレコード(項目の値)を更新する - 上記手順と相違ありません。
    3. 完了した文書を添付する - 上記手順と相違ありません。
  4. 一括送信機能で使用するCSVファイルを変更する - 上記手順とほぼ同じですが、エンベロープカスタムフィールドをConnectオブジェクトにマッピングするための列をCSVファイルに追加する必要があります。このトピックの手順5.を参照してください。エンベロープカスタムフィールドはCSVファイルの列見出しで役割名(「Employee::Name」の「Employee」など)が追加されず、テンプレートでのフィールド名(「EmployeeID」など)がそのまま列見出しになります。
  5. 一括送信を実行する - 上記手順とほぼ同じですが、エンベロープカスタムフィールドへの入力または値の選択が必要です。
  6. Salesforce内でエンベロープステータスを確認する - 上記手順と相違ありません。

エンベロープカスタムフィールドとDocuSignカスタムConnectワークフロー
エンベロープカスタムフィールドを使用する場合に最も重要な手順となるのが、DocuSign Connect設定で文書カスタムフィールドではなくエンベロープカスタムフィールドをSalesforce項目にマッピングすることです。

「カスタムのDocuSign Connectワークフローを作成する」の手順に従って操作し、手順10.で以下の操作を行います。 

[対象の選択]セクションで、以下の設定を行います。 ほかの手順は「カスタムのDocuSign Connectワークフローを作成する」と同じです。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



Originally created by Derrick Tran, Sr. Product Consultant - DocuSign Professional Services Team.
Updated in 2019 by Matthew Case, Tier II Technical Support.