PaymentMethodTokenizationRequest クラス
カード支払方法をトークン化する要求に関するデータを保存します。トークン化プロセスは支払ゲートウェイで実行されます。このプロセスでは、カード番号や CVV などの顧客の機密データが一意の識別記号に置き換えられます。これらの記号は、Salesforce、支払ゲートウェイ、顧客の銀行でデータが処理されている間に使用されます。これにより、Salesforce は、顧客の機密データを保存することなくトークンを保存できます。
名前空間
使用方法
このクラスのコンストラクタは、引数を取りません。次に例を示します。
CommercePayments.PaymentMethodTokenizationRequest pmtr = new CommercePayments.PaymentMethodTokenizationRequest();このクラスは、トークン化要求に関して必要なすべての詳細を保持します。ゲートウェイアダプタは、トークン化 JSON 要求を作成するときにこのクラスの情報を読み取り、支払ゲートウェイに送信します。
例
支払ゲートウェイアダプタの Apex クラス内で使用するコードを以下に示します。
GatewayResponse クラスの processRequest メソッドは、PaymentGatewayContext のインスタンスから受信した要求種別に基づいて応答を作成するために使用します。要求種別が Tokenize の場合、GatewayResponse は createTokenizeResponse メソッドをコールして、PaymentMethodTokenizationRequest クラスのインスタンスを渡します。渡された PaymentMethodTokenizationRequest オブジェクトには、トークン化プロセスの管理のために支払ゲートウェイで必要な住所および cardPaymentMethod 情報が含まれます。次に例を示します。
1global commercepayments.GatewayResponse processRequest(commercepayments.paymentGatewayContext gatewayContext) {
2 commercepayments.RequestType requestType = gatewayContext.getPaymentRequestType();
3 commercepayments.GatewayResponse response;
4 try
5 {
6 if (requestType == commercepayments.RequestType.Tokenize) {
7 response = createTokenizeResponse((commercepayments.PaymentMethodTokenizationRequest)gatewayContext.getPaymentRequest());
8 }
9 //Add other else if statements for different request types as needed.
10 return response;
11 }
12 catch(SalesforceValidationException e)
13 {
14 commercepayments.GatewayErrorResponse error = new commercepayments.GatewayErrorResponse('400', e.getMessage());
15 return error;
16 }
17 }PaymentMethodTokenizationRequest のインスタンスを受け入れるように createTokenizeResponse メソッドを設定します。次に、支払ゲートウェイから受信した値に基づいて PaymentMethodTokenizationResponse のインスタンスを作成します。
1public commercepayments.GatewayResponse createTokenizeResponse(commercepayments.PaymentMethodTokenizationRequest tokenizeRequest) {
2 commercepayments.PaymentMethodTokenizationResponse tokenizeResponse = new commercepayments.PaymentMethodTokenizationResponse();
3 tokenizeResponse.setGatewayTokenEncrypted(encryptedValue);
4 tokenizeResponse.setGatewayTokenDetails(tokenDetails);
5 tokenizeResponse.setGatewayAvsCode(avsCode);
6 tokenizeResponse.setGatewayMessage(gatewayMessage);
7 tokenizeResponse.setGatewayResultCode(resultcode);
8 tokenizeResponse.setGatewayResultCodeDescription(resultCodeDescription);
9 tokenizeResponse.setSalesforceResultCodeInfo(resultCodeInfo);
10 tokenizeResponse.setGatewayDate(system.now());
11 return tokenizeResponse;
12 }tokenizeResponse には、ゲートウェイのトークン化プロセスの結果が含まれます。また、トークン化が成功した場合は、トークン化された値も含まれます。
PaymentMethodTokenizationRequest のコンストラクタ
PaymentMethodTokenizationRequest のコンストラクタは次のとおりです。
PaymentMethodTokenizationRequest(paymentGatewayId)
paymentMethodTokenizationRequest で使用される支払ゲートウェイ ID コンストラクタ。このコンストラクタはテストでの使用を目的としており、Apex テストコンテキスト外で使用された場合は例外が発生します。
署名
global PaymentMethodTokenizationRequest(String paymentGatewayId)
パラメータ
- paymentGatewayId
- 型: String
- トークン化される支払方法の支払ゲートウェイ ID。
PaymentMethodTokenizationRequest のプロパティ
PaymentMethodTokenizationRequest のプロパティは次のとおりです。
PaymentMethodTokenizationRequest のメソッド
PaymentMethodTokenizationRequest のメソッドは次のとおりです。
equals(obj)
リスト内の外部オブジェクトの同等性を判断して、PaymentMethodTokenizationRequest 型のリストの整合性を維持します。このメソッドは動的で、Java の equals メソッドに基づきます。
署名
global Boolean equals(Object obj)
パラメータ
- obj
- 型: Object
- キーが検証される外部オブジェクト。
戻り値
型: Boolean