- طلب HTTP
- نص الطلب
- نص الاستجابة
- PaymentLookupCriteria
- ArnCriteria
- GoogleTransactionReferenceNumberCriteria
- CaptureRequestCriteria
- RequestOriginator
- GetDisputeInquiryReportResultCode
- PurchaseReport
- CustomerAccount
- الترتيب
- العنوان
- السلعة
- الضريبة
- الدفع
- ردّ الأموال
- PaymentCardDetails
- AuthResult
يمكنك الحصول على تقرير يقدّم معلومات لتسهيل إجراء محادثة مع فريق دعم العملاء بشأن نزاع محتمل بشأن دفعة.
إذا واجهت نقطة النهاية خطأً أثناء معالجة الطلب، سيكون الرد من نقطة النهاية هذه من النوع .ErrorResponse
قد تكون الردود على هذا الطلب فارغة إذا لم تعرض هذه الطريقة رمز HTTP 200. يكون نص الاستجابة فارغًا في الحالات التي قد يتم فيها استخدام مع وصف واضح لمساعدة المهاجم على فهم معرّف حساب شركة تكامل الدفع الخاص بالجهات المدمَجة الأخرى. في هذه الحالات، عندما يكون مفتاح التوقيع غير متطابق أو لم يتم العثور على معرّف وحدة تكامل الدفع أو كان مفتاح التشفير غير معروف، ستعرض هذه الطريقة خطأ HTTP 404 بدون نص. وإذا توفّرت إمكانية التحقّق من صحة توقيع الطلب، سيتم عرض معلومات إضافية بشأن الخطأ في نص الاستجابة.ErrorResponse
إليك مثال على الطلب:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1519996751331"
},
"paymentIntegratorAccountId": "InvisiCashUSA",
"paymentLookupCriteria": {
"googleTransactionReferenceNumberCriteria": {
"googleTransactionReferenceNumber": "714545417102363157911822",
"authorizationCode": "111111"
}
},
"existingGoogleClaimId": "138431383281",
"requestOriginator": {
"organizationId": "ISSUER_256",
"organizationDescription": "Community Bank of Some City",
"agentId": "982749"
}
}
يبدو الرد كمثال:
{
"responseHeader": {
"responseTimestamp": "1519996752221"
},
"result": "SUCCESS",
"googleClaimId": "138431383281",
"report": {
"customerAccount": {
"customerEmail": "example@gmail.com",
"customerName" : "Example Customer"
},
"order": {
"timestamp": "1517992525972",
"orderId": "SOP.8976-1234-1234-123456..99",
"currencyCode": "USD",
"subTotalAmount": "206990000",
"totalAmount": "212990000",
"shippingAddress": {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"taxes": [
{
"description": "Colorado Sales Tax",
"amount": "6000000"
}
],
"items": [
{
"description": "Super cool gizmo",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "2",
"totalPrice": "198000000"
},
{
"description": "Gizmo charger",
"merchant": "HTC",
"googleProductName": "Google Store",
"quantity": "1",
"totalPrice": "8990000"
}
]
},
"payment": {
"billingAddress" : {
"name": "Example Customer",
"addressLine": ["123 Main St"],
"localityName": "Springfield",
"administrativeAreaName": "CO",
"postalCodeNumber": "80309",
"countryCode": "US"
},
"amount": "100000000",
"refunds": [
{
"amount": "9250000",
"initiatedTimestamp": "1518811245384"
}
],
"cardDetails": {
"authResult": "APPROVED"
}
}
}
}
طلب HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/getDisputeInquiryReport/:PIAID
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
| تمثيل JSON |
|---|
{ "requestHeader": { object ( |
| الحقول | |
|---|---|
requestHeader |
مطلوب: عنوان مشترك لجميع الطلبات. |
paymentIntegratorAccountId |
مطلوب: معرّف حساب وحدة تكامل الدفع الذي يحدّد المتصل والقيود التعاقدية ذات الصلة بهذا التفاعل. |
paymentLookupCriteria |
مطلوبة: المعايير التي تشير إلى الدفعة التي سيتم البحث عنها لهذا الاستعلام |
existingGoogleClaimId |
OPTIONAL: سلسلة أنشأتها Google عبر استدعاء سابق إلى وفي حال عدم توفّره، سيتم إنشاء معرّف مطالبة جديد. قد يقدم المتصل رقم سيتم عرض معرّف المطالبة الذي تتم تعبئته هنا أو تم إنشاؤه في الحقل لا يصلح تقديم |
requestOriginator |
مطلوب: معلومات عن المؤسسة أو المجموعة الفرعية التنظيمية التي أنشأت هذا الطلب. |
نص الاستجابة
حمولة الاستجابة لطريقة getDisputeInquiryReport
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
| تمثيل JSON |
|---|
{ "responseHeader": { object ( |
| الحقول | |
|---|---|
responseHeader |
مطلوب: عنوان مشترك لجميع الردود. |
result |
REQUIRED: نتيجة هذه المكالمة. |
googleClaimId |
OPTIONAL: سلسلة من إنشاء Google تحدّد هذا الاعتراض بشكل فريد مع العميل. (تُعرض فقط إذا كان إذا تمت تعبئة |
report |
اختياري: تفاصيل ذات صلة بالاعتراض على الدفعة المحدَّدة في الطلب (تُعرض فقط إذا كان |
PaymentLookupCriteria
حاوية للمعايير التي يمكنها البحث عن دفعة بشكل فريد يجب تعبئة حقل عضو واحد (وواحد فقط).
| تمثيل JSON |
|---|
{ // Union field |
| الحقول | |
|---|---|
حقل الاتحاد يمكن أن يكون |
|
arnCriteria |
OPTIONAL: البحث استنادًا إلى الرقم المرجعي لصاحب الحساب (ARN). |
googleTransactionReferenceNumberCriteria |
OPTIONAL: ابحث استنادًا إلى الرقم المرجعي للمعاملات على Google. |
captureRequestCriteria |
اختياري: ابحث استنادًا إلى رقم تعريف طلب الالتقاط. |
ArnCriteria
معايير البحث عن الدفعات استنادًا إلى الرقم المرجعي للمستلم (ARN)
| تمثيل JSON |
|---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
| الحقول | |
|---|---|
acquirerReferenceNumber |
مطلوب: الرقم المرجعي لمستلم الدفعة (ARN) الذي يعرّف الدفعة بشكل فريد. يجب أن يتألف المعرّف الضريبي من 23 رقمًا. |
authorizationCode |
مطلوب: رمز التفويض الخاص بالمعاملة. |
GoogleTransactionReferenceNumberCriteria
معايير البحث عن الدفعات استنادًا إلى الرقم المرجعي للمعاملة الذي تنشئه Google
| تمثيل JSON |
|---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
| الحقول | |
|---|---|
googleTransactionReferenceNumber |
مطلوب: الرقم المرجعي للمعاملة الذي تنشئه Google، والذي يعرّف الدفعة بشكل فريد. |
authorizationCode |
مطلوب: رمز التفويض الخاص بالمعاملة. |
CaptureRequestCriteria
معايير البحث عن الدفعات استنادًا إلى طلب الالتقاط الأصلي
| تمثيل JSON |
|---|
{ "captureRequestId": string } |
| الحقول | |
|---|---|
captureRequestId |
مطلوبة: معرّف فريد لهذه المعاملة هذا هو |
RequestOriginator
معلومات حول المؤسسة أو المجموعة الفرعية التنظيمية، واختيار الموظف الذي صدر منها هذا الطلب اختياريًا. ويتيح ذلك لشركة Google رصد المشاكل أو إساءة الاستخدام وتنفيذ عناصر التحكّم على مستوى أكثر دقة من paymentIntegratorAccountId. وتكون ذات قيمة خاصة عندما يكون المتصل مقدّم خدمة وسيطًا يصدر الطلبات من عدة عملاء خارجيين.
| تمثيل JSON |
|---|
{ "organizationId": string, "organizationDescription": string, "agentId": string } |
| الحقول | |
|---|---|
organizationId |
مطلوب: معرّف للشركة أو المؤسسة أو المجموعة التنظيمية التي نشأ منها هذا الطلب. يجب أن يكون فريدًا ضمن |
organizationDescription |
مطلوب: هو اسم أو وصف سهل القراءة للمستخدم يمكن استخدامه لتسهيل التواصل بين موظفي Google والشركة المتعهّدة في ما يتعلّق بتلك المؤسسة. |
agentId |
اختياري: معرّف فريد للوكيل (موظف) المؤسسة المحدّد من قِبل |
GetDisputeInquiryReportResultCode
نتيجة استدعاء طريقة getDisputeInquiryReport.
| عمليات التعداد | |
|---|---|
UNKNOWN_RESULT |
لا تضبط هذه القيمة التلقائية على الإطلاق. |
SUCCESS |
تمّ العثور على الدفعة وتقديم تقرير. |
PAYMENT_NOT_FOUND |
لم يتم العثور على الدفعة المطلوبة. |
PAYMENT_TOO_OLD |
تم العثور على الدفعة المطلوبة، ولكن لم يتم تقديم تقرير بسبب مرور الدفعة. |
ORDER_CANNOT_BE_RETURNED |
الدفعة المطلوبة تابعة لطلب موجود ولكن لا يمكن إرجاعه. وتشمل الأسباب الحالات التي تتم فيها إزالة الطلب بناءً على طلب مالكه. |
NO_ADDITIONAL_DETAILS |
تم العثور على الدفعة المطلوبة، ولكن لا يتوفر تقرير. |
PurchaseReport
تقرير يحتوي على التفاصيل ذات الصلة بعملية الشراء المرتبطة بالدفعة المطلوبة
| تمثيل JSON |
|---|
{ "customerAccount": { object ( |
| الحقول | |
|---|---|
customerAccount |
مطلوبة: معلومات حول العميل وحسابه. |
order |
مطلوبة: تتضمّن معلومات عن طلب الدفع الذي تم تسديد الدفعة بناءً عليه. |
payment |
اختياري: معلومات حول الدفع ملاحظة: يمكن إجراء دفعات متعددة في طلب واحد، إلا أنّ المعلومات ستتضمّن فقط معلومات الدفعة التي تم تحديدها في الطلب الأصلي. غير متوفّر لبعض أنواع الطلبات. |
CustomerAccount
معلومات حول حساب العميل
| تمثيل JSON |
|---|
{ "customerEmail": string, "customerName": string } |
| الحقول | |
|---|---|
customerEmail |
مطلوب: عنوان البريد الإلكتروني المرتبط بحساب العميل على Google. |
customerName |
مطلوب: اسم العميل. |
طلب
معلومات حول الطلب
| تمثيل JSON |
|---|
{ "timestamp": string, "orderId": string, "currencyCode": string, "subTotalAmount": string, "totalAmount": string, "shippingAddress": { object ( |
| الحقول | |
|---|---|
timestamp |
OPTIONAL: الطابع الزمني لوقت تقديم الطلب، ويتم تمثيله بالملي ثانية منذ الحقبة غير متوفّر لبعض أنواع الطلبات. |
orderId |
OPTIONAL: سلسلة تعرّف على هذا الترتيب بشكلٍ فريد. غير متوفّر لبعض أنواع الطلبات. |
currencyCode |
اختياري: رمز العملة المكوَّن من 3 أحرف وفقًا لمعيار ISO 4217 لجميع المبالغ بهذا الترتيب. غير متوفّر لبعض أنواع الطلبات. |
subTotalAmount |
اختيارية: إجمالي مبلغ هذا الطلب قبل احتساب الضريبة، ويتم تمثيله بقيمة وحدات صغيرة للعملة المحدّدة في |
totalAmount |
اختياري: إجمالي مبلغ هذا الطلب شاملاً الضريبة، والذي يتم تمثيله بوحدات صغيرة من العملة المحدّدة في |
shippingAddress |
اختياري: عنوان شحن السلع المادية في هذا الطلب. |
items[] |
مطلوب: قائمة بالعناصر التي كانت جزءًا من هذا الطلب. |
taxes[] |
مطلوب: قائمة بالعناصر التي كانت جزءًا من هذا الطلب. قد تكون هذه القائمة فارغة. |
العنوان
بنية تحتوي على معلومات حول عنوان معيّن.
| تمثيل JSON |
|---|
{ "name": string, "addressLine": [ string ], "localityName": string, "administrativeAreaName": string, "postalCodeNumber": string, "countryCode": string } |
| الحقول | |
|---|---|
name |
اختياري: الاسم الكامل للعميل |
addressLine[] |
OPTIONAL: يحتوي على نص العنوان غير المنظَّم. |
localityName |
اختياري: يستخدم هذا المصطلح مصطلحًا غامضًا، ولكنه يشير بشكل عام إلى جزء من المدينة أو البلدة من العنوان. في مناطق العالم التي يكون فيها المناطق المحلية غير محددة بشكل جيد أو لا تتناسب مع هذه البنية بشكل جيد (على سبيل المثال، اليابان والصين)، اترك LocalName فارغًا واستخدم addressLine. أمثلة: مدينة في الولايات المتحدة، بلدية تكنولوجيا المعلومات، بلدة بريد المملكة المتحدة. |
administrativeAreaName |
OPTIONAL: تقسيم فرعي إداري من المستوى الأعلى لهذا البلد" أمثلة: ولاية أمريكية، ومنطقة تكنولوجيا المعلومات، ومقاطعة CN، ومحافظة اليابان". |
postalCodeNumber |
OPTIONAL: على الرغم من الاسم، إنّ قيم mailCodeNumber غالبًا ما تكون أبجدية رقمية. أمثلة: "94043"، "SW1W"، "SW1W 9TQ". |
countryCode |
اختياري: رمز بلد عنوان العميل، ومن المتوقّع أن يكون وفقًا لمعيار ISO-3166-1 Alpha-2. |
المنتج/الخدمة
تمثّل هذه السمة معلومات حول سلعة متوفّرة في الطلب.
| تمثيل JSON |
|---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
| الحقول | |
|---|---|
description |
اختياري: وصف للسلعة التي تم شراؤها. غير متوفّر لبعض أنواع الطلبات. |
merchant |
مطلوب: البائع أو الفنان أو صانع السلعة. |
quantity |
OPTIONAL: الكمية التي تم طلبها من هذه السلعة سيتم حذف هذا الحقل إذا لم تكن الكميات الصحيحة سارية على المنتج (على سبيل المثال، قد تحتوي المنتجات التي تفرض تكلفة استخدام على كميات كسور). |
totalPrice |
OPTIONAL: السعر الإجمالي لهذه السلعة، ويتم تمثيله بوحدات المايكرو بالعملة المحدّدة في |
googleProductName |
مطلوب: اسم خدمة منتج Google للعنصر. |
الضريبة
تشير هذه السمة إلى معلومات حول الضريبة التي تنطبق على هذا الطلب.
| تمثيل JSON |
|---|
{ "description": string, "amount": string } |
| الحقول | |
|---|---|
description |
مطلوب: وصف الضريبة. |
amount |
مطلوبة: مبلغ الضريبة، ويظهر على أنّه وحدات صغيرة من العملة المحدّدة في |
الدفع
معلومات عن الدفعة
| تمثيل JSON |
|---|
{ "billingAddress": { object ( |
| الحقول | |
|---|---|
billingAddress |
مطلوب: عنوان إرسال الفواتير لهذه الدفعة. |
amount |
مطلوبة: مبلغ هذه الدفعة، ويظهر على أنّه وحدات صغيرة من العملة المحدّدة في |
refunds[] |
مطلوبة: قائمة بعمليات ردّ الأموال التي تم إجراؤها لهذه الدفعة قد تكون هذه القائمة فارغة. |
حقل الاتحاد يمكن أن يكون |
|
cardDetails |
اختياري: تفاصيل الدفع المتعلقة بالرصيد لبطاقات السحب الآلي (FP). |
ردّ الأموال
معلومات حول ردّ أموال إحدى الدفعات
| تمثيل JSON |
|---|
{ "amount": string, "initiatedTimestamp": string } |
| الحقول | |
|---|---|
amount |
مطلوب: المبلغ الذي تم ردّه، وهو عدد موجب بوحدات المايكرو من العملة المحدّدة في |
initiatedTimestamp |
مطلوب: الطابع الزمني لوقت بدء عملية ردّ الأموال، ويتم تمثيله بالملي ثانية منذ تاريخ بدء عملية ردّ الأموال. |
PaymentCardDetails
تفاصيل الدفع المتعلقة بالائتمان بطاقات السحب الآلي.
| تمثيل JSON |
|---|
{
"authResult": enum ( |
| الحقول | |
|---|---|
authResult |
REQUIRED: نتيجة مصادقة الدفع. |
AuthResult
نتائج مصادقة الدفع
| عمليات التعداد | |
|---|---|
UNKNOWN_RESULT |
لا تضبط هذه القيمة التلقائية على الإطلاق. |
APPROVED |
تمت الموافقة على المصادقة. |
DENIED |
تم رفض المصادقة. |
NOT_ATTEMPTED |
لم تتم محاولة المصادقة. |