Method: getDisputeInquiryReport

يمكنك الحصول على تقرير يقدّم معلومات لتسهيل المحادثة مع أحد المستخدمين بشأن اعتراض محتمل على دفعة معيّنة.

قد تكون الردود على هذا الاستعلام فارغة إذا لم تعرض هذه الطريقة الخطأ HTTP 200.

إذا واجهت نقطة النهاية خطأً أثناء معالجة الطلب، ستكون الاستجابة من نقطة النهاية هذه من النوع ErrorResponse.

قد تكون الردود على هذا الاستعلام فارغة إذا لم تعرض هذه الطريقة الخطأ HTTP 200. نص الاستجابة فارغ في الحالات التي قد يُستخدم فيها ErrorResponse مع وصف واضح لمساعدة المهاجم على فهم معرّف حساب وحدة تكامل الدفع الذي تتعامل معه الشركات الأخرى التي تُجري عملية الدمج. في هذه الحالات، حيث لا يتطابق مفتاح التوقيع، أو لم يتم العثور على معرّف عملية دمج الدفعات، أو كان مفتاح التشفير غير معروف، ستعرض هذه الطريقة خطأ HTTP 404 مع نص فارغ. إذا كان من الممكن التحقّق من توقيع الطلب، سيتم عرض معلومات إضافية بشأن الخطأ في نص الاستجابة.

يظهر مثال على الطلب على النحو التالي:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 3
    },
    "requestId": "HsKv5pvtQKTtz7rdcw1YqE",
    "requestTimestamp": {
      "epochMillis": "1519996751331"
    },
    "paymentIntegratorAccountId": "InvisiCashUSA_USD"
  },
  "paymentLookupCriteria": {
    "googleTransactionReferenceNumberCriteria": {
      "googleTransactionReferenceNumber": "714545417102363157911822",
      "authorizationCode": "111111"
    }
  },
  "existingGoogleClaimId": "138431383281",
  "requestOriginator": {
    "organizationId": "ISSUER_256",
    "organizationDescription": "Community Bank of Some City",
    "agentId": "982749"
  }
}

يظهر مثال على الرد على النحو التالي:


{
  "responseHeader": {
    "responseTimestamp": {
      "epochMillis": "1519996752221"
    }
  },
  "result": {
    "success": {
      "googleClaimId": "138431383281",
      "report": {
        "customerAccount": {
          "customerEmail": "example@gmail.com",
          "customerName" : "Example Customer"
        },
        "order": {
          "timestamp": {
            "epochMillis": "1517992525972"
          },
          "orderId": "SOP.8976-1234-1234-123456..99",
          "subTotalAmount": {
            "amountMicros": "206990000",
            "currencyCode": "USD"
          },
          "totalAmount": {
            "amountMicros": "212990000",
            "currencyCode": "USD"
          },
          "shippingAddress": {
            "addressLine": ["123 Main St"],
            "localityName": "Springfield",
            "administrativeAreaName": "CO",
            "postalCodeNumber": "80309",
            "countryCode": "US"
          },
          "taxes": [
            {
              "description": "Colorado Sales Tax",
              "amount": {
                "amountMicros": "6000000",
                "currencyCode": "USD"
              }
            }
          ],
          "items": [
            {
              "description": "Super cool gizmo",
              "merchant": "HTC",
              "googleProductName": "Google Store",
              "quantity": "2",
              "totalPrice": {
                "amountMicros": "198000000",
                "currencyCode": "USD"
              }
            },
            {
              "description": "Gizmo charger",
              "merchant": "HTC",
              "googleProductName": "Google Store",
              "quantity": "1",
              "totalPrice": {
                "amountMicros": "8990000",
                "currencyCode": "USD"
              }
            }
          ]
        },
        "payment": {
          "billingAddress" : {
            "addressLine": ["123 Main St"],
            "localityName": "Springfield",
            "administrativeAreaName": "CO",
            "postalCodeNumber": "80309",
            "countryCode": "US"
          },
          "amount": {
            "amountMicros": "100000000",
            "currencyCode": "USD"
          },
          "refunds": [
            {
              "amount": {
                "amountMicros": "9250000",
                "currencyCode": "USD"
              },
              "initiatedTimestamp": {
                "epochMillis": "1518811245384"
              }
            }
          ],
          "cardDetails": {
            "authResult": "APPROVED"
          }
        }
      }
    }
  }
}

طلب HTTP

POST https://vgw.googleapis.com/secure-serving/gsp/v3/getDisputeInquiryReport/:PIAID

نص الطلب

يحتوي نص الطلب على بيانات بالبنية التالية:

تمثيل JSON
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentLookupCriteria": {
    object (PaymentLookupCriteria)
  },
  "existingGoogleClaimId": string,
  "requestOriginator": {
    object (RequestOriginator)
  }
}
الحقول
requestHeader

object (RequestHeader)

مطلوب: العنوان المشترك لجميع الطلبات.

paymentLookupCriteria

object (PaymentLookupCriteria)

مطلوب: المعايير التي تشير إلى الدفعة التي سيتم البحث عنها في هذا الاستفسار.

existingGoogleClaimId

string

اختياري: سلسلة من إنشاء Google تم عرضها من خلال مكالمة سابقة إلى getDisputeInquiryReport تحدد بشكل فريد مطالبة هذا العميل باعتراضها.

وفي حال عدم توفّر هذه المعلومات، سيتم إنشاء معرّف مطالبة جديد. قد يقدّم المتصل الرقم googleClaimId بعد أن تم الرد عليه من خلال مكالمة سابقة إلى الرقم getDisputeInquiryReport، وذلك إذا كان هذا الطلب استمرارًا للاعتراض نفسه الذي قدّمه العميل.

سيتم عرض رقم تعريف المطالبة الذي تتم تعبئته هنا أو تم إنشاؤه في حقل googleClaimId للرد.

ليس صالحًا لتقديم googleClaimId والتي لم يتم عرضها من خلال مكالمة سابقة إلى getDisputeInquiryReport. في حال حدوث ذلك، سيتم عرض HTTP 400 طلب غير صالح.

requestOriginator

object (RequestOriginator)

مطلوب: معلومات عن المؤسسة أو المجموعة الفرعية التنظيمية التي أنشأت هذا الطلب.

نص الاستجابة

تتيح هذه الطريقة إرجاع أنواع متعددة من الإرجاع. للحصول على معلومات إضافية حول رمز حالة HTTP 4XX أو 5XX المطلوب عرضه مع ErrorResponse، يمكنك الرجوع إلى كائن ErrorResponse ووثائق رموز حالة HTTP.

تتيح هذه الطريقة إرجاع أنواع متعددة من الإرجاع. للحصول على معلومات إضافية حول رمز حالة HTTP 4XX أو 5XX المطلوب عرضه مع ErrorResponse، يمكنك الرجوع إلى كائن ErrorResponse ووثائق رموز حالة HTTP.

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

رسائل الردّ المحتمَلة
حالة HTTP 200

object (GetDisputeInquiryReportResponse)

حالة HTTP 4XX / 5XX

object (ErrorResponse)

RequestHeader

كائن العنوان المحدَّد في جميع الطلبات المُرسَلة إلى الخادم.

تمثيل JSON
{
  "requestId": string,
  "requestTimestamp": {
    object (Timestamp)
  },
  "protocolVersion": {
    object (Version)
  },
  "paymentIntegratorAccountId": string
}
الحقول
requestId

string

مطلوب: المعرّف الفريد لهذا الطلب.

هذه سلسلة يبلغ الحد الأقصى للطول 100 حرف، وتحتوي فقط على الأحرف "a-z" و"A-Z" و"0-9" و"":" و"-" و"_".

requestTimestamp

object (Timestamp)

مطلوب: الطابع الزمني لهذا الطلب. يجب أن يتحقّق المستلِم من أنّ الطابع الزمني الحالي هو ± 60 ثانية من "الآن" ويرفض الطلب إذا لم يكن كذلك. إنّ الطابع الزمني لهذا الطلب غير ثابت عند إعادة المحاولة.

protocolVersion

object (Version)

مطلوب: نسخة هذا الطلب.

paymentIntegratorAccountId

string

مطلوب: يحدد حسابًا فريدًا يخضع لقيود تعاقدية.

الطابع الزمني

كائن طابع زمني يمثل نقطة على المخطط الزمني لمعيار ISO بالمللي ثانية منذ حقبة Unix.

تمثيل JSON
{
  "epochMillis": string
}
الحقول
epochMillis

string (Int64Value format)

مطلوب: مللي ثانية منذ حقبة Unix

الإصدار

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

تمثيل JSON
{
  "major": integer
}
الحقول
major

integer

مطلوب: رقم الإصدار الرئيسي. يتم وضع علامة على هذا الطلب توافقًا مع طلبات التوافق مع الإصدارات المختلفة.

PaymentLookupCriteria

حاوية للمعايير التي يمكن أن تبحث عن دفعة بشكل فريد. يجب تعبئة حقل عضو واحد (وواحد فقط).

تمثيل JSON
{

  // Union field criteria can be only one of the following:
  "arnCriteria": {
    object (ArnCriteria)
  },
  "googleTransactionReferenceNumberCriteria": {
    object (GoogleTransactionReferenceNumberCriteria)
  },
  "captureRequestCriteria": {
    object (CaptureRequestCriteria)
  }
  // End of list of possible types for union field criteria.
}
الحقول

حقل الاتحاد criteria

يمكن أن تكون السمة "criteria" واحدة فقط مما يلي:

arnCriteria

object (ArnCriteria)

اختياري: ابحث استنادًا إلى الرقم المرجعي للجهة المنظِّمة (ARN).

googleTransactionReferenceNumberCriteria

object (GoogleTransactionReferenceNumberCriteria)

اختياري: يمكنك البحث استنادًا إلى الرقم المرجعي لمعاملة Google.

captureRequestCriteria

object (CaptureRequestCriteria)

اختياري: ابحث استنادًا إلى طلب الالتقاط الأصلي.

ArnCriteria

معايير البحث عن الدفعات استنادًا إلى الرقم المرجعي للزاهي (ARN)

تمثيل JSON
{
  "acquirerReferenceNumber": string,
  "authorizationCode": string
}
الحقول
acquirerReferenceNumber

string

مطلوب: الرقم المرجعي للمصرف (ARN) الذي يحدّد الدفعة بشكل فريد. يجب أن يتألف المعرّف الضريبي من 23 رقمًا.

authorizationCode

string

مطلوب: رمز التفويض للمعاملة.

GoogleTransactionReferenceNumberCriteria

معايير البحث عن الدفعات استنادًا إلى الرقم المرجعي للمعاملة الذي أنشأته Google

تمثيل JSON
{
  "googleTransactionReferenceNumber": string,
  "authorizationCode": string
}
الحقول
googleTransactionReferenceNumber

string

مطلوب: الرقم المرجعي للمعاملة الذي أنشأته Google والذي يحدّد الدفعة بشكل فريد.

authorizationCode

string

مطلوب: رمز التفويض للمعاملة.

CaptureRequestCriteria

معايير البحث عن الدفعات استنادًا إلى طلب تسجيل البيانات الأصلي

تمثيل JSON
{
  "captureRequestId": string
}
الحقول
captureRequestId

string

مطلوب: معرّف فريد لهذه المعاملة. هذا هو requestId الذي أنشأه Google أثناء مكالمة capture والتي يتم البحث عنها.

RequestOriginator

معلومات عن المؤسسة أو المجموعة الفرعية التنظيمية، واختياريًا الموظف، الذي نشأ منه هذا الطلب. يسمح هذا الإجراء لشركة Google بتحديد المشاكل أو حالات إساءة الاستخدام وتنفيذ عناصر التحكّم على مستوى أكثر دقة من سياسة paymentIntegratorAccountId. وهو ذو قيمة كبيرة على وجه الخصوص عندما يكون مقدِّم الخدمة وسيطًا يطلب من عدة عملاء خارجيين الحصول على هذه الخدمة.

تمثيل JSON
{
  "organizationId": string,
  "organizationDescription": string,
  "agentId": string
}
الحقول
organizationId

string

مطلوب: معرّف الشركة أو المؤسسة أو المجموعة التنظيمية التي نشأ منها هذا الطلب. يجب أن يكون فريدًا داخل paymentIntegratorAccountId.

organizationDescription

string

مطلوب: يجب إدخال اسم أو وصف للمؤسسة يمكن استخدامه لتسهيل التواصل بين موظفي Google والشركة المتعهّدة بشأن تلك المؤسسة.

agentId

string

اختياري: معرّف فريد للوكيل المحدّد (الموظف) في المؤسسة الذي حدّده organizationId الذي نشأ منه هذا الطلب. يجب أن يكون فريدًا داخل organizationId.

GetDisputeInquiryReportResponse

حمولة الاستجابة لطريقة getDisputeInquiryReport

تمثيل JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "result": {
    object (GetDisputeInquiryReportResult)
  }
}
الحقول
responseHeader

object (ResponseHeader)

مطلوب: عنوان مشترك لجميع الردود.

result

object (GetDisputeInquiryReportResult)

مطلوب: نتيجة هذه المكالمة.

ResponseHeader

كائن العنوان الذي يتم تحديده على جميع الاستجابات المُرسَلة من الخادم

تمثيل JSON
{
  "responseTimestamp": {
    object (Timestamp)
  }
}
الحقول
responseTimestamp

object (Timestamp)

مطلوب: الطابع الزمني لهذا الرد. يجب أن يتأكّد المستلِم من أنّ الطابع الزمني هذا هو ± 60 ثانية من "الآن" ويرفض الردّ إذا لم يكن كذلك.

GetDisputeInquiryReportResult

تمثيل JSON
{

  // Union field result can be only one of the following:
  "success": {
    object (SuccessDetails)
  },
  "paymentNotFound": {
    object (Empty)
  },
  "paymentTooOld": {
    object (Empty)
  },
  "orderCannotBeReturned": {
    object (Empty)
  },
  "noAdditionalDetails": {
    object (Empty)
  }
  // End of list of possible types for union field result.
}
الحقول

حقل الاتحاد result

يمكن أن تكون السمة "result" واحدة فقط مما يلي:

success

object (SuccessDetails)

تم العثور على الدفعة وتم تقديم تقرير.

paymentNotFound

object (Empty)

لم يتم العثور على الدفعة المطلوبة.

paymentTooOld

object (Empty)

تم العثور على الدفعة المطلوبة، ولكن لم يتم تقديم تقرير بسبب المدة الزمنية للدفعة.

orderCannotBeReturned

object (Empty)

تنتمي الدفعة المطلوبة إلى طلب موجود ولكن لا يمكن إرجاعه. تشمل الأسباب الحالات التي تمت فيها إزالة الطلب بناءً على طلب مالكه.

noAdditionalDetails

object (Empty)

تم العثور على الدفعة المطلوبة، ولكن لا يتوفر تقرير.

SuccessDetails

تمثيل JSON
{
  "googleClaimId": string,
  "report": {
    object (PurchaseReport)
  }
}
الحقول
googleClaimId

string

مطلوب: سلسلة من إنشاء Google وتُعرِّف بشكل فريد اعتراض العميل هذا.

إذا تمت تعبئة existingGoogleClaimId في الطلب، ستكون هذه القيمة هي نفسها. وبخلاف ذلك، ستكون قيمة تم إنشاؤها حديثًا. يمكن تقديم هذه القيمة في طلبات getDisputeInquiryReport المستقبلية إذا كانت جزءًا من اعتراض العميل نفسه.

report

object (PurchaseReport)

مطلوب: تفاصيل ذات صلة بالاعتراض على الدفعة المحدّدة في الطلب.

PurchaseReport

تقرير يحتوي على التفاصيل ذات الصلة بعملية الشراء المرتبطة بالدفعة المطلوبة.

تمثيل JSON
{
  "customerAccount": {
    object (CustomerAccount)
  },
  "order": {
    object (Order)
  },
  "payment": {
    object (Payment)
  }
}
الحقول
customerAccount

object (CustomerAccount)

مطلوب: معلومات حول العميل وحسابه.

order

object (Order)

اختياري: معلومات عن الطلب الذي تم الدفع بموجبه. هذه الميزة غير متاحة لبعض تقارير الشراء.

payment

object (Payment)

مطلوب: معلومات تتعلق بالدفع. ملاحظة: يمكن تسديد عدة دفعات على طلب واحد، ولكن لن يتضمّن هذا القسم سوى معلومات الدفعة التي تم تحديدها في الطلب الأصلي.

CustomerAccount

معلومات عن حساب العميل

تمثيل JSON
{
  "customerEmail": string,
  "customerName": string
}
الحقول
customerEmail

string

اختياري: عنوان البريد الإلكتروني المرتبط بحساب العميل على Google.

customerName

string

مطلوب: اسم العميل.

طلب

معلومات عن الطلب

تمثيل JSON
{
  "timestamp": {
    object (Timestamp)
  },
  "orderId": string,
  "subTotalAmount": {
    object (Amount)
  },
  "totalAmount": {
    object (Amount)
  },
  "shippingAddress": {
    object (Address)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "taxes": [
    {
      object (Tax)
    }
  ]
}
الحقول
timestamp

object (Timestamp)

مطلوب: الطابع الزمني لوقت تقديم الطلب.

orderId

string

مطلوب: سلسلة تعرّف هذا الترتيب بشكل فريد.

subTotalAmount

object (Amount)

مطلوب: إجمالي مبلغ هذا الطلب بدون احتساب الضريبة.

totalAmount

object (Amount)

مطلوب: إجمالي مبلغ هذا الطلب شاملاً الضريبة.

shippingAddress

object (Address)

اختياري: عنوان شحن السلع المادية في هذا الطلب

items[]

object (Item)

مطلوب: قائمة العناصر التي كانت جزءًا من هذا الطلب.

taxes[]

object (Tax)

مطلوبة: قائمة الضرائب التي كانت جزءًا من هذا الطلب. قد تكون هذه القائمة فارغة.

المبلغ

لربط المبلغ بالمايكرو برمز عملة.

تمثيل JSON
{
  "amountMicros": string,
  "currencyCode": string
}
الحقول
amountMicros

string (Int64Value format)

مطلوب: المبلغ بوحدات micros.

currencyCode

string

مطلوب: رمز العملة المكوّن من 3 أحرف بتنسيق ISO 4217

العنوان

بناء معلومات حول العنوان المادي.

تمثيل JSON
{
  "addressLine": [
    string
  ],
  "localityName": string,
  "administrativeAreaName": string,
  "postalCodeNumber": string,
  "countryCode": string
}
الحقول
addressLine[]

string

اختياري: يؤدي ذلك إلى الاحتفاظ بنص غير منظَّم.

localityName

string

اختياري: يُعدّ هذا اسمًا غير واضح، ولكنه يشير بشكل عام إلى جزء المدينة/البلدة من العنوان. في مناطق العالم التي لم يتم تعريف المناطق المحلية فيها بشكل جيد أو لا تتناسب مع هذا الهيكل جيدًا (مثل اليابان والصين)، اترك localName فارغًا واستخدم addressLine.

أمثلة: مدينة في الولايات المتحدة، بلدية تكنولوجيا المعلومات، مدينة البريد في المملكة المتحدة.

administrativeAreaName

string

اختياري: قسم فرعي إداري عالي المستوى في هذا البلد" أمثلة: ولاية أمريكية أو منطقة تكنولوجيا المعلومات أو مقاطعة كولومبيا أو محافظة اليابان".

postalCodeNumber

string

اختياري: على الرغم من الاسم، غالبًا ما تكون قيم الرمز البريدي أحرف أبجدية رقمية. أمثلة: "94043"، "SW1W"، "SW1W 9TQ".

countryCode

string

اختياري: رمز بلد عنوان العميل، ومن المتوقّع أن يكون ISO-3166-1 Alpha-2.

المنتج/الخدمة

معلومات عن سلعة معيّنة في الطلب

تمثيل JSON
{
  "description": string,
  "merchant": string,
  "quantity": string,
  "totalPrice": {
    object (Amount)
  },
  "googleProductName": string
}
الحقول
description

string

مطلوب: وصف للسلعة التي تم شراؤها.

merchant

string

مطلوب: يشير إلى بائع السلعة أو الفنّان أو الجهة المصنّعة لها.

quantity

string (Int64Value format)

اختياري: الكمية التي تمّ طلبها من هذا العنصر

سيتم حذف هذا الحقل إذا كانت كميات الأعداد الصحيحة غير قابلة للتطبيق على المنتج (قد تتضمّن المنتجات الخاضعة للقياس كميات كسرية على سبيل المثال).

totalPrice

object (Amount)

مطلوب: السعر الإجمالي لهذه السلعة.

googleProductName

string

مطلوب: اسم خدمة منتج Google للسلعة.

ضريبة

معلومات عن الضريبة التي تسري على هذا الطلب.

تمثيل JSON
{
  "description": string,
  "amount": {
    object (Amount)
  }
}
الحقول
description

string

مطلوب: وصف للضريبة.

amount

object (Amount)

مطلوب: مبلغ الضريبة.

الدفع

معلومات عن الدفعة

تمثيل JSON
{
  "billingAddress": {
    object (Address)
  },
  "amount": {
    object (Amount)
  },
  "refunds": [
    {
      object (Refund)
    }
  ],

  // Union field fopDetails can be only one of the following:
  "cardDetails": {
    object (PaymentCardDetails)
  }
  // End of list of possible types for union field fopDetails.
}
الحقول
billingAddress

object (Address)

مطلوب: عنوان إرسال الفواتير لهذه الدفعة.

amount

object (Amount)

مطلوب: مبلغ هذه الدفعة.

refunds[]

object (Refund)

مطلوب: قائمة بردّ الأموال المدفوعة في هذه الدفعة. قد تكون هذه القائمة فارغة.

حقل الاتحاد fopDetails

يمكن أن تكون السمة "fopDetails" واحدة فقط مما يلي:

cardDetails

object (PaymentCardDetails)

اختياري: تفاصيل دفع خاصة بخيارات دفع بطاقات الائتمان والسحب الآلي.

ردّ الأموال

معلومات عن ردّ الأموال المدفوعة في عملية دفع

تمثيل JSON
{
  "amount": {
    object (Amount)
  },
  "initiatedTimestamp": {
    object (Timestamp)
  }
}
الحقول
amount

object (Amount)

مطلوب: المبلغ الذي تم ردّه.

initiatedTimestamp

object (Timestamp)

مطلوب: طابع زمني لبدء عملية ردّ الأموال.

PaymentCardDetails

تفاصيل الدفع الخاصة ببطاقات الائتمان وبطاقات السحب الآلي

تمثيل JSON
{
  "authResult": enum (AuthResult)
}
الحقول
authResult

enum (AuthResult)

مطلوب: مصادقة نتيجة الدفع.

AuthResult

نتائج مصادقة الدفع

عمليات التعداد
UNKNOWN_RESULT لا تضبط هذه القيمة التلقائية مطلقًا.
APPROVED تمت الموافقة على المصادقة.
DENIED تم رفض المصادقة.
NOT_ATTEMPTED لم تتم محاولة المصادقة.

ما مِن لاعبين

لا يحتوي هذا النوع على أي حقول.

يُستخدم هذا الكائن لقابلية التوسع لأن القيم المنطقية والتعداد تحتاج غالبًا إلى التمديد ببيانات إضافية. تستخدمه أداة التنفيذ لتحديد التواجد. قد يتم توسيع التعداد الذي يمثله هذا العمود ليتضمن بيانات في الإصدارات المستقبلية.

تمثيل JSON لـ Empty هو كائن JSON فارغ {}.

ErrorResponse

كائن "الاستجابة للخطأ" في جميع الطرق.

تمثيل JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "errorDescription": string,
  "paymentIntegratorErrorIdentifier": string,
  "errorResponseResult": {
    object (ErrorResponseResult)
  }
}
الحقول
responseHeader

object (ResponseHeader)

مطلوب: عنوان مشترك لجميع الردود.

errorDescription

string

اختياري: قدِّم وصفًا لهذه الحالة حتى يتمكّن ممثّلو الدعم من تصحيح الأخطاء. يُرجى العلم أنّ هذه الرسالة الإلكترونية لا تظهر للمستخدمين مطلقًا. يمكن أن يحتوي على نص وصفي غير حساس يُستخدم لتصحيح الأخطاء. لاحظ أن بعض قيم errorResponseCode يجب أن تكون مصحوبة بتفاصيل إضافية في هذا الحقل. تحذير: لا تضمِّن أي رموز مميزة في هذه الرسالة ما لم يتم تحديدها على أنها عامة.

paymentIntegratorErrorIdentifier

string

اختياري: هذا المعرّف خاص بجهة عملية الدمج ويتم إنشاؤه من خلال شركة الدمج. ويتم استخدامه لأغراض تصحيح الأخطاء فقط لتحديد هذا الطلب. تمثّل هذه السمة المعرّف الذي تستخدمه المسؤول عن عملية الدمج هذه للمكالمة.

errorResponseResult

object (ErrorResponseResult)

اختياري: رمز يسجّل نوع الخطأ الذي حدث.

ErrorResponseResult

رموز الخطأ

تمثيل JSON
{

  // Union field result can be only one of the following:
  "invalidApiVersion": {
    object (InvalidApiVersion)
  },
  "invalidPayloadSignature": {
    object (InvalidPayloadSignature)
  },
  "invalidPayloadEncryption": {
    object (InvalidPayloadEncryption)
  },
  "requestTimestampOutOfRange": {
    object (RequestTimestampOutOfRange)
  },
  "invalidIdentifier": {
    object (InvalidIdentifier)
  },
  "idempotencyViolation": {
    object (IdempotencyViolation)
  },
  "invalidFieldValue": {
    object (InvalidFieldValue)
  },
  "missingRequiredField": {
    object (MissingRequiredField)
  },
  "preconditionViolation": {
    object (PreconditionViolation)
  },
  "userActionInProgress": {
    object (UserActionInProgress)
  },
  "invalidDecryptedRequest": {
    object (InvalidDecryptedRequest)
  },
  "forbidden": {
    object (Forbidden)
  }
  // End of list of possible types for union field result.
}
الحقول

حقل الاتحاد result

يمكن أن تكون السمة "result" واحدة فقط مما يلي:

invalidApiVersion

object (InvalidApiVersion)

يتم استخدامها إذا كان إصدار واجهة برمجة التطبيقات الخاص بالطلب غير متوافق. رمز HTTP الموصى به: 400

invalidPayloadSignature

object (InvalidPayloadSignature)

يُستخدم إذا كان توقيع الحمولة لمفتاح غير معروف أو غير نشط. رمز HTTP الموصى به: 401

invalidPayloadEncryption

object (InvalidPayloadEncryption)

يُستخدم هذا الحقل إذا كان تشفير الحمولة لمفتاح غير معروف أو غير نشط. رمز HTTP الموصى به: 400

requestTimestampOutOfRange

object (RequestTimestampOutOfRange)

يتم استخدامه إذا كان requestTimestamp ليس ± 60 ثانية في الوقت الحالي. رمز HTTP الموصى به: 400

invalidIdentifier

object (InvalidIdentifier)

يتم استخدامه إذا كان المعرّف المرسَل في الطلب غير صالح أو غير معروف. قد يشمل ذلك PIAID وpickupRequestId ورمز Google Payment Token وغير ذلك. رمز HTTP المقترَح: 404.

idempotencyViolation

object (IdempotencyViolation)

يتم استخدامه إذا كان الطلب يخالف متطلبات الشبه بالطلب. رمز HTTP الموصى به: 412

invalidFieldValue

object (InvalidFieldValue)

تُستخدَم إذا كان الطلب يحتوي على قيمة لحقل غير مُدرَج في مجموعة القيم المسموح بها. رمز HTTP الموصى به: 400

missingRequiredField

object (MissingRequiredField)

يتم استخدامه إذا لم يتم ضبط الحقل المطلوب في الطلب. رمز HTTP الموصى به: 400

preconditionViolation

object (PreconditionViolation)

يُستخدم في حال انتهاك قيد على العملية (على سبيل المثال، عندما يتجاوز طلب استرداد مبلغ مدفوع المبلغ المتبقي في المعاملة). رمز HTTP الموصى به: 400

userActionInProgress

object (UserActionInProgress)

يُستخدم إذا تعذّرت معالجة الطلب في الوقت الحالي، لأنّه سيؤدي إلى مقاطعة إجراء مستخدم قيد المعالجة، والذي يعمل بشكل فعّال كقفل للنظام. ويجب عدم استخدام هذا الرمز للإشارة إلى حالات تعذُّر التشغيل بسبب أخطاء التزامن الداخلية الخاصة بالتنفيذ. رمز HTTP الموصى به: 423

invalidDecryptedRequest

object (InvalidDecryptedRequest)

يتم استخدامه إذا كان من الممكن فك تشفير حمولة الطلب، ولكن تعذَّر تحليل الرسالة الناتجة. رمز HTTP الموصى به: 400

forbidden

object (Forbidden)

تم حظر الوصول إلى المورد المطلوب. رمز Http الموصى به: 403

InvalidApiVersion

تمثيل JSON
{
  "requestVersion": {
    object (Version)
  },
  "expectedVersion": {
    object (Version)
  }
}
الحقول
requestVersion

object (Version)

مطلوب: النسخة غير الصالحة التي تم تحديدها في الطلب.

expectedVersion

object (Version)

مطلوب: الإصدار المتوقَّع.

InvalidPayloadSignature

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.

InvalidPayloadEncryption

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.

RequestTimestampOutOfRange

تمثيل JSON
{
  "requestTimestamp": {
    object (Timestamp)
  },
  "serverTimestampAtReceipt": {
    object (Timestamp)
  }
}
الحقول
requestTimestamp

object (Timestamp)

مطلوب: الطابع الزمني الوارد في الطلب

serverTimestampAtReceipt

object (Timestamp)

مطلوب: وقت الخادم عند الاستلام، ويُستخدَم للمقارنة

InvalidIdentifier

تمثيل JSON
{
  "invalidIdentifierType": string
}
الحقول
invalidIdentifierType

string

مطلوب: نوع المعرّف غير الصالح، مثل PIAID و CaptureRequestId وما إلى ذلك.

IdempotencyViolation

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.

InvalidFieldValue

تمثيل JSON
{
  "invalidFieldName": string
}
الحقول
invalidFieldName

string

مطلوب: اسم الحقل الذي تبيّن أنّه غير صالح.

MissingRequiredField

تمثيل JSON
{
  "missingFieldNames": [
    string
  ]
}
الحقول
missingFieldNames[]

string

مطلوب: أسماء الحقول غير المتوفّرة.

PreconditionViolation

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.

UserActionInProgress

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.

InvalidDecryptedRequest

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.

ممنوع

لا يحتوي هذا النوع على أي حقول.

هذه الرسالة فارغة عن قصد في الوقت الحالي. ويمكن إضافة حقول جديدة في المستقبل.