フローを設計してテストする
学習の目的
この単元を完了すると、次のことができるようになります。
- Stripe から Salesforce にデータを自動的に同期するフローを設計する。
- フローをテストしてデータが正常に同期することを確認する。
この単元では、まず MuleSoft Composer を使用して Stripe の顧客データを Salesforce と自動的に同期するフローを作成する方法を学習します。次に、フローをテストしてデータが正常に同期することを確認します。
MuleSoft Composer ではデフォルトで作業が検証され、手順の各ステップにアプリケーション内コンテキストヘルプが表示されます。たとえば、システムに接続を追加すると、MuleSoft Composer で接続がテストされるため、正常に機能することを確認したうえで次のステップに進むことができます。また、各ステップ内の必須項目を入力するように MuleSoft Composer から求められます。これでフローのビルドが簡単になります。
フローの作成のベストプラクティスは、数ステップごとにテストを繰り返しながらフローを完成させることです。
次のデモ動画で、MuleSoft Composer を使用して Stripe を Salesforce に接続する方法をご覧ください。
フローを設計する
Stripe の顧客データを Salesforce と自動的に同期するフローを設計する準備ができました。
次の手順に従ってフローを設計します。
NTO 組織から MuleSoft Composer を起動します。
- ユーザー名とパスワードを使用して NTO 組織にログインします。
- アプリケーションランチャーに
Composer
と入力して [MuleSoft Composer] を選択します。
新しいフローを作成します。
- [Create New Flow (新規フローの作成)] をクリックします。
- デフォルトのフロー名の横にある鉛筆アイコンをクリックします。
- フローに
Sync Stripe Customers with NTO Org Accounts
(Stripe の顧客を NTO 組織の取引先と同期) と名前を付け、[Save (保存)] をクリックします。
テストモード Stripe 接続を使用してフローのトリガーを作成します。
- [Stripe] をクリックします。
- [Add new Stripe connection (新しい Stripe 接続を追加)] をクリックします。
- 次の値を使用してテストモード Stripe 接続を設定し、[Create (作成)] をクリックします。MuleSoft Composer で接続が自動的にテストされます。エラーメッセージが表示されていない場合は接続が確立され、フローの最初のステップ (トリガー) が表示されます。
- Connection Display Name (接続表示名):
Test NTO Stripe
(テスト NTO Stripe) - API Key (API キー): テキストファイルからテストモードのシークレット API キーを貼り付けます。
- Connection Display Name (接続表示名):
- デフォルトのステップ名の横にある鉛筆アイコンをクリックします。
- ステップに
Get new charge
(新規請求を取得する) と名前を付け、[Save (保存)] をクリックします。
Stripe に新しい請求が追加されるたびにフローを開始するトリガーを設定します。
- [Choose an event that starts this flow (このフローを開始するイベントを選択)] 項目をクリックして、[New charge (新規請求)] を選択します。
- [Save (保存)] をクリックしてフローを保存します。
Stripe の請求に関連付けられている顧客を検索するためのフローの 2 番目のステップを作成します。
- プラスアイコンをクリックしてステップを追加します。
- [Stripe] を選択して、[Test NTO Stripe (テスト NTO Stripe)] を選択します。
- ステップに
Find customer for charge
(請求先の顧客を検索する) と名前を付け、[Save (保存)] をクリックします。
Stripe の請求に関連付けられている顧客を検索するための 2 番目のステップを設定します。
- [Action (アクション)] 項目をクリックして、[Find customer (顧客を検索)] を選択します。[Customer ID (顧客 ID)] は必須項目のため、自動的に表示されます。
- [Customer ID (顧客 ID)] 項目で、フローのステップ 1 の [CustomerId] を選択します。
Stripe の顧客名で NTO 組織の取引先を取得するためのフローの 3 番目のステップを作成します。
- プラスアイコンをクリックしてステップを追加します。
- [Salesforce] をクリックします。
- [Add new Salesforce connection (新しい Salesforce 接続を追加)] をクリックして、NTO Sandbox 組織への接続を作成します。
- この接続に
NTO sandbox org
(NTO Sandbox 組織) と名前を付けます。 - [This is a sandbox organization (これは Sandbox 組織です)] チェックボックスをオンにして、[Create (作成)] をクリックします。
- NTO Sandbox 組織のユーザー名とパスワードを入力して、[Log In (ログイン)] をクリックします。
- [Allow (許可)] をクリックして、MuleSoft Composer に「基本情報へのアクセス」「データへのアクセスと管理」「ユーザーに代わっていつでも要求を実行」権限を付与します。MuleSoft Composer で接続が自動的にテストされます。エラーメッセージが表示されていない場合は接続が確立され、フローの 3 番目のステップが表示されます。
- ステップに
Get accounts
(取引先を取得する) と名前を付け、[Save (保存)] をクリックします。
Stripe の顧客名で NTO 組織の取引先を取得するための 3 番目のステップを設定します。
- [Action (アクション)] 項目をクリックして、[Get records (レコードを取得)] を選択します。
- [Record Type (レコードタイプ)] 項目に、
Account
(取引先) と入力します。[Filter records (レコードを絞り込む)] セクションでは、デフォルトで [All conditions must be met (AND) (すべての条件を満たす必要がある (AND))] が選択されています。 - 項目として [Account Name (取引先名)]、演算子として [Equals (次の文字列と一致する)]、およびフローのステップ 2 の [Name (名前)] を選択します。
Stripe の顧客名と同じ名前の取引先が NTO 組織に存在するかどうかを確認するための If/Else ブロックを作成して設定します。
- プラスアイコンをクリックしてステップを追加します。
- [If/Else Block (If/Else ブロック)] をクリックします。
- [Add Conditions (条件を追加)] をクリックします。デフォルトで [All conditions must be met (AND) (すべての条件を満たす必要がある (AND))] が選択されています。
- 項目としてフローのステップ 3 の [List of Account (取引先のリスト)] を選択し、演算子として [Is empty (値なし)] を選択して、[Save (保存)] をクリックします。この条件を満たしている場合、Stripe の顧客に対応する取引先が NTO 組織に存在しないことになります。そのため、顧客に対応する取引先が次のステップで作成されます。
Stripe の顧客を NTO 組織の取引先と同期するためのフローの 4 番目のステップを作成します。
- If/Else ブロック内のプラスアイコンをクリックして、ステップを追加します。
- [Salesforce] をクリックします。
- [NTO sandbox org (NTO Sandbox 組織)] をクリックし、NTO Sandbox 組織に接続します。
- ステップに
Sync customers with accounts
(顧客を取引先と同期) と名前を付け、[Save (保存)] をクリックします。
Stripe の顧客を NTO 組織の取引先と同期するための 4 番目のステップを設定します。
- [Action (アクション)] 項目をクリックして、[Create record (レコードを作成)] を選択します。
- [Object Type (オブジェクト種別)] 項目に
Account
(取引先) と入力します。[Account Name (取引先名)] は必須項目のため、自動的に表示されます。 - [Add Fields (項目を追加)] をクリックし、[Account Phone (取引先 電話)]、[Billing Street (町名・番地(請求先))]、[Billing City (市区郡(請求先))]、[Billing State/Province (都道府県(請求先))]、[Billing Country (国(請求先))]、[Billing Zip/Postal Code (郵便番号(請求先))] を選択して、[Add (追加)] をクリックします。
- Sales Cloud の取引先項目を、フローのステップ 2 でキャプチャした顧客の対応する項目に次のようにマップします。
- Account Name (取引先名) = ステップ 2 の [Name (名前)]
- Account Phone (取引先 電話) = ステップ 2 の [Phone (電話)]
- Billing Street (町名・番地(請求先)) = ステップ 2 の [Address (住所)] | [Line1 (行1)]
- Billing City (市区郡(請求先)) = ステップ 2 の [Address (住所)] | [City (市区郡)]
- Billing State/Province (都道府県(請求先)) = ステップ 2 の [Address (住所)] | [State (都道府県)]
- Billing Country (国(請求先)) = ステップ 2 の [Address (住所)] | [Country (国)]
- Billing Zip/Postal Code (郵便番号(請求先)) = ステップ 2 の [Address (住所)] | [Postal Code (郵便番号)]
- フローを保存します。フロー全体は次のようになります。
次は、フローのテスト方法を学習します。
フローをテストする
フローを設計したら、エンドツーエンドでテストしてデータが問題なく同期することを確認する必要があります。テストは概して 10 分以内に終了します。テストが完了した時点、または 10 分を経過した時点でテストが停止します。テストに必要なアプリケーションとデータを揃えたうえでテストを開始することをお勧めします。
このユースケースでは、Stripe で新しい請求が作成されるとフローがトリガーされます。そのため、顧客とその顧客の支払を Stripe で入力するように準備します。支払に関連付けられている顧客に対応する取引先が Sales Cloud に存在しない場合は、NTO 組織に新規取引先として表示されます。そのため、取引先が Sales Cloud に正常に追加されたことを確認する準備をしておきます。顧客に対応する取引先が存在する場合は、Sales Cloud では新規取引先は作成されません。このシナリオを確認する準備もしておきます。
次の手順に従ってフローをテストします。
- [Sync Stripe Customers with NTO Org Accounts (Stripe の顧客を NTO 組織の取引先と同期)] フローで [Test (テスト)] をクリックします。フローが参照のみモードになります。
メモ: テストの実行中に何らかの理由で停止する場合は、[Stop Test (テストを停止)] をクリックします。 - Stripe アカウントにログインします。
- [Viewing test data (テストデータの表示)] をクリックします。テストモードに入りました。
- [Customers (顧客)] をクリックして [Add customer (顧客を追加)] をクリックします。
- 次の値で新しい顧客を追加して、[Add customer (顧客を追加)] をクリックします。
- Name (名前):
Jane Doe
- Email (メール):
jane.doe@acme.com
- Billing email (メール(請求先)): 取引先のメールと同じ
- Country (国):
United States
- Address (住所):
501 Fifth Avenue
- City (市区郡):
New York
- State (都道府県):
New York
- Zip (郵便番号):
10017
- Phone (電話):
212-333-4444
- Shipping details (配送の詳細): 請求の詳細と同じ
- Name (名前):
- [Payments (支払)] をクリックして、[Create payment (支払を作成)] をクリックします。
-
[One-time (1 回)] を選択し、次の値で新しい支払を追加してから、[Submit payment (支払を送信)] をクリックします。
- Amount (金額):
199.00 USD
- Customer (顧客):
jane.doe@acme.com
- Statement descriptor (明細書表記):
acme.com
- Card number (カード番号):
4242-4242-4242-4242
- Expiration date (有効期限): 任意の将来の日付
- CVC: 任意の 3 桁の数字
- Amount (金額):
- フローに戻り、テストが完了するまで待機します。フローのすべてのステップに緑のチェックマークが表示されたら、フローが正常に実行されたことを意味します。[Test Output (テスト出力)] セクションで、テスト用に入力したレコード値を確認します。
- NTO Sandbox 組織の Sales Cloud にログインし、[取引先] タブに移動して、Stripe の顧客に対応する新しい取引先が作成されていることを確認します。
- [Sync Stripe Customers with NTO Org Accounts (Stripe の顧客を NTO 組織の取引先と同期)] フローで [Test (テスト)] を再びクリックします。
- 自分の Stripe アカウントで、[New payment (新規支払)] をクリックします。
-
[One-time (1 回)] を選択し、次の値で新しい支払を追加してから、[Submit payment (支払を送信)] をクリックします。
- Amount (金額):
599.00 USD
- Customer (顧客):
jane.doe@acme.com
- Statement descriptor (明細書表記):
acme.com
- Amount (金額):
- フローに戻り、テストが完了するまで待機します。フローの最初の 3 つのステップに緑のチェックマークが表示され、4 番目のステップには表示されない場合は、フローが正常に実行されたことを示しています。これは、Stripe の顧客が取引先として Sales Cloud に存在しているので、ステップ 4 (取引先の作成) は実行されなかったためです。[Test Output (テスト出力)] セクションをもう一度見てみましょう。ステップ 4 にはテスト出力はありません。
- NTO Sandbox 組織の Sales Cloud にログインし、[取引先] タブに移動して、Stripe の顧客に対応する取引先がすでに存在していたため、新規の取引先は作成されていないことを確認します。
- ステップ 1 ~ 14 を繰り返して、任意の新規顧客に関連付けられている 2 件の新規請求をテストします。フローが問題なく動作するはずです。
お疲れさまでした。次の単元では、本番環境でフローをアクティブ化して監視し、トラブルシューティングする方法を学習します。