يصف هذا المرجع خيارات عنصر الردّ من واجهة برمجة التطبيقات من Google Pay التي يمكن استخدامها مع تطبيقك. عناصر الاستجابة هي عناصر يتم عرضها من خلال طرق العميل في Google Pay API.
PaymentData
هذا هو عنصر الاستجابة الذي تعرضه Google بعد موافقة المسؤول عن الدفع على عملية الدفع.
PaymentDataRequest.PaymentDataRequest.PaymentDataRequest.| الموقع | النوع | متوفّر دائمًا | الوصف |
|---|---|---|---|
apiVersion |
الرقم | نعم | رقم الإصدار الرئيسي لواجهة برمجة التطبيقات تتطابق القيمة في الردّ مع القيمة المقدَّمة في |
apiVersionMinor |
الرقم | نعم | الإصدار الثانوي لواجهة برمجة التطبيقات تتطابق القيمة في الردّ مع القيمة المقدَّمة في |
paymentMethodData |
PaymentMethodData | نعم | بيانات عن طريقة الدفع المحدّدة |
email |
سلسلة | لا | عنوان البريد الإلكتروني، إذا تم ضبط emailRequired على true
في
PaymentDataRequest.
إذا تم ضبط السمة على true في طلب آخر، لن يكون هناك أي تأثير. |
shippingAddress |
العنوان | لا | عنوان الشحن، إذا تم ضبط shippingAddressRequired على true في
|
مثال
يعرض نموذج الاستجابة هذا للإصدار 2.0 من Google Pay API طريقة دفع 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 |
سلسلة | نعم | شبكة بطاقة الدفع المحدّدة
تتطابق القيم المعروضة مع تنسيق يجب عدم عرض قيمة شبكة البطاقات هذه للمشتري. ويتم استخدامها عندما تكون تفاصيل بطاقة المشتري مطلوبة. على سبيل المثال، إذا كان فريق دعم العملاء يحتاج إلى هذه القيمة
لتحديد البطاقة التي استخدمها المشتري لإجراء معاملته. للحصول على وصف يظهر للمستخدم، استخدِم السمة |
billingAddress |
العنوان | لا | عنوان إرسال الفواتير المرتبط بطريقة الدفع المقدَّمة، إذا تم ضبط billingAddressRequired على true في
CardParameters. |
cardFundingSource |
سلسلة | نعم | مصدر تمويل البطاقة لطريقة الدفع المحدّدة
|
مثال
يعرض هذا المثال بطاقة على شبكة Visa.
{ "cardNetwork": "VISA", "cardDetails": "1234", "cardFundingSource": "CREDIT", "assuranceDetails": { "cardHolderAuthenticated": false, "accountVerified": true } }
AssuranceDetailsSpecifications
يوفّر هذا العنصر معلومات حول عملية التحقّق التي تم إجراؤها على بيانات اعتماد الدفع التي تم عرضها، وذلك حتى يمكن تطبيق عمليات التحقّق المناسبة من مخاطر وسيلة الدفع.
| الاسم | النوع | الوصف |
|---|---|---|
accountVerified |
قيمة منطقية | إذا كانت القيمة true، يشير ذلك إلى أنّه تم التحقّق من حيازة Cardholder في بيانات اعتماد الدفع التي تم عرضها. |
cardHolderAuthenticated |
قيمة منطقية |
إذا كانت القيمة إذا كان |
يمكنك تلقّي عنصر الاستجابة ومعالجته حتى إذا لم تستخدم الحقل assuranceDetails. لتلقّي هذا العنصر، يجب تضمين
assuranceDetailsRequired: true في عنصر الطلب
CardParameters:
PaymentMethodTokenizationData
يوفّر هذا العنصر بيانات الرموز المميّزة لطريقة الدفع.
| الموقع | النوع | متوفّر دائمًا | الوصف |
|---|---|---|---|
type |
سلسلة | نعم | نوع الرموز المميّزة التي سيتم تطبيقها على طريقة الدفع المحدّدة
تتطابق هذه القيمة مع السمة type المحدّدة في
PaymentMethodTokenizationSpecification.
|
token |
سلسلة | لا | الرمز المميّز الذي تم إنشاؤه لطريقة الدفع
|
مثال
هذا مثال على ردّ تم ترميزه وإعداده لبوابة الدفع "example".
{ "type": "PAYMENT_GATEWAY", "token": "examplePaymentMethodToken" }
PaymentAuthorizationResult
يوفّر هذا العنصر معلومات عن نتيجة تفويض الدفع.
| الموقع | النوع | الضرورة | الوصف |
|---|---|---|---|
transactionState |
سلسلة | مطلوب | يتم حلّ حالة المعاملة من خلال إحدى نتائج التاجر التالية:
|
error |
PaymentDataError | اختياري | الخطأ الذي سيتم عرضه في صفحة الدفع للمستخدم عندما يكون من الضروري إعادة محاولة الدفع. |
مثال
يوضّح المثال التالي نتيجة الدفع التي يتم عرضها بعد معالجة عملية الدفع:
{ "transactionState": "ERROR", "error": { "reason": "PAYMENT_DATA_INVALID", "message": "Cannot pay with payment credentials", "intent": "PAYMENT_AUTHORIZATION" } }
PaymentDataError
| الموقع | النوع | الضرورة | الوصف |
|---|---|---|---|
reason |
سلسلة | مطلوب | قائمة بأسباب الأخطاء المحدّدة مسبقًا:
|
message |
سلسلة | مطلوب | رسالة خطأ تظهر للمستخدم في مربّع حوار. |
intent |
سلسلة | مطلوب | The intent of the error.
|
مثال
يوضّح هذا المثال الغرض من الخطأ والرسالة التي سيتم عرضها في صفحة الدفع.
{ "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 |
تمثّل هذه السمة تقسيمًا فرعيًا للبلد، مثل ولاية أو مقاطعة. |
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 |
سلسلة | اختياري | يصف سبب استدعاء دالة ردّ الاتصال لبيانات الدفع.
|
shippingAddress |
IntermediateAddress | اختياري | العنوان المحدّد في صفحة الدفع |
shippingOptionData |
SelectionOptionData | اختياري | خيار الشحن المحدّد في صفحة الدفع |
paymentMethodData |
IntermediatePaymentMethodData | اختياري | بيانات طريقة الدفع المحدّدة في صفحة الدفع |
أمثلة
يعرض هذا المثال الحمولة الوسيطة التي تم عرضها من Google Pay API لتغييرات عنوان الشحن.
{ "callbackTrigger": "SHIPPING_ADDRESS", "shippingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" }, "shippingOptionData": { "id": "shipping-001" } }
يعرض هذا المثال الحمولة الوسيطة التي يتم عرضها عند تغيير طريقة الدفع.
{ "callbackTrigger": "PAYMENT_METHOD", "paymentMethodData": { "type": "CARD", "info": { "cardNetwork": "VISA", "cardFundingSource": "CREDIT", "billingAddress": { "administrativeArea": "NY", "countryCode": "US", "locality": "New York", "postalCode": "10011" } } } }
IntermediateAddress
يحتوي العنوان الوسيط على عنوان شحن تم إخفاؤه (بدون أسطر العنوان على مستوى الشارع أو أسماء المستلِمين) للسماح باحتساب الضريبة السارية وخيارات الشحن قبل أن يفوّض المستخدم الدفع.
| الموقع | النوع | الضرورة | الوصف |
|---|---|---|---|
administrativeArea |
سلسلة | مطلوب | تمثّل هذه السمة تقسيمًا فرعيًا للبلد، مثل ولاية أو مقاطعة. |
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
يحتوي هذا العنصر على معلومات محدودة حول طريقة الدفع المحدّدة لعمليات معاودة الاتصال الخاصة بالمطوّرين.
| الموقع | النوع | الضرورة | الوصف |
|---|---|---|---|
type |
سلسلة | مطلوب | نوع طريقة الدفع يُسمح فقط بالقيمة CARD لعملية الاستدعاء هذه. |
info |
IntermediateCardInfo | اختياري | معلومات عن البطاقة المحدّدة لا يتم ذكر هذا التاريخ إلا إذا كانت قيمة type هي CARD. |
IntermediateCardInfo
يحتوي هذا العنصر على معلومات محدودة عن البطاقة المحدّدة، ويُستخدَم في عمليات معاودة الاتصال للمطوّرين.
| الموقع | النوع | الضرورة | الوصف |
|---|---|---|---|
billingAddress |
IntermediateAddress | اختياري | عنوان إرسال الفواتير المرتبط بالبطاقة لا تتم تعبئة هذا الحقل إلا عند ضبط عنوان إرسال الفواتير على أنّه مطلوب. |
cardNetwork |
سلسلة | اختياري | شبكة بطاقة الدفع المحدّدة تتطابق القيم المعروضة مع تنسيق يجب عدم عرض قيمة شبكة البطاقات هذه للمشتري. |
cardFundingSource |
سلسلة | اختياري | مصدر تمويل البطاقة لبطاقة الدفع المحدّدة
|