מפרט של רכיב handler לתשלומים ב-Google Pay

  • שם המטפל: com.google.pay
  • גרסה: 2026-01-11

1. מבוא

com.google.payה-handler מאפשר לעסקים להציע את Google Pay כאפשרות תשלום מהירה בפלטפורמות שתואמות ל-UCP. ‫Google Pay API מאפשר תשלום מהיר בקופה, כי הוא נותן למשתמשים גישה לאמצעי תשלום ששמורים בחשבון Google שלהם.

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

‫1.1 יתרונות מרכזיים

  • הגדרה אוניברסלית: עסקים מגדירים את Google Pay פעם אחת באמצעות JSON רגיל, וכך מאפשרים לכל פלטפורמה מורשית להציג את ממשק התשלום בלי קוד חזיתי בהתאמה אישית.
  • חלק הקצה מופרד: הפלטפורמות מטפלות במורכבות של שילוב Google Pay JavaScript API או SDK, והעסקים משתמשים בטוקן שנוצר.
  • טוקניזציה מאובטחת: נעשה שימוש בטוקניזציה המובנית של Google כדי להעביר אישורים מוצפנים ישירות לספק שירותי התשלום (PSP) של העסק.

2. Business Integration

‫2.1 דרישות

לפני שבעלי עסקים מפרסמים את Google Pay באמצעות UCP, הם צריכים:

  1. קבלת מזהה מוֹכר ב-Google Pay: נדרש לעיבוד בסביבת PRODUCTION (צריך להירשם במסוף של Google Pay ו-Wallet).
  2. מוודאים שהספק תומך ב-Google Pay: צריך לוודא שספק שירותי התשלום (PSP) שלכם מופיע ברשימת המעבדים והשערים הנתמכים ב-Google Pay לצורך טוקניזציה.

‫2.2 הגדרת Handler

עסקים מפרסמים את התמיכה ב-Google Pay על ידי הכללת ה-handler במערך payment handlers שלהם. ההגדרה תואמת בדיוק למבנה שנדרש לאתחול Google Pay API.

‫2.2.1 סכימת הגדרות

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

אמצעי תשלום ב-Google Pay

על סמך PaymentMethod של Google Pay.

מפרט ליצירת טוקנים

על סמך TokenizationSpecification של Google Pay.

‫2.2.2 דוגמה להצהרה על Handler

{
  "payment": {
    "handlers": [
      {
        "id": "8c9202bd-63cc-4241-8d24-d57ce69ea31c",
        "name": "com.google.pay",
        "version": "2026-01-11",
        "spec": "https://pay.google.com/gp/p/ucp/2026-01-11/",
        "config_schema": "https://pay.google.com/gp/p/ucp/2026-01-11/schemas/config.json",
        "instrument_schemas": [
          "https://pay.google.com/gp/p/ucp/2026-01-11/schemas/card_payment_instrument.json"
        ],
        "config": {
          "api_version": 2,
          "api_version_minor": 0,
          "environment": "TEST",
          "merchant_info": {
            "merchant_name": "Example Merchant",
            "merchant_id": "01234567890123456789",
            "merchant_origin": "checkout.merchant.com"
          },
          "allowed_payment_methods": [
            {
              "type": "CARD",
              "parameters": {
                "allowed_auth_methods": ["PAN_ONLY"],
                "allowed_card_networks": ["VISA", "MASTERCARD"]
              },
              "tokenization_specification": {
                "type": "PAYMENT_GATEWAY",
                "parameters": {
                  "gateway": "example",
                  "gatewayMerchantId": "exampleGatewayMerchantId"
                }
              }
            }
          ]
        }
      }
    ]
  }
}

‫2.3 ישויות

‫2.3.1 סכימת כלי נגינה

אמצעי התשלום ב-Google Pay ‏ (card_payment_instrument) הוא הרחבה של אמצעי התשלום הבסיסי בכרטיס. הוא מקבל בירושה שדות תצוגה רגילים (כמו brand ו-last_digits) כדי להבטיח עיבוד עקבי של הקבלה, תוך שיפור השדה credential כדי להעביר את מטען הייעודי (payload) הספציפי של טוקניזציה של Google Pay.

התנהגות הפלטפורמה: הפלטפורמה אחראית למיפוי התגובה של Google Pay PaymentMethodData למבנה הזה לפני שליחתה לעסק.

שם סוג נדרש תיאור
id [מזהה] מחרוזת כן מזהה ייחודי של אמצעי התשלום הזה, שהוקצה על ידי הפלטפורמה.
handler_id מחרוזת כן מזהה של רכיב ה-handler של Google Pay.
סוג מחרוזת כן קבוע = card. מציין שהאמצעי הזה מתנהג כמו כרטיס (מקבל בירושה שדות של כרטיס).
מותג מחרוזת כן רשת כרטיס האשראי (למשל, ‫visa, mastercard). ממופה מ-info.cardNetwork של Google Pay.
last_digits מחרוזת כן ‫4 הספרות האחרונות של הכרטיס. מיפוי מ-info.cardDetails של Google Pay.
rich_text_description מחרוזת לא תיאור אופציונלי בפורמט Rich text של הכרטיס (לדוגמה, ‫Visa עם 4 הספרות האחרונות 1234, תוקף עד 12/2025).
rich_card_art מחרוזת (URI) לא ‫URI אופציונלי לתמונה מתקדמת שמייצגת את הכרטיס (למשל, עיצוב הכרטיס של המנפיק).
billing_address כתובת לדברי דואר לא הכתובת לחיוב שמשויכת לכרטיס.
מסמך לאימות Credential Payload לא נתוני הטוקניזציה המאובטחים שמוחזרים על ידי Google Pay.

מטען ייעודי (payload) של פרטי כניסה

האובייקט הזה משמש כcredential של הכלי. הוא ממופה ישירות לנתונים של יצירת טוקנים ב-Google Pay.

כתובת דואר

האובייקט הזה משמש כשדה address. הוא ממופה ישירות ל-PostalAddress.

3. שילוב פלטפורמות

‫3.1 דרישות

לפני שפלטפורמות מטפלות בתשלומים של com.google.pay, הן צריכות:

  1. צריכה להיות אפשרות לטעון את Google Pay API לאתרים (או את הגרסה המקבילה ל-Android).
  2. כשמציגים את לחצן התשלום, צריך לפעול בהתאם להנחיות המיתוג של Google Pay.

‫3.2 פרוטוקול תשלום

הפלטפורמות חייבות לפעול לפי התהליך הזה כדי לעבד את ה-handler:

שלב 1: גילוי והגדרה

הפלטפורמה מאתחלת את הלקוח כדי לנהל את מחזור החיים של ה-API.

שלב 2: בדיקת המוכנות לתשלום

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

שלב 3: יצירת בקשת תשלום

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

שלב 4: הפעלת אינטראקציה עם המשתמש

הפלטפורמה מפעילה את הצגת דף התשלום כשהמשתמש מקיים אינטראקציה עם לחצן התשלום.

שלב 5: משלימים את התשלום

אחרי שהמשתמש מסיים את האינטראקציה, Google Pay API מחזיר אובייקט PaymentInstrument תחת המפתח payment_data. הפלטפורמה ממפה את התגובה הזו לסכימה card_payment_instrument ושולחת את בקשת השלמת התשלום.

POST /checkout-sessions/{checkout_id}/complete

{
  "payment_data": {
    "id": "pm_1234567890abc",
    "handler_id": "8c9202bd-63cc-4241-8d24-d57ce69ea31c",
    "type": "card",
    "brand": "visa",
    "last_digits": "4242",
    "billing_address": {
      "street_address": "123 Main Street",
      "extended_address": "Suite 400",
      "address_locality": "Charleston",
      "address_region": "SC",
      "postal_code": "29401",
      "address_country": "US",
      "first_name": "Jane",
      "last_name": "Smith"
    },
    "credential": {
      "type": "PAYMENT_GATEWAY",
      "token": "{\"signature\":\"...\",\"protocolVersion\":\"ECv2\"...}"
    }
  },
  "risk_signals": {
      ...
  }
}

4. עיבוד עסקי

כשעסקים מקבלים אמצעי תשלום ב-Google Pay, הם חייבים:

  1. אימות של רכיב Handler: מוודאים ש-handler_id תואם לרכיב Handler של Google Pay.
  2. שליפת טוקן: אחזור מחרוזת הטוקן מתוך payment_data.credential.token.
  3. עיבוד התשלום: מעבירים את מחרוזת הטוקן ואת פרטי העסקה לנקודת הקצה של ספק שירותי התשלום.
    • הערה: לרוב ספקי ה-PSP יש שדה ספציפי ל-Google Pay Payload או ל-Network Token.
  4. תשובה להחזרה: תשובה עם מצב התשלום הסופי (הצלחה או כישלון).

5. שיקולי אבטחה

‫5.1 אבטחת טוקנים

  • PAYMENT_GATEWAY: כשמשתמשים בסוג הטוקניזציה הזה, האסימון מוצפן במיוחד עבור הצד שמבצע את הטוקניזציה. הגורם המתווך לא יכול לפענח את הטוקן הזה, ועליו להעביר אותו כמו שהוא לגורם שמבצע את הטוקניזציה.
  • ישירות: אם משתמשים בDIRECTטוקניזציה, העסק מקבל נתוני כרטיס מוצפנים שהוא צריך לפענח. הפעולה הזו מגדילה באופן משמעותי את היקף התאימות לתקן PCI DSS, ובדרך כלל לא מומלץ לבצע אותה אלא אם העסק הוא ספק שירותים שעומד בדרישות של רמה 1 בתקן PCI.

‫5.2 בידוד הסביבה

  • מצב TEST: בסביבת TEST, מערכת Google Pay מחזירה אסימוני דמה. אי אפשר לחייב אותם.
  • מצב PRODUCTION: נעשה שימוש בכרטיסים אמיתיים. עסקים צריכים לוודא שהפרטים של ספק שירותי התשלום שלהם ב-config.allowed_payment_methods תואמים לסביבה.