支払処理と支払方法を構成する
学習の目的
この単元を完了すると、次のことができるようになります。
- Order Management を使用して支払処理を実装する 2 つの方法を説明する。
- 支払ゲートウェイを構成するために実行する必要がある手順を挙げる。
- Salesforce Payments でサポートされる支払方法を挙げる。
- 代替支払方法をどのように追加するか説明する。
支払処理
支払は、サードパーティの決済プロバイダーの利用、資金の承認と捕捉、返金の実施など、注文処理に伴う資金面を包含します。支払は Order Management システムの重要な部分です。Order Management で支払を捕捉して返金を実施できるようにするために、Cloud Kicks のシステム管理者の Linda Rosenberg は支払コンポーネントを統合する必要があります。ここではいくつかの選択肢があります。その代表的な方法は、AppExchange から Salesforce Payments をアップロードすること、あるいは支払ゲートウェイを手動で構成することです。
支払処理の実装方法を検討した後、使用できる支払方法と新規の支払を追加する方法を確認します。
Salesforce Payments
Order Management に支払を簡単に統合するために、Linda は AppExchange から Salesforce Payments パッケージを入手してインストールします。Salesforce Payments は、Storefront Reference Architecture (SFRA) のフロントエンドと根幹的な B2C Commerce のバックエンドコンポーネントに統合します。Linda は Salesforce Payments に接続された Stripe、PayPal、Apple Pay のアカウントを Salesforce Order Management に結び付け、注文処理機能を補完することができます。Payments パッケージをインストールすると、付属の Payments Setup アプリケーションに、支払アカウントをプロバイダーに結び付ける手順が示されます。
詳細は、Trailhead の「管理者向けの Salesforce Payments」モジュールを参照してください。
支払ゲートウェイを構成する
Linda は Stripe や PayPal などの支払ゲートウェイを手動で構成して、Order Management に支払を表示して管理することもできます。この場合はコーディングが必要となるため、デベロッパーに協力を依頼します。デベロッパーが実行する手順は次のとおりです。
- Salesforce APEX コネクタフレームワークを使用して、支払ゲートウェイアダプタークラスを作成します。作業を開始するにあたって、こちらの参照クラスを参照してください。
https://github.com/forcedotcom/Core-Payments-Reference-Gateway-Integration-Adapters。
- 作成したアダプタークラスを参照する支払ゲートウェイプロバイダーレコードを作成します。
- [設定] で、ゲートウェイプロバイダーの認証情報とログイン情報を含む指定ログイン情報を定義します。アダプタークラスのコールアウト定義によって指定ログイン情報をコールします。
- 支払ゲートウェイプロバイダーレコードと指定ログイン情報をリンクするために、支払ゲートウェイレコードを作成します。
支払方法
Salesforce B2C Commerce を Order Management や Salesforce Payments と統合すると、クレジットカード、デジタルウォレットのほか、SEPA や iDEAL などカード以外のオプションもサポートされることを知って Linda は喜びます。
この機能では注文データが次のように処理されます。
支払方法 |
詳細 |
---|---|
クレジットカード |
注文データの支払方法 ID が、カード支払方法オブジェクトの [カードの種類] 選択リストのエントリと一致する必要があります。一致すると、Salesforce にカード支払方法レコードが作成されます。[カードの種類] 選択リストはカスタマイズできません。 |
デジタルウォレット |
注文データの支払方法 ID が、大文字と小文字を区別しない次の正規表現と一致する必要があります。一致すると、Salesforce にデジタルウォレットレコードが作成されます。 paypal|visa_checkout|pay_by_check|.*(apple|google|android|amazon|ali).*(pay)*
|
カード以外のオプション |
代替支払方法オブジェクトを使用します。 |
代替支払方法を追加する
Linda はクレジットカードやデジタルウォレット以外の支払方法も採用する必要があります。多くの国では、現金取引やその他の形態の支払 (代替支払方法) が行われていることから、ストアフロントアプリケーションでこうした買い物客にも対応できるようにしたいと考えています。さらに、支払手段は絶えず変化しています。将来、どのような支払方法が普及するか誰にもわかりません。
デベロッパーの助けを借りながら、次の手順に従って新しい支払方法を追加します。
- Square などの支払方法を表す代替支払方法オブジェクトのレコードタイプを作成します。
-
GtwyProvPaymentMethodType
レコードを作成します (ただし、Salesforce UI では作成できません)。デベロッパーが Postman などのツールか Apex コードを使用してレコードを挿入します。
オブジェクトの API 参照名はGtwyProvPaymentMethodType
で、URL は/services/data/version/sobjects/GtwyProvPaymentMethodType
です。
-
GtwyProvPaymentMethodType
のフィールドを下表のとおり設定します。
フィールド |
説明 |
---|---|
コメント |
説明。省略可能です。 |
API 参照名 |
レコードの一意の API 参照名。 |
マスター表示ラベル |
人間が判読可能なレコードの名前。 |
ゲートウェイプロバイダー支払方法種別 |
ストアフロントの支払方法の名前。この値が、B2C Commerce で使用される支払方法 ID と一致する必要があります。 |
支払ゲートウェイプロバイダー ID |
支払方法の支払処理業者に関連付けられている支払ゲートウェイプロバイダーレコードへの参照。 |
支払方法種別 |
AlternativePaymentMethod を選択します。代替支払方法を使用する場合は、最初に対応するレコードタイプのレコードを作成します。 |
レコードタイプ ID |
代替支払方法の場合、この値は対応するレコードタイプのレコードへの参照です。 { "DeveloperName" : "BankTransfer" "MasterLabel" : "Bank Transfer", "GtwyProviderPaymentMethodType" : "directBanking", "PaymentGatewayProviderId" : "0cJaa0000000001E67", "PaymentMethodType" : "AlternativePaymentMethod", “RecordTypeId” : "012aa000000008A34F" } |
まとめ
この単元では、支払処理の構成方法を学習しました。また、新しい支払方法の追加についても確認しました。これで、最後のテストを受けて、輝かしいバッジを獲得できるようになりました。
リソース
- Salesforce Developers: CommercePayments Namespace のユースケース
- Salesforce Developers: Commerce Payments Resources
- Salesforce Developers: CommercePayments Namespace
- Salesforce AppExchange: Salesforce Payments for Order Management