非同期支払ゲートウェイアダプターのセットアップ
支払トランザクションの場合、非同期支払いゲートウェイアダプターとのインターフェースになるように Salesforce を設定できます。
| 使用可能なバージョン: Salesforce Summer ’20 以降 |
| API 49.0 以降で使用できます。 |
commercepayments API にアクセスするには、PaymentPlatform 組織権限が必要です。
-
Salesforce サイトを作成します。[設定] の [クイック検索] ボックスに「サイト」と入力します。[サイトおよびドメイン] で [サイト] を選択します。「Salesforce サイトのセットアップ」を参照してください。
サイトの公開アクセス設定を [支払 API へのゲストアクセス] に設定します。
- 支払ゲートウェイアダプターの Apex クラスを作成します。非同期支払ゲートウェイでは、非同期アダプターと同期アダプターを実装する必要があります。Apex でのゲートウェイアダプターの作成については、「非同期ゲートウェイアダプターの作成」および「同期ゲートウェイアダプターの作成」を参照してください。
-
UI で指定ログイン情報を作成します。
- [設定] で、[クイック検索] ボックスに「指定ログイン情報」と入力し、[新規] を選択します。
- 必須項目に入力してください。URL には、支払ゲートウェイの URL を入力します。
-
支払ゲートウェイプロバイダーを作成します。PaymentGatewayProvider とは、トランザクションを処理するときに Salesforce Payments が通信する支払ゲートウェイに関する詳細を保存するオブジェ��トです。
-
「OAuth を使用して Connect REST API に接続する」の手順に従ってアクセストークンを生成します。
レスポンスには、access_token プロパティで指定されたアクセストークンと、instance_url プロパティで指定されたサーバーインスタンスが含まれます。この情報を使用して API コールを行い、支払ゲートウェイプロバイダーを作成します。
-
instance_url.のドメインを使用して、リソースへの POST コールを実行します。たとえば、https://instance_name.my.salesforce.com/services/data/vapi_version/tooling/sobjects/PaymentGatewayProvider です。
このペイロードをリクエストボディとして使用し、value を正しいデータに置き換えます。
1{ 2 "ApexAdapterId": "value", 3 "DeveloperName": "value", 4 "MasterLabel": "value", 5 "IdempotencySupported": "value", 6 "Comments": "value" 7} 8 9Example: 10{ 11 "ApexAdapterId": "01pxx0000004UU8AAM", 12 "DeveloperName": "MyNewGatewayProvider", 13 "MasterLabel": "My New Gateway Provider", 14 "IdempotencySupported": "Yes", 15 "Comments": "Custom made gateway provider." 16}
-
「OAuth を使用して Connect REST API に接続する」の手順に従ってアクセストークンを生成します。
-
支払ゲートウェイレコードを作成します。PaymentGateway オブジェクトには、外部支払ゲートウェイへの接続に関する情報が保存されます。レコードには次の項目値が必要です。
- 支払ゲートウェイ名: 外部支払ゲートウェイの名前。
- 業者のログイン情報 ID: 作成した指定ログイン情報の ID。
- 支払ゲートウェイプロバイダーID: 作成した支払ゲートウェイプロバイダーの ID。
- 状況: 有効
-
外部支払ゲートウェイの標準通知トランスポート設定で URL を指定することによって Web フックを作成します。外部支払ゲートウェイでは Web フックを使用して通知を HTTP POST メッセージとして非同期支払ゲートウェイアダプターに送信します。
Web フックは、サイトのエンドポイントと支払ゲートウェイプロバイダー ID の組み合わせです。
-
domain をサイトのドメインと URL に置き換え、サイトのエンドポイントとして次の URL を使用します。次に例を示します。
https://MyDomainName.my.salesforce-sites.com/solutions/services/data/v58.0/commerce/payments/notify
- 支払ゲートウェイプロバイダーの ID を見つけて、?provider=ID クエリパラメーターをエンドポイントに追加します。例: https://MyDomainName.my.salesforce-sites.com/solutions/services/data/v58.0/commerce/payments/notify?provider=0cJR00000004CEhMAM
- 外部支払ゲートウェイの標準通知設定に Web フックを入力します。
-
domain をサイトのドメインと URL に置き換え、サイトのエンドポイントとして次の URL を使用します。次に例を示します。