Stripe Connector for Salesforce Order Management をインストールする
Stripe Connector を設定します。
Salesforce Order Management Connector をインストールする前に
- コネクターをインストールしてマッピングする Salesforce インスタンス内の組織と B2C コマースストアを指定します。
- インストールプロセスを開始する前に、エンタイトルメントと前提条件を確認します。
- 以下の連携制限にご注意ください。
- B2C ストアフロントは 1 つのみサポート
- 1 回限りの手動キャプチャーにのみ対応
- オーバーキャプチャーやマルチキャプチャーなどの複雑なシナリオは対応不可
インストール
Salesforce Order Management との連携の詳細については、Stripeサポートまでお問い合わせください。
Install for Admins Only (管理者のみにインストール) が選択されていることを確認してから、Install (インストール) をクリックします。
サードパーティーのウェブサイトとの間のアクセスを承認します。Grant Access (アクセス権を付与) チェックボックスを選択して、Continue (続行) をクリックします。
インストールに時間がかかる場合は、パッケージがインストールされたことを知らせるメールが届きます。
Setup (設定) > Apps (アプリ) > Packaging (パッケージ) > Installed Packages (インストールされたパッケージ) に移動し、パッケージがインストールされていることを確認します。
設定
以降のセクションでは、実装を設定する方法を説明します。
Stripe Synchronous Payment Gateway Adapter を設定する
Set Up a Synchronous Payment Gateway Adapter in Salesforce (日本語ページ: Salesforce での同期支払ゲートウェイアダプタの設定: https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_commercepayments_sync_adapter_setup.htm) のステップ 3 の手順に従い、Payment Gateway Provider を作成します。ペイロードとして推奨する値は以下のとおりです。
{ "ApexAdapterId": "Output of this Query: SELECT Id FROM ApexClass WHERE Name IN ('StripeAdapter')", "DeveloperName": "StripeProvider", "MasterLabel": " StripeProvider", "IdempotencySupported": "No", "Comments": "Stripe Synchronous Payment Gateway Adapter" }
Set Up a Synchronous Payment Gateway Adapter in Salesforce (日本語ページ: Salesforce での同期支払ゲートウェイアダプタの設定: https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_commercepayments_sync_adapter_setup.htm) のステップ 4 の手順に従い、Payment Gateway レコードを作成します。
推奨値:
フィールドのラベル 値 名前 SALESFORCE_PAYMENTS Merchant Credential ID (加盟店認証情報 ID) このクエリの出力: SELECT Id FROM NamedCredential WHERE DeveloperName = 'StripeAPI'
Payment Gateway Provider クエリの出力 (Stripe Synchronous Payment Gateway Provider が ‘StripeProvider’ 以外である場合はクエリを変更します): SELECT Id FROM PaymentGatewayProvider WHERE DeveloperName ='StripeProvider'
ステータス 有効
Stripe Asynchronous Payment Gateway Adapter を設定する
Set Up an Asynchronous Payment Gateway Adapter in Salesforce (日本語ページ: Salesforce での非同期支払ゲートウェイアダプタの設定: https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_commercepayments_async_adapter_setup.htm) の手順に従い、Stripe Asynchronous Payment Gateway Adapter を設定します (Stripe Synchronous Payment Gateway Adapter ですでに同じ手順を実行している場合は、ステップ 2 と 3 をスキップします)。非同期の Payment Gateway Provider を作成するには、上記のリンクの手順のステップ 4 を実行します。ペイロードとして推奨する値は以下のとおりです。
{ "ApexAdapterId": "Output of this Query: SELECT Id FROM ApexClass WHERE Name IN (‘StripeAsyncAdapter’)", "DeveloperName": "StripeAsyncAdapter", "MasterLabel": " StripeAsyncAdapterProvider ", "IdempotencySupported": "No", "Comments": "Stripe Asynchronous Payment Gateway Adapter" }
Set Up an Asynchronous Payment Gateway Adapter in Salesforce (日本語ページ: Salesforce での非同期支払ゲートウェイアダプタの設定: https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_commercepayments_async_adapter_setup.htm) のステップ 5 (支払ゲートウェイレコードを作成します) の手順に従い、Stripe Asynchronous Payment Gateway レコードを Salesforce に登録します。
挿入 (初めてゲートウェイレコードを作成する場合) または更新 (Synchronous Payment Gateway Adapter の設定時にすでにゲートウェイレコードを作成した場合) するフィールドに推奨される値は以下のとおりです。
フィールドのラベル 値 名前 SALESFORCE_PAYMENTS Merchant Credential ID (加盟店認証情報 ID) このクエリの出力: SELECT Id FROM NamedCredential WHERE DeveloperName = 'StripeAPI'
Payment Gateway Provider クエリの出力 (Stripe Synchronous Payment Gateway Provider が ‘StripeProvider’ 以外である場合はクエリを変更します): SELECT Id FROM PaymentGatewayProvider WHERE DeveloperName ='StripeAsyncAdapter'.
ステータス 有効 ステップ 6 の手順に従い、Stripe 用の Webhook URL を設定します。Webhook URL の通常の形式は、一般にアクセス可能な HTTPS URL です。例: https://mydomainname.my.salesforce-sites.com/subdomain/services/data/v[Replace_ME_version]/commerce/payments/notify%20?provider=<ID>
SELECT Id FROM PaymentGatewayProvider WHERE DeveloperName = ‘StripeAsyncAdapter’
組織の API バージョン 49.0 以降と[Replace_ME_version]
以下のステップに従って Stripe に Webhook URL を登録します。
- Stripe ダッシュボードにログインします。
- ワークベンチの Webhook タブに移動します。
- 新しいエンドポイントを作成するをクリックします。
charge.
、refunded charge.
、succeeded charge.
のイベントタイプを追加して、続行をクリックします。captured
Webhook URL を入力してから、送信先を作成するをクリックします。
Webhook 署名シークレットをコピーし、以降の使用に備えて保存します。
Stripe OM Setup を使用して設定を完了する
以降のセクションでは、実装の設定を完了する方法を説明します。
Stripe アカウントで Stripe OMS Connector を承認する
Salesforce Order Management org で、Stripe Setup アシスタントを実行し、組織を Stripe アカウントに連結します。
アプリケーションランチャーをクリックして、**View All (すべて表示)**をクリックします。
Stripe OM Setup をクリックします。
**Get Started (始める)**をクリックします。
本番環境に切り替えます。本番データに影響を与えずに Stripe の実装をテストするには、本番環境を無効のままにして、Stripe Payment Gateway で実際の取引処理を開始する準備が整ったら、本番環境を有効にすることをお勧めします。テスト環境と本番環境の間で切り替えるには、このステップに戻って接続を再認証します。本番環境を使用していて、テスト環境に戻す場合には、再認証は必要ありません。
**Authorize (承認する)**をクリックします。
これにより、Salesforce が Stripe データにアクセスできるようになるため、支払いのキャプチャーと返金が可能になります。Stripe のウェブサイトが表示され、承認プロセスを完了します。このときにログイン情報の入力や、Stripe アカウントの本番環境利用の申請が必要になる場合があります。完了したら、このページにリダイレクトされるので、設定プロセスを完了します。承認が完了すると、次のメッセージが表示されます。
Stripe Asynchronous Payment 処理用に Webhook 署名シークレットを保存します。
- Webhook 署名シークレット値を署名シークレットに追加します。
- 更新をクリックします。
- 挿入の成功を確認するメッセージが上部に表示されます。**Finish (完了)**をクリックします。
既存の注文管理フローを変更する
Stripe での認証には OAuth が使用され、Stripe が OAuth プロバイダーとなります。Salesforce は、Stripe を OAuth プロバイダーとしてサポートしていません。このため、OAuth トークンは、呼び出し可能なアクション getAccesToken を利用するカスタム実装を使用して取得されます。これは、Stripe OM Connector Managed Package の一部としてパッケージ化されています。
Stripe への支払い/返金を開始するフローを特定し、フロー内の Ensure Funds (売上を確保する) アクションの直前のアクションに呼び出し可能メソッド getAccessToken を含めます (以下の例を参照)。変更が必要となるフローは、次の例に示すものとは異なります。
- Setup (設定) > Process Automation (プロセスの自動化) > Flows (フロー) に移動します。
- 資金のキャプチャーに使用する有効フローを選択します。
- 呼び出し可能なメソッド
getAccessToken
を呼び出す新しいアクションを作成します。
- Get Access Token (アクセストークンの取得) アクションが Capture Funds (売上のキャプチャー) アクションより前に行われていることを確認します。完了したら、この新しいバージョンの Flow (フロー) を保存して、プロセスで新しいバージョンが使用されるようにします。
- これで、Order Management org で支払い方法として Stripe Payment を使用できるようになりました。Salesforce B2C Commerce Cloud から注文を行い、Salesforce Commerce Payments に関連付けられている支払い方法の取引のキャプチャーや返金などを実行できます。