אובייקטים של תגובת JSON

במאמר הזה מתוארות האפשרויות של אובייקט התגובה מה-API של Google Pay לשימוש באפליקציה. אובייקטים של תגובה הם אובייקטים שמוחזרים על ידי השיטות של הלקוח ב-Google Pay API.

PaymentData

זהו אובייקט תגובה שמוחזר על ידי Google אחרי שהמשלם מאשר את התשלום.

PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.
נכס סוג תמיד קיים תיאור
apiVersion number כן גרסת ה-API הראשית. הערך בתגובה תואם לערך שצוין ב-
apiVersionMinor number כן גרסת API משנית. הערך בתגובה תואם לערך שצוין ב-
paymentMethodData PaymentMethodData כן נתונים על אמצעי התשלום שנבחר.
email מחרוזת לא כתובת אימייל, אם emailRequired מוגדר לערך true ב- PaymentDataRequest. אם בבקשה אחרת המאפיין מוגדר כ-true, אין לכך השפעה.
shippingAddress הכתובת לא כתובת למשלוח, אם shippingAddressRequired מוגדר כ-true ב-

דוגמה

התגובה לדוגמה הזו ל-Google Pay API בגרסה 2.0 מציגה אמצעי תשלום מסוג CARD שנבחר בגיליון התשלום של Google Pay. נוצר אסימון של אמצעי תשלום לשער 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 מחרוזת כן PaymentMethod type נבחר בגיליון התשלומים של Google Pay.
description מחרוזת כן

הודעה שגלויה למשתמשים ומתארת את אמצעי התשלום שבאמצעותו ממומנת העסקה הזו.

info אובייקט כן הערך של המאפיין הזה תלוי באמצעי התשלום שמוחזר על ידי type. הסבר על CARD זמין בכתובת CardInfo.
tokenizationData PaymentMethodTokenizationData לא נתוני הטוקניזציה של אמצעי התשלום שנבחר.

דוגמה

התגובה לדוגמה הזו מראה איך אמצעי תשלום של CARD שנבחר בגיליון התשלום של Google Pay יוצר אסימון של אמצעי תשלום לשער התשלום של example.

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

CardInfo

האובייקט הזה מספק מידע על כרטיס התשלום שנבחר.

נכס סוג תמיד קיים תיאור
cardDetails מחרוזת כן פרטי הכרטיס. הערך הזה הוא בדרך כלל ארבע הספרות האחרונות של מספר חשבון התשלומים שנבחר.
assuranceDetails AssuranceDetailsSpecifications כן האובייקט הזה מספק מידע על האימות שבוצע בנתוני התשלום שהוחזרו אם assuranceDetailsRequired מוגדר כ-true ב- CardParameters.
cardNetwork מחרוזת כן

רשת כרטיסי התשלום של התשלום שנבחר. הערכים שמוחזרים תואמים לפורמט של allowedCardNetworks ב- CardParameters.

אין להציג לקונה את הערך הזה של רשת הכרטיסים. הוא משמש כשצריך את פרטי הכרטיס של הקונה. לדוגמה, אם תמיכת הלקוחות צריכה את הערך הזה כדי לזהות את הכרטיס שבו הקונה השתמש לעסקה. כדי להציג תיאור למשתמש, צריך להשתמש במאפיין description של PaymentMethodData.

billingAddress הכתובת לא הכתובת לחיוב שמשויכת לאמצעי התשלום שצוין, אם billingAddressRequired מוגדר כ-true ב- 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 Secure, אם רלוונטי.

אתם יכולים לקבל ולעבד את אובייקט התגובה גם אם אתם לא משתמשים בשדה assuranceDetails. כדי לקבל את האובייקט הזה, צריך לכלול את assuranceDetailsRequired: true ב- CardParameters של CardParameters.

PaymentMethodTokenizationData

האובייקט הזה מספק נתוני טוקניזציה לאמצעי התשלום.

נכס סוג תמיד קיים תיאור
type מחרוזת כן סוג הטוקניזציה שצריך להחיל על אמצעי התשלום שנבחר. הערך הזה תואם ל-type שמוגדר ב- PaymentMethodTokenizationSpecification.
token מחרוזת לא

האסימון שנוצר לאמצעי התשלום.

דוגמה

זו דוגמה לתגובה עם אסימון שהוכנה לשער example.

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

PaymentAuthorizationResult

האובייקט הזה מספק מידע על התוצאה של הרשאת התשלום.

נכס סוג הכרח תיאור
transactionState מחרוזת חובה סטטוס העסקה נקבע לפי אחת מהתוצאות הבאות של המוכר:
  • SUCCESS
  • ERROR
error PaymentDataError אופציונלי השגיאה שתוצג למשתמש בגיליון התשלום כשצריך לנסות שוב לבצע את התשלום.

דוגמה

הדוגמה הבאה מראה את תוצאת התשלום שמוחזרת אחרי שהתשלום מעובד:

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

PaymentDataError

נכס סוג הכרח תיאור
reason מחרוזת חובה

רשימה של סיבות מוגדרות מראש לשגיאות:

  • PAYMENT_DATA_INVALID
  • SHIPPING_ADDRESS_INVALID
  • SHIPPING_ADDRESS_UNSERVICEABLE
  • SHIPPING_OPTION_INVALID
  • OTHER_ERROR
message מחרוזת חובה הודעת שגיאה למשתמש שמוצגת בתיבת דו-שיח.
intent מחרוזת חובה

הכוונה של השגיאה.

  • PAYMENT_AUTHORIZATION
  • SHIPPING_ADDRESS
  • SHIPPING_OPTION

דוגמה

בדוגמה הזו מוצגים הכוונה וההודעה של השגיאה שיופיעו בגיליון התשלום.

{
  "error": {
    "reason": "SHIPPING_OPTION_INVALID",
    "message": "This shipping option is invalid for the given address",
    "intent": "SHIPPING_OPTION"
  }
}

כתובת

האובייקט הזה מספק מידע על כתובת למשלוח דואר שהתבקשה. כל המאפיינים הם מחרוזות.

אפשר להחזיר כתובות בפורמטים MIN,‏ FULL ו-FULL-ISO3166. המאפיינים ששייכים לכל פורמט מפורטים בטבלה הבאה.

נכס פורמט הכתובת תיאור
name MIN,‏ FULL,‏ FULL-ISO3166 השם המלא של הנמען.
postalCode MIN,‏ FULL,‏ FULL-ISO3166 המיקוד.
countryCode MIN,‏ FULL,‏ FULL-ISO3166 קוד מדינה בפורמט ISO 3166-1 alpha-2.
phoneNumber MIN,‏ FULL,‏ FULL-ISO3166 מספר טלפון, אם phoneNumberRequired מוגדר כ-true ב- PaymentDataRequest.
address1 FULL, FULL-ISO3166 השורה הראשונה של הכתובת.
address2 FULL, FULL-ISO3166 השורה השנייה של הכתובת.
address3 FULL, FULL-ISO3166 השורה השלישית של הכתובת.
locality FULL, FULL-ISO3166 עיר, עיירה, שכונה או פרבר.
administrativeArea FULL, FULL-ISO3166 חלוקת משנה של מדינה, כמו מדינה (State) או מחוז.
sortingCode FULL, FULL-ISO3166 קוד לזיהוי הבנק.
iso3166AdministrativeArea FULL-ISO3166 קוד אזור מנהלי לפי תקן ISO 3166-2 שתואם ל-administrativeArea.

דוגמה

זו דוגמה לכתובת בפורמט 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 מחרוזת אופציונלי

מתאר את הסיבה להפעלת הקריאה החוזרת (callback) של נתוני התשלום.

  • INITIALIZE
  • SHIPPING_ADDRESS
  • SHIPPING_OPTION
  • PAYMENT_METHOD
shippingAddress IntermediateAddress אופציונלי הכתובת שנבחרה בגיליון התשלום.
shippingOptionData SelectionOptionData אופציונלי אפשרות המשלוח שנבחרה בגיליון התשלום.
paymentMethodData IntermediatePaymentMethodData אופציונלי נתוני אמצעי התשלום שנבחרו בגיליון התשלום.

דוגמאות

בדוגמה הזו מוצג המטען הייעודי (payload) הזמני שמוחזר מ-Google Pay API כשמשנים את הכתובת למשלוח.

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

בדוגמה הזו מוצג המטען הייעודי (payload) של הביניים שמוחזר כשאמצעי התשלום משתנה.

{
  "callbackTrigger": "PAYMENT_METHOD",
  "paymentMethodData": {
    "type": "CARD",
    "info": {
      "cardNetwork": "VISA",
      "cardFundingSource": "CREDIT",
      "billingAddress": {
        "administrativeArea": "NY",
        "countryCode": "US",
        "locality": "New York",
        "postalCode": "10011"
      }
    }
  }
}

IntermediateAddress

הכתובת הזמנית מכילה כתובת מצונזרת למשלוח (בלי שורות הכתובת ברמת הרחוב או שמות הנמענים) כדי לאפשר חישוב של המס הרלוונטי ואפשרויות המשלוח לפני שהמשתמש מאשר את התשלום.

נכס סוג הכרח תיאור
administrativeArea מחרוזת חובה חלוקת משנה של מדינה, כמו מדינה (State) או מחוז.
countryCode מחרוזת חובה קוד מדינה בפורמט ISO 3166-1 alpha-2.
locality מחרוזת חובה עיר, עיירה, שכונה או פרבר.
postalCode מחרוזת חובה המיקוד המצונזר, בהתאם למדינה. בקנדה ובבריטניה, השדה הזה מכיל רק את שלושת התווים הראשונים. בארה"ב, המאפיין הזה מכיל את חמש הספרות הראשונות.
iso3166AdministrativeArea מחרוזת אופציונלי קוד אזור מנהלי לפי תקן ISO 3166-2 שתואם ל-administrativeArea. מוצג רק אם הפורמט של הכתובת למשלוח הוא FULL-ISO3166.

דוגמה

בדוגמה הזו מוצגת הכתובת שנבחרה בגיליון התשלום.

{
  "administrativeArea": "NY",
  "countryCode": "US",
  "locality": "New York",
  "postalCode": "10011"
  "iso3166AdministrativeArea": "US-NY"
}

SelectionOptionData

נכס סוג הכרח תיאור
id מחרוזת חובה התאמות עם SelectionOption.id

דוגמה

בדוגמה הזו מוצגת אפשרות המשלוח שנבחרה בגיליון התשלום.

{
  "id": "shipping-001"
}

IntermediatePaymentMethodData

האובייקט הזה מכיל מידע מוגבל על אמצעי התשלום שנבחר לקריאות חוזרות (callbacks) של מפתחים.

נכס סוג הכרח תיאור
type מחרוזת חובה סוג אמצעי התשלום. רק CARD נתמך בקריאה החוזרת הזו.
info IntermediateCardInfo אופציונלי מידע על הכרטיס שנבחר. מוצג רק אם הערך של type הוא CARD.

IntermediateCardInfo

האובייקט הזה מכיל מידע מוגבל על הכרטיס שנבחר, שמשמש בקריאות חוזרות (callbacks) של מפתחים.

נכס סוג הכרח תיאור
billingAddress IntermediateAddress אופציונלי הכתובת לחיוב שמשויכת לכרטיס. השדה הזה מאוכלס רק אם הכתובת לחיוב מוגדרת כחובה.
cardNetwork מחרוזת אופציונלי

רשת כרטיסי התשלום של כרטיס התשלום שנבחר. הערכים שמוחזרים תואמים לפורמט של allowedCardNetworks ב- CardParameters.

אין להציג לקונה את הערך הזה של רשת כרטיסי האשראי.

cardFundingSource מחרוזת אופציונלי

מקור המימון של כרטיס התשלום שנבחר.

  • UNKNOWN
  • CREDIT
  • DEBIT
  • PREPAID