مواصفات معالج الدفع في Google Pay

  • اسم المعالج: com.google.pay
  • الإصدار: 2026-01-11

1- مقدمة

يتيح معالج com.google.pay للأنشطة التجارية تقديم Google Pay كخيار لإتمام عملية الدفع بشكل أسرع من خلال المنصات المتوافقة مع UCP. تتيح Google Pay API إتمام عملية الدفع بسرعة من خلال منح المستخدمين إمكانية الوصول إلى طرق الدفع المخزّنة في حساباتهم على Google.

يتيح معالج الدفع هذا نموذج دمج بدون واجهة مستخدم حيث تقدّم الأنشطة التجارية إعدادات Google Pay (مثل شبكات البطاقات المسموح بها ومعلَمات بوابة الدفع)، وتتولّى المنصات معالجة التفاعل من جهة العميل مع واجهة برمجة التطبيقات Google Pay API لإنشاء رمز مميّز آمن للدفع.

‫1.1 المزايا الرئيسية

  • الإعداد العام: يمكن للأنشطة التجارية إعداد Google Pay مرة واحدة باستخدام تنسيق JSON العادي، ما يتيح لأي منصة معتمَدة عرض واجهة الدفع بدون رمز برمجي مخصّص للواجهة الأمامية.
  • الواجهة الأمامية المنفصلة: تتعامل المنصات مع تعقيد عملية دمج واجهة برمجة التطبيقات JavaScript API أو حزمة SDK في Google Pay، بينما تستخدم الأنشطة التجارية الرمز المميز الناتج.
  • الترميز الآمن: تستفيد هذه الميزة من إمكانية الترميز المضمّنة في Google لنقل بيانات الاعتماد المشفّرة مباشرةً إلى مقدّم خدمة الدفع (PSP) الخاص بالنشاط التجاري.

2. دمج الأنشطة التجارية

‫2.1 المتطلبات

قبل الإعلان عن Google Pay من خلال UCP، يجب أن تقوم الأنشطة التجارية بما يلي:

  1. الحصول على معرّف التاجر في Google Pay: هذا المعرّف مطلوب لإجراء المعالجة في بيئة PRODUCTION (يجب التسجيل في Google Pay & Wallet Console).
  2. التحقّق من توفّر خدمة PSP: تأكَّد من أنّ مقدّم خدمة الدفع (PSP) مدرَج في قائمة الجهات المسؤولة عن معالجة المعاملات وبوابات الدفع المتوافقة مع خدمة إنشاء الرموز المميّزة في Google Pay.

‫2.2 إعدادات المعالج

تعلن الأنشطة التجارية عن توفيرها خدمة Google Pay من خلال تضمين المعالج في مصفوفة معالجات الدفع. يجب أن يتوافق الإعداد تمامًا مع البنية المطلوبة لتهيئة Google Pay API.

‫2.2.1 مخطط الإعدادات

يحدّد كائن الإعداد البيئة وهوية النشاط التجاري وطرق الدفع المسموح بها.

طريقة الدفع في Google Pay

استنادًا إلى PaymentMethod في Google Pay

مواصفات إنشاء الرموز المميّزة

استنادًا إلى مواصفات الترميز في Google Pay

‫2.2.2 مثال على تعريف معالج

{
  "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 لنقل حمولة التجزئة المحدّدة في Google Pay.

سلوك المنصة: المنصة مسؤولة عن الربط بين رد Google Pay PaymentMethodData وهذا البناء قبل إرساله إلى النشاط التجاري.

الاسم النوع مطلوب الوصف
id سلسلة نعم معرّف فريد لأداة الدفع هذه، وتحدّده المنصة.
handler_id سلسلة نعم معرّف معالج Google Pay.
النوع سلسلة نعم الثابت = card تشير إلى أنّ أداة الدفع هذه تعمل كبطاقة (ترث حقول عرض البطاقة).
العلامة التجارية سلسلة نعم شبكة البطاقة (مثل ‫visa، mastercard) تمّت مطابقتها من info.cardNetwork في Google Pay.
last_digits سلسلة نعم آخر 4 أرقام من البطاقة تمت مطابقتها من info.cardDetails في Google Pay.
rich_text_description سلسلة لا وصف اختياري بتنسيق النص المنسّق للبطاقة (مثلاً، Visa ending in 1234, expires 12/2025‎ ("بطاقة Visa تنتهي بالأرقام 1234، وتنتهي صلاحيتها في 12/2025").
rich_card_art سلسلة (معرّف الموارد المنتظم (URI)) لا معرّف URI اختياري لصورة غنية تمثّل البطاقة (مثل تصميم بطاقة جهة الإصدار).
billing_address العنوان البريدي لا عنوان إرسال الفواتير المرتبط بالبطاقة
شهادة حمولة بيانات الاعتماد لا بيانات الترميز الآمن التي تعرضها Google Pay

حمولة بيانات الاعتماد

يعمل هذا العنصر كـ credential للأداة. وهي تتطابق مباشرةً مع بيانات إنشاء الرموز المميّزة في Google Pay.

العنوان البريدي

يعمل هذا العنصر كحقل address. ويتم ربطها مباشرةً بنوع PostalAddress.

3- دمج المنصات

‫3.1 المتطلبات

قبل معالجة دفعات com.google.pay، يجب أن تستوفي المنصات الشروط التالية:

  1. أن يكون قادرًا على تحميل Google Pay API for Web (أو إصدار Android المكافئ).
  2. الالتزام بإرشادات وضع العلامة التجارية في Google Pay عند عرض زر الدفع

‫3.2 بروتوكول الدفع

يجب أن تتّبع المنصات هذا المسار لمعالجة المعالج:

الخطوة 1: اكتشاف الأجهزة وإعدادها

يُعدّ النظام الأساسي العميل لإدارة دورة حياة واجهة برمجة التطبيقات.

الخطوة 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_id يتوافق مع معالج Google Pay.
  2. استخراج الرمز المميّز: لاسترداد سلسلة الرمز المميّز من payment_data.credential.token.
  3. معالجة الدفع: أرسِل سلسلة الرمز المميّز وتفاصيل المعاملة إلى نقطة نهاية مقدّم خدمة الدفع.
    • ملاحظة: تحتوي معظم مقدّمي خدمات الدفع على حقل محدّد باسم "حمولة Google Pay" أو "رمز مميّز للشبكة".
  4. ردّ الإرجاع: يجب الردّ بحالة الدفع النهائية (نجاح/تعذّر).

5- اعتبارات الأمان

‫5.1 أمان الرموز المميزة

  • PAYMENT_GATEWAY: عند استخدام هذا النوع من الترميز، يتم تشفير الرمز المميّز خصيصًا للجهة التي تقوم بالترميز. لا يمكن للجهة الوسيطة فك تشفير هذا الرمز المميّز، وعليها تمريره إلى الجهة المسؤولة عن تحويل البيانات إلى رموز مميّزة كما هو.
  • مباشر: في حال استخدام نظام DIRECT للترميز، يتلقّى النشاط التجاري بيانات بطاقة مشفّرة يجب فك تشفيرها. ويؤدي ذلك إلى زيادة نطاق الامتثال لمعيار أمان بيانات قطاع بطاقات الدفع (PCI DSS) بشكل كبير، ولا يُنصح به بشكل عام إلا إذا كان النشاط التجاري مقدّم خدمة متوافقًا مع معيار أمان بيانات قطاع بطاقات الدفع (PCI DSS) من المستوى 1.

‫5.2 عزل البيئة

  • وضع الاختبار: في بيئة TEST، تعرض Google Pay رموزًا مميّزة وهمية. ولا يمكن تحصيل رسوم منها.
  • وضع الإنتاج: يتم استخدام بطاقات حقيقية. على الأنشطة التجارية التأكّد من أنّ بيانات اعتماد موفّر خدمة الدفع (PSP) في config.allowed_payment_methods تتطابق مع البيئة.