Method: getDisputeInquiryReport

एक ऐसी रिपोर्ट पाएं जिसमें पेमेंट के संभावित विवाद के बारे में उपयोगकर्ता के साथ ग्राहक सहायता की बातचीत को आसान बनाने के बारे में जानकारी दी गई हो.

अगर अनुरोध को प्रोसेस करते समय एंडपॉइंट को कोई गड़बड़ी मिलती है, तो इस एंडपॉइंट से मिलने वाला रिस्पॉन्स ErrorResponse का होगा.

अगर यह तरीका एचटीटीपी 200 नहीं दिखाता है, तो इस क्वेरी के रिस्पॉन्स खाली हो सकते हैं. जवाब का मुख्य हिस्सा उन स्थितियों में खाली होता है जिनमें साफ़ तौर पर जानकारी के साथ ErrorResponse का इस्तेमाल किया जा सकता है. इससे हमलावर को दूसरे इंटिग्रेटर के पेमेंट इंटिग्रेटर खाते के आइडेंटिफ़ायर को समझने में मदद मिलती है. इन स्थितियों में, जब या तो साइनिंग पासकोड मेल नहीं खाता, पेमेंट इंटिग्रेटर आइडेंटिफ़ायर नहीं मिला या एन्क्रिप्शन कुंजी की जानकारी नहीं थी. ऐसे में, यह तरीका खाली पेज के साथ एचटीटीपी 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"
      }
    }
  }
}

एचटीटीपी अनुरोध

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 को की गई पिछली कॉल के ज़रिए मिलती है. यह ग्राहक के विवाद से जुड़े इस दावे की खास तौर पर पहचान करती है.

अगर यह जानकारी मौजूद नहीं है, तो एक नया दावा आईडी जनरेट किया जाएगा. अगर कॉल करने वाला व्यक्ति उसी ग्राहक से जुड़े विवाद को जारी रखने के लिए, getDisputeInquiryReport पर पिछली बार कॉल किया गया था, तो वह googleClaimId दे सकता है.

यहां अपने-आप जानकारी भरने वाली या जनरेट की गई दावा आईडी, जवाब के googleClaimId फ़ील्ड में दिखाई जाएगी.

ऐसा googleClaimId देना मान्य नहीं है जिसे getDisputeInquiryReport पर किए गए पिछले कॉल पर जवाब नहीं दिया गया है. अगर ऐसा होता है, तो एचटीटीपी 400 गलत अनुरोध दिखाया जाएगा.

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 के सफल होने पर ही प्रज़ेंट करें.)

अगर अनुरोध में existingGoogleClaimId की जानकारी अपने-आप भर जाती है, तो यह वही वैल्यू होगी. ऐसा नहीं करने पर, यह नई जनरेट की गई वैल्यू होगी. यह वैल्यू, आने वाले getDisputeInquiryReport अनुरोधों में दी जा सकती है. हालांकि, ऐसा तब ही होगा, जब दोनों एक ही ग्राहक विवाद का हिस्सा हैं.

report

object (PurchaseReport)

ज़रूरी नहीं: अनुरोध में बताए गए पेमेंट से जुड़े विवाद के बारे में जानकारी. (result के सफल होने पर ही प्रज़ेंट करें.)

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)

ज़रूरी नहीं: उपयोगकर्ता के रेफ़रंस नंबर (एआरएन) के आधार पर खोजें.

googleTransactionReferenceNumberCriteria

object (GoogleTransactionReferenceNumberCriteria)

ज़रूरी नहीं: Google ट्रांज़ैक्शन रेफ़रंस नंबर के आधार पर खोजें.

captureRequestCriteria

object (CaptureRequestCriteria)

ज़रूरी नहीं: कैप्चर अनुरोध आईडी के आधार पर खोजें.

ArnCriteria

उपयोगकर्ता हासिल करने वाले रेफ़रंस नंबर (एआरएन) के आधार पर पेमेंट लुकअप की शर्तें.

JSON के काेड में दिखाना
{
  "acquirerReferenceNumber": string,
  "authorizationCode": string
}
फ़ील्ड
acquirerReferenceNumber

string

ज़रूरी: ग्राहक का रेफ़रंस नंबर (एआरएन), जिससे पेमेंट की खास पहचान होती है. इसमें 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 में यूनीक होना चाहिए.

GetDisputeInquiryReportResultCode

getDisputeInquiryReport तरीके से किए गए कॉल का नतीजा.

Enums
UNKNOWN_RESULT कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें!
SUCCESS पेमेंट मिल गया है और हमने इसकी शिकायत कर दी है.
PAYMENT_NOT_FOUND जिस पेमेंट के लिए अनुरोध किया गया था वह नहीं मिला.
PAYMENT_TOO_OLD जिस पेमेंट के लिए अनुरोध किया गया था वह मिल गया है, लेकिन इसकी शिकायत नहीं की जा सकी. इसकी वजह यह है कि पेमेंट करने की समयसीमा तय की गई थी.
ORDER_CANNOT_BE_RETURNED अनुरोध किया गया भुगतान किसी ऐसे ऑर्डर से संबंधित है, जो मौजूद है, लेकिन उसे लौटाया नहीं जा सकता. इसकी वजहों में ऐसे मामले शामिल हैं जिनमें किसी ऑर्डर को उसके मालिक के अनुरोध पर हटा दिया गया था.
NO_ADDITIONAL_DETAILS अनुरोधित भुगतान मिल गया, लेकिन रिपोर्ट उपलब्ध नहीं है.

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": string,
  "orderId": string,
  "currencyCode": string,
  "subTotalAmount": string,
  "totalAmount": string,
  "shippingAddress": {
    object (Address)
  },
  "items": [
    {
      object (Item)
    }
  ],
  "taxes": [
    {
      object (Tax)
    }
  ]
}
फ़ील्ड
timestamp

string (int64 format)

ज़रूरी नहीं: ऑर्डर किए जाने के समय का टाइमस्टैंप, जिसे Epoch के बाद से मिलीसेकंड के तौर पर दिखाया जाता है. यह सुविधा सभी तरह के ऑर्डर के लिए उपलब्ध नहीं है.

orderId

string

ज़रूरी नहीं: खास तौर पर इस ऑर्डर की पहचान करने वाली स्ट्रिंग. यह सुविधा सभी तरह के ऑर्डर के लिए उपलब्ध नहीं है.

currencyCode

string

ज़रूरी नहीं: इस ऑर्डर की सभी रकम के लिए, 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

ज़रूरी नहीं: इस देश का टॉप-लेवल एडमिन सबडिविज़न" उदाहरण: अमेरिका का राज्य, आईटी क्षेत्र, सीएन प्रांत, और जापान का प्रांत."

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)

ज़रूरी: रिफ़ंड शुरू होने के समय का टाइमस्टैंप, जिसे Epoch के बाद मिलीसेकंड के तौर पर दिखाया जाता है.

PaymentCardDetails

विशिष्ट क्रेडिट और भुगतान के लिए भुगतान विवरण डेबिट कार्ड.

JSON के काेड में दिखाना
{
  "authResult": enum (AuthResult)
}
फ़ील्ड
authResult

enum (AuthResult)

ज़रूरी है: पेमेंट की पुष्टि का नतीजा.

AuthResult

पेमेंट की पुष्टि के नतीजे.

Enums
UNKNOWN_RESULT कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें!
APPROVED अनुमति स्वीकार की गई.
DENIED अनुमति नहीं मिली.
NOT_ATTEMPTED पुष्टि करने की कोशिश नहीं की गई.