JSON レスポンス オブジェクト

このリファレンスでは、アプリケーションで使用する Google Pay API レスポンス オブジェクトのオプションについて説明します。レスポンス オブジェクトは、Google Pay API クライアント メソッドによって返されるオブジェクトです。

PaymentData

これは、支払人が支払いを承認した後に返されるレスポンス オブジェクトです。

PaymentDataRequestPaymentDataRequestPaymentDataRequest
プロパティ タイプ 常に存在 説明
apiVersion 数値 はい メジャー API バージョン。レスポンスの値は
apiVersionMinor 数値 はい マイナー API バージョン。レスポンスの値は
paymentMethodData PaymentMethodData はい 選択したお支払い方法に関するデータ。
email 文字列 いいえ emailRequiredtrue に設定されている場合のメールアドレス PaymentDataRequest. これ以外のリクエストでこのプロパティが true に設定されていても、効果はありません。
shippingAddress 住所 いいえ shippingAddressRequiredtrue に設定されていた場合の配送先住所

この Google Pay API バージョン 2.0 のレスポンスの例は、Google Pay の支払いシートで CARD のお支払い方法が選択された場合を示しています。example ゲートウェイのお支払い方法トークンが生成されました。

{
  "apiVersion": 2,
  "apiVersionMinor": 0,
  "paymentMethodData": {
    "type": "CARD",
    "description": "Visa •••• 1234",
    "info": {
      "cardNetwork": "VISA",
      "cardDetails": "1234",
      "cardFundingSource": "CREDIT"
    },
    "tokenizationData": {
      "type": "PAYMENT_GATEWAY",
      "token": "examplePaymentMethodToken"
    }
  }
}

PaymentMethodData

このオブジェクトは、選択したお支払い方法のデータを提供します。

プロパティ タイプ 常に存在 説明
type 文字列 はい Google Pay 支払いシートで選択された PaymentMethod type
description 文字列 はい

この取引のお支払い方法を説明するユーザー向けメッセージ。

info オブジェクト はい このプロパティの値は、返されるお支払い方法の type によって異なります。CARD については、CardInfo をご覧ください。
tokenizationData PaymentMethodTokenizationData いいえ 選択したお支払い方法の支払いトークン化データ。

このレスポンスの例は、Google Pay 支払いシートで CARD のお支払い方法が選択され、example ゲートウェイの支払い方法トークンが生成された場合を示しています。

{
  "type": "CARD",
  "description": "Visa •••• 1234",
  "info": {
    "cardNetwork": "VISA",
    "cardDetails": "1234"
  },
  "tokenizationData": {
    "type": "PAYMENT_GATEWAY",
    "token": "examplePaymentMethodToken"
  }
}

CardInfo

このオブジェクトは、選択された支払いカードに関する情報を提供します。

プロパティ タイプ 常に存在 説明
cardDetails 文字列 はい カードの詳細。通常、この値は選択したお支払い口座番号の最後の 4 桁です。
assuranceDetails AssuranceDetailsSpecifications はい CardParameters
cardNetwork 文字列 はい

選択されたお支払い方法の支払いカード ネットワーク。戻り値は、allowedCardNetworks の形式に一致します CardParameters

このカード ネットワークの値は購入者に表示しないでください。購入者のカードの詳細が必要な場合に使用します。たとえば、カスタマー サポートにおいて購入者が取引に使用したカードを識別しなければならない場合がこれに該当します。購入者に説明を表示する場合は、代わりに PaymentMethodDatadescription プロパティを使用してください。

billingAddress 住所 いいえ billingAddressRequiredtrue に設定されていた場合の、提供されたお支払い方法に関連付けられた請求先住所 CardParameters
cardFundingSource 文字列 はい

選択したお支払い方法のカードの入金元。

  • UNKNOWN
  • CREDIT
  • DEBIT
  • PREPAID

この例は、Visa ネットワーク上のカードを示しています。

{
  "cardNetwork": "VISA",
  "cardDetails": "1234",
  "cardFundingSource": "CREDIT",
  "assuranceDetails": {
    "cardHolderAuthenticated": false,
    "accountVerified": true
  }
}

AssuranceDetailsSpecifications

このオブジェクトは、返された支払い認証情報で実行された検証に関する情報を提供します。これにより、適切なインストルメンテーションのリスクチェックを適用できます。

名前 タイプ 説明
accountVerified ブール値 true の場合、返された支払い認証情報に対して Cardholder 所有検証が行われたことを示します。
cardHolderAuthenticated ブール値

true の場合、返された支払い認証情報で識別と検証(ID&V)が行われたことを示します。

false の場合、カード取引と同じリスクベースの認証を実行できます。このリスクベースの認証には、該当する場合は 3D セキュア プロトコルによるステップアップを含めることができますが、これに限定されません。

assuranceDetails フィールドを使用しない場合でも、レスポンス オブジェクトを受信して処理できます。このオブジェクトを受け取るには、リクエスト オブジェクトの CardParameters

PaymentMethodTokenizationData

このオブジェクトは、お支払い方法のトークン化データを提供します。

プロパティ タイプ 常に存在 説明
type 文字列 はい 選択されたお支払い方法に適用されるトークン化のタイプ。この値は、 PaymentMethodTokenizationSpecification
token 文字列 いいえ

生成された支払い方法トークン。

これは、example ゲートウェイのトークン化データのレスポンスの例です。

{
  "type": "PAYMENT_GATEWAY",
  "token": "examplePaymentMethodToken"
}

住所

このオブジェクトは、リクエストされた住所に関する情報を提供します。すべてのプロパティは文字列です。

住所は MINFULLFULL-ISO3166 の形式で返されます。各形式に属するプロパティは、次の表で確認できます。

プロパティ 住所の形式 説明
name MINFULLFULL-ISO3166 受取人の氏名。
postalCode MINFULLFULL-ISO3166 郵便番号。
countryCode MINFULLFULL-ISO3166 ISO 3166-1 alpha-2 の国コード。
phoneNumber MINFULLFULL-ISO3166 phoneNumberRequiredtrue に設定されていた場合の電話番号 PaymentDataRequest.
address1 FULLFULL-ISO3166 住所の 1 行目。
address2 FULLFULL-ISO3166 住所の 2 行目。
address3 FULLFULL-ISO3166 住所の 3 行目。
locality FULLFULL-ISO3166 市、町、地区、または郊外。
administrativeArea FULLFULL-ISO3166 地方行政区画(州や都道府県など)。
sortingCode FULLFULL-ISO3166 ソートコード。
iso3166AdministrativeArea FULL-ISO3166 administrativeArea に対応する ISO 3166-2 の行政区域コード。

これは、複数行の番地データを持つ米国の FULL-ISO3166 形式の住所の例です。

{
  "name": "John Doe",
  "address1": "c/o Google LLC",
  "address2": "1600 Amphitheatre Pkwy",
  "address3": "Building 40",
  "locality": "Mountain View",
  "administrativeArea": "CA",
  "countryCode": "US",
  "postalCode": "94043",
  "sortingCode": ""
  "iso3166AdministrativeArea": "US-CA"
}

IntermediatePaymentData

これは、支払いシートで配送先住所または配送オプションが変更されたときに、Google Pay API の onPaymentDataChanged() への入力によって返されるオブジェクトです。

プロパティ タイプ 必要性 説明
callbackTrigger 文字列 省略可

支払いデータのコールバックが呼び出された理由を示します。

  • INITIALIZE
  • SHIPPING_ADDRESS
  • SHIPPING_OPTION
  • OFFER
offerData OfferData 省略可 ユーザーが指定したプロモーション コード。
shippingAddress IntermediateAddress 省略可 支払いシートで選択された住所。
shippingOptionData SelectionOptionData 省略可 支払いシートで選択された配送オプション。

この例は、Google Pay API から返された中間ペイロードを示しています。

{
  "callbackTrigger": "SHIPPING_ADDRESS",
  "offerData": {
    "redemptionCode": "exampleCode"
  },
  "shippingAddress": {
    "administrativeArea": "NY",
    "countryCode": "US",
    "locality": "New York",
    "postalCode": "10011"
  },
  "shippingOptionData": {
    "id": "shipping-001"
  }
}

PaymentAuthorizationResult

このオブジェクトは、支払い承認の結果に関する情報を提供します。

プロパティ タイプ 必要性 説明
transactionState 文字列 必須 取引の状態は、次のいずれかの販売者の結果によって解決されます。
  • SUCCESS
  • ERROR
error PaymentDataError 省略可 支払いを再試行する必要がある場合に、ユーザーに向けて支払いシートに表示されるエラー。

次の例は、支払いが処理された後に返される支払い結果を示しています。

{
  "transactionState": "ERROR",
  "error": {
    "reason": "PAYMENT_DATA_INVALID",
    "message": "Cannot pay with payment credentials",
    "intent": "PAYMENT_AUTHORIZATION"
  }
}