本記事では、D3Workerを用いて既存のPDFをDocuSignにアップロードし、署名後kintone等に格納する方法についてご紹介します。
D3Workerの以下のサービスを使用します。
- アップロード文書: 手元にある署名前のPDF、またDocuSignから返される署名後のPDFをD3Workerに送ります。
- DocuSign - ワーク実行: 署名前のPDFをDocuSignにアップロードし、署名が済み次第別の処理(今回はkintoneにPDFを保管)を実行します。
- kintone[保管]: 署名後のPDFをkintoneに送り、PDFを添付ファイルとして新たなレコードを作成します。
D3Workerの設定
D3Workerの設定は、
①手元のPDFをアップロードしてDocuSignに送るためのワーク
②署名済みPDFをkintoneに保管するためのワーク
の2つに分けて行います。
①のワークに属するサービスの中で②のワークを設定するため、
先に②に使用するサービス、エンベロープ、ワークを設定します。
署名済みPDFをkintoneに保管するための設定
サービス設定
「アップロード文書」を選択してサービスを作成します。
詳細はこちらの記事をご参照ください。
次に、「kintone[保管]」を選択してサービスを作成します。
以下のように設定します。
接続情報
項目名 | 説明 |
---|---|
URL | kintone組織のURLを入力します。 |
アプリのID | 署名済みPDFを格納するアプリのIDを入力します。 |
APIトークン | 署名済みPDFを格納するアプリのAPIトークンを入力します。 |
文書ファイルとデータファイル
項目名 | 説明 |
---|---|
文書ファイル | 署名済みPDFを格納するフィールドコードを入力します。 |
データファイル | 帳票の作成に使用したデータファイルを格納するフィールドコードを入力します。今回は指定しません。 |
その他のフィールド: 今回は指定しません。
エンベロープ設定
文書化サービスに「アップロード文書」を基に作成したサービスを指定します。
保管サービスに「kintone[保管]」を基に作成したサービスを指定します。
ワーク設定
データソース: このワークではDocuSignのエンベロープIDを受け取るため、そのためのフィールドを1つ用意します。ここではDocuSignEnvelopeIDとしています。
エンベロープ: 作成したエンベロープを選択し、エンベロープフィールドにDocuSignEnvelopeIDを、「アクティブ化するフィールド」に「エンベロープフィールド」を指定します。また「ELSEとして使用する」にチェックを入れます。
文書とデータのマッピング: 署名されたPDFがアップロードされる(文書を生成しない)ので、全項目を空のままにします。
手元のPDFをアップロードしてDocuSignに送るための設定
サービス設定
「アップロード文書」を選択してサービスを作成します。
詳細はこちらの記事をご参照ください。
今回はリクエストパラメータを「file」としています。
次に、「DocuSign - ワーク実行」を選択してサービスを作成します。
詳細はこちらの記事をご参照ください。
また、上の記事で説明されていない部分は以下のように設定します。
署名完了の期限
項目名 | 説明 |
---|---|
期限 | DocuSignに署名前のPDFをアップロードしてから、署名が済むまでワークの実行を待つ時間を指定します。ここで指定した時間を過ぎてから署名しても、その後のワークは実行されません。 |
DocuSignエンベロープ終了後に実行するワーク
項目名 | 説明 |
---|---|
実行するワーク | PDFに署名がなされたあとに実行されるワーク名を入力します。kintoneへPDFを格納するためのワークを指定します。 |
ファイルのパラメータ名 |
ワーク実行のリクエストの際に署名済みPDFを渡すパラメータ名を指定します。 「完了証明書を付ける」にチェックを入れると、署名完了後のPDFの最終ページにDocuSignから発行される完了証明書を付けることが可能です。 |
データCSV | 実行されるワークに受け渡すCSVデータを定義します。 |
エンベロープ設定
文書化サービスに「アップロード文書」を基に作成したサービスを指定します。
配送サービスに「DocuSign - ワーク実行」を基に作成したサービスを指定します。
ワーク設定
データソース: このワークでCSVデータは使用しないため、フィールドは空のままにします。
※「文字コード」をリクエストの際に用いるCSVファイルのエンコーディングと同じものにしてください。
エンベロープ: 作成したエンベロープを選択し、「アクティブ化するフィールド」に「データソースの行番号」を指定、また「ELSEとして使用する」にチェックを入れます。
文書とデータのマッピング: 既存の文書をアップロードする(文書を生成しない)ので、全項目を空のままにします。
実際の流れ
以下のURLで、既存文書を用いたD3Workerへのリクエストが行えます。(○○○の部分にはユーザー毎に設定されている固有のアルファベット文字列が入ります)
https://d3w.ap.oproarts.com/d3w/a/○○○/al/facade/upload1.html
認証
ユーザーIDとパスワードを入力します。
帳票データ
ワークにワーク①を指定します。
ワーク①でのCSVデータの役割はエンベロープを実行することであり、データの内容自体は処理に関係しないので、一行の適当な内容を持ったCSVファイルを選択します。(以下例)
※ここでは行数の分だけワークが実行されるように設定しているので、CSVファイルの内容は1行にしてください。
※CSVファイルの文字エンコードはワーク①のデータソース設定で選択したものと同じものにしてください。ここではシフトJISを用いています。
リクエストパラメータはアップロード文書サービスで指定したリクエストパラメータ名を入力します。
署名対象のPDFを選択したら、「実行」をクリックします。
DocuSign画面に移ると、要署名の文書が追加されているので、署名を済ませます。
その後kintoneのアプリを見ると、署名済みPDFの添付されたレコードが追加されています。
※この処理には少し時間がかかります
署名されたPDFは以下です。
おわりに
いかがでしたでしょうか。
D3Workerを用いてDocuSignへのPDFアップロードから署名後の文書保管までを自動化することで、契約業務について大幅な時間短縮が期待できます。
本記事がD3WorkerとDocuSignを連携する際の参考になれば幸いです。