Account Information API
サイトをご利用の旅行者のアカウント情報を使用して本人確認を行ってください
アカウント 情報APIには、各旅行者に関する詳細情報が含まれています。エクスペディアの担当者は、この情報を用いて、購入、ロイヤルティ の利用、キャンセルなどに関する旅行者固有の識別情報を確認いたします。この一意の識別子は、お客様の要件やセキュリティ基準に応じて、クレジットカード番号(ペイメント・カード・インダストリー(PCI)識別子)や、メールアドレスや「ロイヤルティ」といったアカウント番号などのnon-PCI識別子とすることができます。
>> 詳細については、「一般的なデータと回答」をご覧ください
アカウント情報の取得
POST /user/v1/account でロイヤルティ会員やカード名義人のアカウント情報を取得するために、次のフィールドを使用します。
ヘッダー
| フィールド | 説明 | サンプル値 | フィールドタイプ | 必須/必須ではない |
|---|---|---|---|---|
partnerId | エクスペディアがが提供する、ビジネスの一意の識別子 | 貴社のブランド | 文字列 (最大 20 文字) | 必須 |
Authorization | エクスペディアが権限サーバーから受信したアクセス トークン (チームで検証) | 標準 JSON Web トークン (JWT) | 文字列 (標準 JWT 長) | — |
Authorization2 | エクスペディアから送信された JSON Web トークン (JWT) (署名とクレームは貴社側で検証) | 標準 JWT | 文字列 (標準 JWT 長) | — |
リクエスト
membershipId、loyaltyAccountNumber、cardNumber、またはemail のいずれかを必須パラメータとして設定する必要があります。アカウントマネージャー の担当者が、お客様の要件に基づき、最適なソリューションを一緒に検討させていただきます。
注: 識別子としてcardNumber を使用している場合は、以下のcardDetails およびbillingAddress テーブルについても確認する必要があります。このデータが必要となるパラメータは他にありません。
| フィールド | 説明 | フィールドタイプ | 必須/必須ではない |
|---|---|---|---|
requestId | 取引リクエストの一意の識別子 | 文字列 | 必須 |
membershipId | 旅行者固有の識別子 | 文字列 | はい、選択肢1です |
loyaltyAccountNumber | 旅行者の ロイヤルティ アカウント番号(programAccountNumber とも呼ばれます)。これは、ロイヤルティ 操作にmembershipId 以外の識別子が必要な場合にのみ入力してください。 | 文字列 | はい、選択肢2です |
programId | 旅行者が所属する ロイヤルティ プログラムの識別子、または ロイヤルティ プログラムに関連付けられたティア名 | 文字列 | — |
cardNumber | 旅行者のクレジットカード番号(暗号化済み) | 文字列 | はい、選択肢3です |
email | お客様のEメールアドレス | 文字列 | はい、選択肢4です |
レスポンス
| フィールド | 説明 | フィールドタイプ | 必須/必須ではない |
|---|---|---|---|
status | 取引ステータス (値 : Approved、Declined) | 文字列 | 必須 |
requestId | 取引リクエストの一意の識別子 (リクエストペイロードから) | 文字列 | 必須 |
programAccount | ロイヤルティ プログラムアカウントの詳細。ネストされたフィールドについては、programAccount の表をご参照ください。 | — | |
languageId | このサイトで表示可能な言語: >>「ロケール」の詳細ページをご覧ください | 文字列 | — |
optInForMarketingEmail | ユーザーがマーケティングメールの受信を承諾しているかどうか | Boolean (ブール型) | — |
channelType | サイトが最適化されているプラットフォーム (値 : WEB、MOBILE、TABLET) | 文字列 | — |
users | ユーザー詳細の一覧。ネストされたフィールドについては、users テーブルをご参照ください。 | — | |
cardDetails | 取引に使用されたクレジットカードの詳細。ネストされたフィールドについては、cardDetails の表をご参照ください(値が入力されている場合、一部のネストされた項目は暗号化する必要があります)。 | — |
programAccount
| フィールド | 説明 | サンプル値 | 必須/必須ではない |
|---|---|---|---|
programId | 旅行者が所属する ロイヤルティ プログラムの識別子、または ロイヤルティ プログラムに関連付けられたティア名 | Aventura Gold | 必須 |
accountName | プログラム名 (programId と異なる場合) | Aventura | — |
loyaltyAccountNumber | 旅行者の ロイヤルティ アカウント番号(programAccountNumber とも呼ばれます)。これは、ロイヤルティ 操作にmembershipId 以外の識別子が必要な場合にのみ入力してください。 | 1234567 | — |
lastFourDigitsOfCreditCard | 旅行者が予約に使用したクレジットカードの下4桁 | 0000 | — |
loyaltyConversionRatio | 支払いにおける獲得ポイント率 (例 : $1 = 1 ポイント) | — | |
loyaltyAccountBalance | 旅行者が獲得した ロイヤルティ ポイントの現在の残高 | 2003 | 必須 |
cardDetails
| フィールド | 説明 | フィールドタイプ | 必須/必須ではない |
|---|---|---|---|
cardNumber | 旅行者のクレジットカード番号(暗号化済み) | 文字列 | 必須 |
cardType | 使用されたカードの種類(暗号化済み) | 文字列 | 必須 |
expirationDate | カードの有効期限(MM/YYYY形式、暗号化済み) | 文字列 | 必須 |
billingAddress | 取引に使用されたカードの請求先住所です。ネストされたフィールドについては、billingAddress テーブルをご参照ください。 | — |
billingAddress
| フィールド | 説明 | フィールドタイプ | 必須/必須ではない |
|---|---|---|---|
firstAddressLine | 請求先住所の1行目(暗号化済み) | 文字列 | 必須 |
secondAddressLine | 請求先住所の2行目 | 文字列 | — |
thirdAddressLine | 請求先住所の3行目 | 文字列 | — |
city | 請求先住所の市区町村 | 文字列 | — |
province | 請求先住所の都道府県または州の項目 | 文字列 | — |
countryCode | 請求先住所の国名 | 文字列 | — |
postalCode | 請求先住所の郵便番号(暗号化済み) | 文字列 | 必須 |
ユーザー
| フィールド | 説明 | サンプル値 | 必須/必須ではない |
|---|---|---|---|
userId | 旅行者固有の識別子です。以下と同じです。 membershipId | 必須 | |
name | 旅行者の氏名(姓、名、ミドルネーム) | — | — |
firstName | 旅行者の名前;以下にネストされています name | Bob | 必須 |
middleName | トラベラーのミドルネーム;以下にネストされています name | Robert | — |
lastName | 旅行者の姓;以下にネストされています name | Jones | 必須 |
contactInfo | 旅行者の連絡先情報(住所、メールアドレス、電話番号など) | — | — |
address | 旅行者の住所(通り名、市、州または県、郵便番号を含む)。以下の項目にネストされています。 contactInfo | — | — |
streetAddress | 旅行者の住所;以下にネストされています address | 123 Main St. | — |
city | 旅行者の住所の都市名;以下にネストされています address | Boston | — |
state | 旅行者の住所の状況;以下にネストされています address | MA | — |
country | 旅行者の住所の国;以下にネストされています address | USA | — |
postalCode | 旅行者の住所の郵便番号;以下にネストされています address | 02112 | — |
taxProvince | 旅行者が税金を納める州または県。以下の項目にネストされています。 address | MA | — |
email | 旅行者のメールアドレス;以下にネストされています contactInfo | brjones@somewhere.com | — |
contactNumber | 旅行者の電話番号;以下にネストされています contactInfo | 555-555-5555 | — |
userType | 旅行者が個人(主たる利用者)であるか、あるいは組織に所属しているか | — | |
dateOfBirth | 旅行者の生年 月日 | — |
クレジットカードの暗号化と復号化
検証用のトラベラー識別子としてcardNumber を使用する場合、一部の情報は暗号化する必要があります。エクスペディアでは、クレジットカード情報の暗号化および復号化に、industry-standardのJWE(JSON Web Encryption)技術を用いたPCI情報の安全な取り扱いを義務付けています。これは、公開鍵と秘密鍵のペアを用いた非対称暗号化です。
暗号化のユースケース
以下で暗号化を行う必要があります。
- ご依頼:
cardNumber - 回答:
cardDetails
リクエストパラメーターでは、貴社が 2048 ビットの CA (認証局) 署名 RSA (Rivest Shamir Adleman) 秘密鍵証明書を設定し、エクスペディアと共有する必要があります。次に、エクスペディアでは貴社の公開鍵を使って、JWE と RSA で cardNumber フィールドを暗号化します。
レスポンスパラメーターでは、エクスペディアが 2048 ビットの CA 署名 RSA 秘密鍵を設定し、対応する公開鍵証明書を共有し、貴社と共有します。その後、貴社でエクスペディアの公開鍵を使用して、JWE と RSA で cardDetails の各要素を暗号化します。
暗号化プロセスの手順は以下のとおりです。