Method: getDisputeInquiryReport

گزارشی دریافت کنید که اطلاعاتی را برای تسهیل مکالمه پشتیبانی مشتری با کاربر در مورد اختلاف احتمالی پرداخت ارائه می‌کند.

اگر نقطه پایانی هنگام پردازش درخواست با خطا مواجه شود، پاسخ این نقطه پایانی از نوع ErrorResponse خواهد بود.

اگر این روش یک HTTP 200 را برنگرداند، ممکن است پاسخ‌های این عبارت خالی باشد. بدنه پاسخ در شرایطی که می‌توان از یک ErrorResponse با توضیح واضح برای کمک به مهاجم برای درک شناسه حساب یکپارچه‌ساز پرداخت سایر ادغام‌کننده‌ها استفاده کرد، خالی است. در این شرایط، که یا کلید امضا مطابقت ندارد، شناسه یکپارچه پرداخت پیدا نشد، یا کلید رمزگذاری ناشناخته بود، این روش یک HTTP 404 را با بدنه خالی برمی گرداند. اگر امضای درخواست تأیید شود، اطلاعات اضافی در مورد خطا در بدنه پاسخ بازگردانده می شود.

یک نمونه درخواست به نظر می رسد:


{
  "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": string,
  "paymentLookupCriteria": {
    object (PaymentLookupCriteria)
  },
  "existingGoogleClaimId": string,
  "requestOriginator": {
    object (RequestOriginator)
  }
}
زمینه های
requestHeader

object ( RequestHeader )

مورد نیاز : هدر مشترک برای همه درخواست ها.

paymentIntegratorAccountId

string

الزامی : شناسه حساب یکپارچه‌ساز پرداخت که تماس‌گیرنده و محدودیت‌های قراردادی مرتبط را برای این تعامل شناسایی می‌کند.

paymentLookupCriteria

object ( PaymentLookupCriteria )

الزامی : معیارهایی که پرداختی را نشان می دهد که باید برای این استعلام جستجو شود.

existingGoogleClaimId

string

اختیاری : یک رشته ایجاد شده توسط Google که با تماس قبلی به getDisputeInquiryReport برگردانده می‌شود که به‌طور منحصربه‌فرد این ادعای اختلاف مشتری را شناسایی می‌کند.

اگر این وجود نداشته باشد، یک شناسه ادعای جدید ایجاد خواهد شد. اگر تماس گیرنده ادامه همان اختلاف مشتری باشد، ممکن است یک googleClaimId که با تماس قبلی به getDisputeInquiryReport برگردانده شده است ارائه دهد.

شناسه ادعایی که در اینجا پر شده یا ایجاد شده است در قسمت googleClaimId پاسخ برگردانده می شود.

ارائه googleClaimId که با تماس قبلی به getDisputeInquiryReport برگردانده نشده است معتبر نیست. اگر این اتفاق بیفتد، HTTP 400 Bad Request برگردانده خواهد شد.

requestOriginator

object ( RequestOriginator )

مورد نیاز : اطلاعات مربوط به سازمان یا زیر گروه سازمانی که این درخواست را ایجاد کرده است.

بدن پاسخگو

بار پاسخ برای روش getDisputeInquiryReport .

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "result": enum (GetDisputeInquiryReportResultCode),
  "googleClaimId": string,
  "report": {
    object (PurchaseReport)
  }
}
زمینه های
responseHeader

object ( ResponseHeader )

مورد نیاز : هدر مشترک برای همه پاسخ ها.

result

enum ( GetDisputeInquiryReportResultCode )

الزامی : نتیجه این تماس.

googleClaimId

string

اختیاری : یک رشته ایجاد شده توسط Google که به طور منحصر به فرد این اختلاف مشتری را شناسایی می کند. (اگر و فقط در صورتی که result SUCCESS باشد، ارائه شود.)

اگر existingGoogleClaimId در درخواست پر شده باشد، این مقدار یکسان خواهد بود. در غیر این صورت، یک مقدار جدید تولید شده خواهد بود. این مقدار می‌تواند در درخواست‌های getDisputeInquiryReport در آینده ارائه شود، اگر آنها بخشی از اختلاف مشتری مشابه باشند.

report

object ( PurchaseReport )

اختیاری : جزئیات مربوط به اختلاف پرداخت مشخص شده در درخواست. (اگر و فقط در صورتی که result SUCCESS باشد، ارائه شود.)

RequestHeader

شی هدر که روی تمام درخواست های ارسال شده به سرور تعریف می شود.

نمایندگی JSON
{
  "requestId": string,
  "requestTimestamp": string,
  "userLocale": string,
  "protocolVersion": {
    object (Version)
  }
}
زمینه های
requestId

string

مورد نیاز : شناسه منحصر به فرد این درخواست.

این رشته ای است که حداکثر طول آن 100 کاراکتر است و فقط شامل کاراکترهای "az"، "AZ"، "0-9"، ":"، "-"، و "_" است.

requestTimestamp

string ( int64 format)

الزامی است : مهر زمانی این درخواست به عنوان میلی ثانیه از آن دوره نشان داده شده است. گیرنده باید تأیید کند که این مُهر زمانی ± 60 ثانیه «اکنون» است. این مهر زمانی درخواست پس از تلاش مجدد بی تاثیر نیست.

userLocale
(deprecated)

string

منسوخ شده : کد زبان ISO 639-2 آلفا 3 دو یا سه حرفی که به صورت اختیاری با خط فاصله و کد کشور ISO 3166-1 آلفا-2، به عنوان مثال، «pt-BR»، «fil» یا 'fil-PH'. از این برای کمک به هدایت فیلدهای userMessage در پاسخ استفاده کنید.

protocolVersion

object ( Version )

مورد نیاز : نسخه این درخواست.

نسخه

شئ نسخه که شکلی ساختار یافته از ساختار نسخه کلاسیک abc است. نسخه‌های اصلی همین تعداد تضمین می‌شوند که سازگار باشند. توجه داشته باشید که اصلاحات جزئی و جزئی می توانند اغلب و بدون اطلاع قبلی تغییر کنند. یکپارچه کننده باید از همه درخواست ها برای یک نسخه اصلی پشتیبانی کند.

نمایندگی JSON
{
  "major": integer,
  "minor": integer,
  "revision": integer
}
زمینه های
major

integer

مورد نیاز : نسخه اصلی. این برای درخواست‌های سازگاری با نسخه‌های مختلف علامت‌گذاری شده است و تضمین نمی‌شود که سازگار باشند.

minor

integer

مورد نیاز : نسخه کوچک. این نشان دهنده رفع اشکال قابل توجه است.

revision

integer

مورد نیاز : نسخه کوچک. این نشان دهنده رفع اشکال جزئی است.

معیارهای PaymentLookup

کانتینری برای معیارهایی که می تواند به طور منحصر به فرد پرداخت را جستجو کند. یک قسمت (و تنها یک) عضو باید پر شود.

نمایندگی JSON
{

  // Union field criteria can be only one of the following:
  "arnCriteria": {
    object (ArnCriteria)
  },
  "googleTransactionReferenceNumberCriteria": {
    object (GoogleTransactionReferenceNumberCriteria)
  }
  // End of list of possible types for union field criteria.
}
زمینه های

criteria میدان اتحادیه

criteria فقط می توانند یکی از موارد زیر باشند:

arnCriteria

object ( ArnCriteria )

اختیاری : جستجو بر اساس شماره مرجع گیرنده (ARN).

googleTransactionReferenceNumberCriteria

object ( GoogleTransactionReferenceNumberCriteria )

اختیاری : جستجو بر اساس شماره مرجع تراکنش Google.

معیارهای Arn

معیارهای جستجوی پرداخت بر اساس شماره مرجع گیرنده (ARN).

نمایندگی JSON
{
  "acquirerReferenceNumber": string,
  "authorizationCode": string
}
زمینه های
acquirerReferenceNumber

string

الزامی : شماره مرجع دریافت کننده (ARN) که به طور منحصر به فرد پرداخت را مشخص می کند. باید 23 رقم باشد.

authorizationCode

string

مورد نیاز : کد مجوز برای معامله.

معیارهای Google TransactionReferenceNumber

معیارهای جستجوی پرداخت براساس شماره مرجع تراکنش ایجاد شده توسط Google.

نمایندگی JSON
{
  "googleTransactionReferenceNumber": string,
  "authorizationCode": string
}
زمینه های
googleTransactionReferenceNumber

string

الزامی است : شماره مرجع تراکنش ایجاد شده توسط Google که پرداخت را به طور منحصر به فردی مشخص می کند.

authorizationCode

string

مورد نیاز : کد مجوز برای معامله.

RequestOriginator

اطلاعات مربوط به سازمان یا گروه فرعی سازمانی و به صورت اختیاری کارمندی که این درخواست از آن منشا گرفته است. این به Google امکان می‌دهد مشکلات یا سوء استفاده را شناسایی کرده و کنترل‌ها را در سطح دقیق‌تری نسبت به paymentIntegratorAccountId اجرا کند. به ویژه زمانی که تماس‌گیرنده یک ارائه‌دهنده خدمات واسطه است که درخواست‌های چندین مشتری خارجی را دریافت می‌کند بسیار ارزشمند است.

نمایندگی JSON
{
  "organizationId": string,
  "organizationDescription": string,
  "agentId": string
}
زمینه های
organizationId

string

الزامی : شناسه شرکت، سازمان یا گروه سازمانی که این درخواست از آن منشا گرفته است. باید در این paymentIntegratorAccountId منحصر به فرد باشد.

organizationDescription

string

مورد نیاز : نام یا توصیفی از سازمان که برای انسان قابل خواندن است که می تواند برای تسهیل ارتباط بین کارمندان Google و ادغام کننده در مورد آن سازمان استفاده شود.

agentId

string

اختیاری : یک شناسه منحصر به فرد برای عامل (کارمند) خاص سازمان که توسط organizationId شناسایی شده است که این درخواست از او سرچشمه گرفته است. باید در این organizationId شناسه منحصر به فرد باشد.

GetDisputeInquiryReportResultCode

نتیجه فراخوانی متد getDisputeInquiryReport .

Enums
UNKNOWN_RESULT هرگز این مقدار پیش فرض را تنظیم نکنید!
SUCCESS پرداخت پیدا شد و گزارش ارائه شد.
PAYMENT_NOT_FOUND پرداخت درخواستی یافت نشد.
PAYMENT_TOO_OLD پرداخت درخواستی پیدا شد، اما گزارشی به دلیل قدیمی بودن پرداخت ارائه نشد.
ORDER_CANNOT_BE_RETURNED پرداخت درخواستی متعلق به سفارشی است که وجود دارد، اما قابل بازگشت نیست. دلایل شامل مواردی است که سفارش به درخواست صاحب آن حذف شده است.
NO_ADDITIONAL_DETAILS پرداخت درخواستی پیدا شد، اما گزارشی در دسترس نیست.

گزارش خرید

گزارشی حاوی جزئیات مربوط به خرید مرتبط با پرداخت درخواستی.

نمایندگی JSON
{
  "customerAccount": {
    object (CustomerAccount)
  },
  "order": {
    object (Order)
  },
  "payment": {
    object (Payment)
  }
}
زمینه های
customerAccount

object ( CustomerAccount )

مورد نیاز : اطلاعات مربوط به مشتری و حساب او.

order

object ( Order )

مورد نیاز : اطلاعات مربوط به سفارشی که پرداخت انجام شده است.

payment

object ( Payment )

اختیاری : اطلاعات مربوط به پرداخت. توجه: پرداخت های متعدد در یک سفارش امکان پذیر است، اما این فقط حاوی اطلاعات مربوط به پرداخت است که در درخواست اصلی مشخص شده است. برای همه انواع سفارش در دسترس نیست.

حساب مشتری

اطلاعات مربوط به حساب مشتری

نمایندگی JSON
{
  "customerEmail": string,
  "customerName": string
}
زمینه های
customerEmail

string

مورد نیاز : آدرس ایمیل مرتبط با حساب Google مشتری.

customerName

string

الزامی : نام مشتری.

سفارش

اطلاعات در مورد سفارش.

نمایندگی JSON
{
  "timestamp": string,
  "orderId": string,
  "currencyCode": string,
  "subTotalAmount": string,
  "totalAmount": string,
  "shippingAddress": {
    object (Address)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "taxes": [
    {
      object (Tax)
    }
  ]
}
زمینه های
timestamp

string ( int64 format)

اختیاری : مُهر زمانی مربوط به زمان انجام سفارش، که به صورت میلی ثانیه از آن دوره نشان داده می‌شود. برای همه انواع سفارش در دسترس نیست.

orderId

string

اختیاری : رشته ای که به طور منحصر به فرد این ترتیب را مشخص می کند. برای همه انواع سفارش در دسترس نیست.

currencyCode

string

اختیاری : کد ارز 3 حرفی ISO 4217 برای همه مبالغ در این ترتیب. برای همه انواع سفارش در دسترس نیست.

subTotalAmount

string ( Int64Value format)

اختیاری : مبلغ کل این سفارش قبل از مالیات، به صورت میکرو ارز مشخص شده در order.currencyCode نشان داده شده است. این برابر با SUM(items.totalPrice) است. برای همه انواع سفارش در دسترس نیست.

totalAmount

string ( Int64Value format)

اختیاری : کل مبلغ این سفارش شامل مالیات، به صورت میکرو ارز مشخص شده در order.currencyCode نشان داده شده است. این برابر است با subTotalAmount + SUM(taxes.amount) . برای همه انواع سفارش در دسترس نیست.

shippingAddress

object ( Address )

اختیاری : آدرس حمل و نقل برای اقلام فیزیکی در این سفارش.

items[]

object ( Item )

مورد نیاز : فهرست مواردی که بخشی از این سفارش بودند.

taxes[]

object ( Tax )

مورد نیاز : فهرست مواردی که بخشی از این سفارش بودند. این لیست ممکن است خالی باشد.

نشانی

ساختاری که اطلاعات مربوط به یک آدرس را در اختیار دارد.

نمایندگی JSON
{
  "name": string,
  "addressLine": [
    string
  ],
  "localityName": string,
  "administrativeAreaName": string,
  "postalCodeNumber": string,
  "countryCode": string
}
زمینه های
name

string

اختیاری : نام کامل مشتری.

addressLine[]

string

اختیاری : این متن آدرس بدون ساختار را نگه می دارد.

localityName

string

اختیاری : این یک اصطلاح مبهم است، اما به طور کلی به بخش شهر/شهر یک آدرس اشاره دارد. در مناطقی از جهان که محلات به خوبی تعریف نشده اند یا به خوبی با این ساختار مطابقت ندارند (مثلاً ژاپن و چین)، localityName را خالی بگذارید و از addressLine استفاده کنید.

مثال: شهر ایالات متحده، کمون فناوری اطلاعات، شهر پست بریتانیا.

administrativeAreaName

string

اختیاری : زیرمجموعه اداری سطح بالای این کشور" مثال‌ها: ایالت ایالات متحده، منطقه فناوری اطلاعات، استان CN، استان JP."

postalCodeNumber

string

اختیاری : با وجود نام، مقادیر postalCodeNumber اغلب حروف عددی هستند. مثال‌ها: "94043"، "SW1W"، "SW1W 9TQ".

countryCode

string

اختیاری : کد کشور آدرس مشتری، انتظار می رود ISO-3166-1 Alpha-2 باشد.

مورد

اطلاعات در مورد یک مورد در سفارش.

نمایندگی JSON
{
  "description": string,
  "merchant": string,
  "quantity": string,
  "totalPrice": string,
  "googleProductName": string
}
زمینه های
description

string

اختیاری : شرح موردی که خریداری شده است. برای همه انواع سفارش در دسترس نیست.

merchant

string

مورد نیاز : فروشنده، هنرمند یا سازنده کالا.

quantity

string ( Int64Value format)

اختیاری : مقداری که از این کالا سفارش داده شده است.

اگر مقادیر صحیح برای محصول قابل اعمال نباشد، این قسمت حذف می شود (مثلاً محصولات اندازه گیری شده ممکن است مقادیر کسری داشته باشند).

totalPrice

string ( Int64Value format)

اختیاری : قیمت کل این مورد، به صورت میکرو ارز مشخص شده در order.currencyCode نشان داده شده است. اگر quantity پر شده باشد، این نشان دهنده قیمت کل کل مقدار است. برای همه انواع سفارش در دسترس نیست.

googleProductName

string

مورد نیاز : نام سرویس محصول Google برای مورد.

مالیات

اطلاعاتی درباره مالیاتی که برای این سفارش اعمال می شود.

نمایندگی JSON
{
  "description": string,
  "amount": string
}
زمینه های
description

string

مورد نیاز : شرح مالیات.

amount

string ( Int64Value format)

الزامی : مقدار مالیات، نشان داده شده به صورت میکرو ارز مشخص شده در order.currencyCode .

پرداخت

اطلاعات در مورد پرداخت.

نمایندگی JSON
{
  "billingAddress": {
    object (Address)
  },
  "amount": string,
  "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

string ( Int64Value format)

مورد نیاز : مبلغ این پرداخت، به صورت میکرو ارز مشخص شده در order.currencyCode نشان داده شده است. توجه: اگر سفارش از طریق چندین پرداخت پرداخت شده باشد، ممکن است با order.totalAmount مطابقت نداشته باشد.

refunds[]

object ( Refund )

مورد نیاز : لیست بازپرداخت های انجام شده به این پرداخت. این لیست ممکن است خالی باشد.

فیلد اتحادیه fopDetails .

fopDetails فقط می تواند یکی از موارد زیر باشد:

cardDetails

object ( PaymentCardDetails )

اختیاری : جزئیات پرداخت ویژه کارت های اعتباری و کارت نقدی FoP.

بازپرداخت

اطلاعات مربوط به بازپرداخت انجام شده در پرداخت.

نمایندگی JSON
{
  "amount": string,
  "initiatedTimestamp": string
}
زمینه های
amount

string ( Int64Value format)

الزامی است : مبلغ بازپرداخت شده، تعداد میکروهای مثبت ارز مشخص شده در order.currencyCode .

initiatedTimestamp

string ( int64 format)

الزامی : مُهر زمانی از زمان شروع بازپرداخت، که به عنوان میلی ثانیه از آن دوره نشان داده شده است.

جزئیات کارت پرداخت

جزئیات پرداخت ویژه کارت های اعتباری و نقدی.

نمایندگی JSON
{
  "authResult": enum (AuthResult)
}
زمینه های
authResult

enum ( AuthResult )

مورد نیاز : نتیجه اعتبار پرداخت.

AuthResult

نتایج احراز هویت پرداخت

Enums
UNKNOWN_RESULT هرگز این مقدار پیش فرض را تنظیم نکنید!
APPROVED تایید شده است.
DENIED احراز هویت رد شد.
NOT_ATTEMPTED احراز هویت انجام نشده است.