トークン化サービス API
クレジットカードのトークン化プロセスでは、機密性の高い顧客情報をアルゴリズムで生成された 1 回限りの数字に置き換えます。この数字はトークンと呼ばれ、支払トランザクションで使用されます。Salesforce はトークンを保存し、そのトークンをトランザクションに使用されるクレジットカードの表現として使用します。トークンを使用することで、クレジットカード番号などの機密性の高い顧客データを実際に Salesforce に保存せずに、クレジットカードの情報を保存することができます。支払サービスにトークン化機能を追加するにはトークン化 API を実装します。
典型的なトークン化プロセスでは、支払プラットフォームが顧客の支払方法データを受け入れ、Salesforce の外部にある支払ゲートウェイのリモートトークンサービスサーバーに渡します。サーバーはプラットフォームのストレージ用にトークン化された値を提供します。たとえば、顧客がクレジットカード番号を 4111 1111 1111 1234 と入力したとします。トークンサーバーはこの値を保存し、2537446225198291 というトークンに関連付けて、プラットフォームのストレージ用にそのトークンを送信します。
マーチャントとの通信中、マーチャントは 2537446225198291 トークンをトークンサーバーに送信します。トークンサーバーは、顧客のトークンと一致していることを確認し、顧客のカードに対してマーチャントがトランザクションを実行することを承認します。
商取引の支払トークン化 API は、クレジットカード情報を受け入れ、顧客の Salesforce 組織を通じて設定された外部支払ゲートウェイを使用してカード情報をトークン化します。その後、トークン化表現を返します。その後、API はトークンを CardPaymentMethod に保存します。
承認取消サービスをコールするには、次のエンドポイントに POST 要求を実行します。
エンドポイント
1/commerce/payments/payment-method/tokens/トークン化サービスは、支払および関連エンティティから次の要求パラメーターを受け付けます。
| パラメーター | 必須 | 詳細 |
|---|---|---|
|
必須 | トークン化するクレジットカードの詳細。 |
| accountId | 省略可能 | カード所有者の Salesforce 取引先 ID。 |
|
省略可能 | トークン化されるクレジットカード支払方法を設定している顧客の住所情報。 |
| paymentGatewayId | 必須 | トークン化サーバーに関連する外部支払ゲートウェイ。 |
| 省略可能 | 不正パラメーター。 | |
| ipAddress | 省略可能 | 不正パラメーター。 |
| macAddress | 省略可能 | 不正パラメーター。 |
| phone | 省略可能 | 不正パラメーター。 |
| additionalData | 省略可能 | クレジットカードの支払方法をトークン化するためにゲートウェイが必要とする追加データ。 |
要求と応答のサンプル
このサンプル要求では、トークン化用に顧客のクレジットカード情報が提供されます。
1{
2 "cardPaymentMethod": {
3 "cardHolderName":"Carol Smith",
4 "expiryMonth": "05",
5 "expiryYear": "2025",
6 "startMonth": "",
7 "startYear": "",
8 "cvv": "000",
9 "cardNumber": "4111111111111111",
10 "cardCategory": "Credit",
11 "cardType": "Visa",
12 "nickName": "",
13 "cardHolderFirstName": "Carol",
14 "cardHolderLastName": "Smith",
15 "email" : "csmith@example.com",
16 "comments" : "",
17 "accountId": "000XXXXXXXX"
18 },
19 "address":{
20 "street": "128 1st Street",
21 "city": "San Francisco",
22 "state": "CA",
23 "country": "USA",
24 "postalCode": "94015",
25 "companyName": "Salesforce"
26 },
27 "paymentGatewayId" : "000XXXXXXXX",
28 "email": ""
29 "ipAddress": "",
30 "macAddress": "",
31 "phone": "",
32
33 "additionalData":{
34 //add additional information if needed
35 "key1":"value1",
36 "key2":"value2",
37 "key3":"value3",
38 "key4":"value4",
39 "key5":"value5"
40 }
41}成功応答のサンプル
トークン化応答が成功すると、支払方法が更新され、ゲートウェイ応答と支払ゲートウェイログに関する情報が提供されます。
1{
2 "paymentMethod": {
3 "id": "03OR0000000xxxxxxx",
4 "accountId" : "001xx000000xxxxxxx",
5 "status" : "Active"
6 },
7 "gatewayResponse" : {
8 "gatewayResultCode": "00",
9 "gatewayResultCodeDescription": "Transaction Normal",
10 "gatewayDate": "2020-12-08T04:03:20.000Z",
11 "gatewayAvsCode" : "7638788018713617",
12 "gatewayMessage" : "8313990738208498",
13 "salesforceResultCode": "Success",
14 "gatewayTokenEncrypted" : "SF701252"
15 }
16 "paymentGatewayLogs" : [ {
17 "createdDate" : "2020-12-08T04:03:20.000Z",
18 "gatewayResultCode" : "00",
19 "id" : "0XtR0000000xxxxxxx",
20 "interactionStatus" : "NoOp"
21 } ],
22}