Method: getOrderDetails

শেষ-ব্যবহারকারীদের চার্জ করার জন্য Google অংশীদারদের ভিত্তি প্রদান করে এমন একটি অর্ডার পান৷

অনুরোধটি প্রক্রিয়া করার সময় যদি এন্ডপয়েন্ট কোনো ত্রুটির সম্মুখীন হয়, তাহলে এই এন্ডপয়েন্ট থেকে পাওয়া প্রতিক্রিয়া হবে ErrorResponse টাইপ।

যদি এই পদ্ধতিটি HTTP 200 ফেরত না দেয় তবে এই প্রশ্নের উত্তরগুলি খালি হতে পারে৷ প্রতিক্রিয়ার অংশটি এমন পরিস্থিতিতে খালি থাকে যেখানে একটি স্পষ্ট বিবরণ সহ একটি ErrorResponse আক্রমণকারীকে অন্যান্য ইন্টিগ্রেটরগুলির পেমেন্ট ইন্টিগ্রেটর অ্যাকাউন্ট শনাক্তকারীকে বুঝতে সাহায্য করার জন্য ব্যবহার করা যেতে পারে৷ এই পরিস্থিতিতে, যেখানে হয় সাইনিং কী মেলে না, পেমেন্ট ইন্টিগ্রেটর শনাক্তকারী পাওয়া যায়নি, বা এনক্রিপশন কী অজানা ছিল, এই পদ্ধতিটি একটি খালি বডি সহ HTTP 404 ফিরিয়ে দেবে। যদি অনুরোধ স্বাক্ষর যাচাই করা যায়, ত্রুটি সংক্রান্ত অতিরিক্ত তথ্য প্রতিক্রিয়া বডিতে ফেরত দেওয়া হবে।

একটি উদাহরণ অনুরোধ এর মত দেখায়:


{
  "requestHeader": {
    "protocolVersion": {
      "major": 1,
      "minor": 1,
      "revision": 0
    },
    "requestId": "HsKv5pvtQKTtz7rdcw1YqE",
    "requestTimestamp": "1519996751331"
  },
  "paymentIntegratorAccountId": "IntegratorFakeAccount",
  "orderLookupCriteria": {
    "googleTransactionReferenceNumberCriteria": {
      "googleTransactionReferenceNumber": "714545417102363157911822",
      "authorizationCode": "111111"
    }
  },
  "requestOriginator": {
    "organizationId": "ISSUER_256",
    "organizationDescription": "Community Bank of Some City"
  }
}

একটি উদাহরণ প্রতিক্রিয়া মত দেখায়:


{
  "responseHeader": {
    "responseTimestamp": "1519996752221"
  },
  "result": "SUCCESS",
  "order": {
    "timestamp": "1517992525972",
    "orderId": "UPG.DEFC.X6F4.MEOM.CDWF",
    "currencyCode": "USD",
    "subTotalAmount": "399000000",
    "totalAmount": "459000000",
    "taxes": [],
    "items": [
      {
        "description": "YouTube TV membership",
        "merchant": "fake org",
        "googleProductName": "YouTube TV",
        "quantity": "1",
        "totalPrice": "399000000"
      },
      {
        "description": "Showtime",
        "merchant": "fake org",
        "googleProductName": "YouTube TV",
        "quantity": "1",
        "totalPrice": "6000000"
      }
    ]
  }
}

HTTP অনুরোধ

POST https://vgw.googleapis.com/secure-serving/gsp/v1/getOrderDetails/ :PIAID

শরীরের অনুরোধ

অনুরোধের অংশে নিম্নলিখিত কাঠামো সহ ডেটা রয়েছে:

JSON প্রতিনিধিত্ব
{
  "requestHeader": {
    object (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "orderLookupCriteria": {
    object (OrderLookupCriteria)
  },
  "requestOriginator": {
    object (RequestOriginator)
  }
}
ক্ষেত্র
requestHeader

object ( RequestHeader )

প্রয়োজনীয় : সমস্ত অনুরোধের জন্য সাধারণ শিরোনাম।

paymentIntegratorAccountId

string

প্রয়োজনীয় : পেমেন্ট ইন্টিগ্রেটর অ্যাকাউন্ট আইডেন্টিফায়ার যা এই ইন্টারঅ্যাকশনের জন্য কলকারী এবং সংশ্লিষ্ট চুক্তিগত সীমাবদ্ধতা সনাক্ত করে।

orderLookupCriteria

object ( OrderLookupCriteria )

প্রয়োজনীয় : ক্রম নির্দেশ করে মানদণ্ড যা দেখতে হবে।

requestOriginator

object ( RequestOriginator )

ঐচ্ছিক : সংস্থা বা সাংগঠনিক সাব-গ্রুপ সম্পর্কে তথ্য যা এই অনুরোধটি উদ্ভূত করেছে (যদি ইন্টিগ্রেটর অন্য সংস্থার পক্ষে আমাদের কল করে)।

প্রতিক্রিয়া শরীর

getOrderDetails পদ্ধতির জন্য প্রতিক্রিয়া পেলোড।

সফল হলে, প্রতিক্রিয়া বডিতে নিম্নলিখিত কাঠামোর সাথে ডেটা থাকে:

JSON প্রতিনিধিত্ব
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "result": enum (GetOrderDetailsResultCode),
  "order": {
    object (Order)
  }
}
ক্ষেত্র
responseHeader

object ( ResponseHeader )

প্রয়োজনীয় : সমস্ত প্রতিক্রিয়ার জন্য সাধারণ শিরোনাম।

result

enum ( GetOrderDetailsResultCode )

প্রয়োজনীয় : এই কলের ফলাফল।

order

object ( Order )

ঐচ্ছিক : যে অর্ডারে অর্থপ্রদান করা হয়েছে সেই সংক্রান্ত তথ্য। (যদি এবং শুধুমাত্র result সফল হলে উপস্থাপন করুন।)

অনুরোধ শিরোনাম

হেডার অবজেক্ট যা সার্ভারে পাঠানো সমস্ত অনুরোধে সংজ্ঞায়িত করা হয়।

JSON প্রতিনিধিত্ব
{
  "requestId": string,
  "requestTimestamp": string,
  "userLocale": string,
  "protocolVersion": {
    object (Version)
  }
}
ক্ষেত্র
requestId

string

প্রয়োজনীয় : এই অনুরোধের অনন্য শনাক্তকারী।

এটি এমন একটি স্ট্রিং যার সর্বোচ্চ দৈর্ঘ্য 100টি অক্ষর, এবং এতে শুধুমাত্র "az", "AZ", "0-9", ":", "-", এবং "_" অক্ষর রয়েছে।

requestTimestamp

string ( int64 format)

প্রয়োজনীয় : এই অনুরোধের টাইমস্ট্যাম্প যুগের পর থেকে মিলিসেকেন্ড হিসাবে উপস্থাপন করা হয়েছে। প্রাপকের অবশ্যই যাচাই করা উচিত যে এই টাইমস্ট্যাম্পটি 'এখন' এর ± 60s। এই অনুরোধ টাইমস্ট্যাম্প পুনঃপ্রচেষ্টার উপর অদম্য নয়।

userLocale
(deprecated)

string

অপ্রচলিত : একটি দুই- বা তিন-অক্ষরের ISO 639-2 Alpha 3 ভাষা কোড ঐচ্ছিকভাবে একটি হাইফেন এবং একটি ISO 3166-1 Alpha-2 দেশের কোড, যেমন'pt', 'pt-BR', 'fil', অথবা 'fil-PH'। প্রতিক্রিয়ায় userMessage ক্ষেত্রগুলি চালাতে সহায়তা করতে এটি ব্যবহার করুন।

protocolVersion

object ( Version )

প্রয়োজনীয় : এই অনুরোধের সংস্করণ।

সংস্করণ

সংস্করণ অবজেক্ট যা ক্লাসিক abc সংস্করণ কাঠামোর একটি কাঠামোবদ্ধ রূপ। একই সংখ্যার প্রধান সংস্করণগুলি সামঞ্জস্যপূর্ণ হওয়ার গ্যারান্টিযুক্ত। নোট করুন যে গৌণ এবং সংশোধন ঘন ঘন এবং বিজ্ঞপ্তি ছাড়াই পরিবর্তিত হতে পারে। ইন্টিগ্রেটরকে অবশ্যই একই প্রধান সংস্করণের জন্য সমস্ত অনুরোধ সমর্থন করতে হবে।

JSON প্রতিনিধিত্ব
{
  "major": integer,
  "minor": integer,
  "revision": integer
}
ক্ষেত্র
major

integer

প্রয়োজনীয় : প্রধান সংস্করণ। এটি বিভিন্ন সংস্করণের সাথে সামঞ্জস্যের অনুরোধগুলির জন্য চিহ্নিত করা হয়েছে যেগুলি সামঞ্জস্যপূর্ণ হওয়ার নিশ্চয়তা নেই৷

minor

integer

প্রয়োজনীয় : ছোট সংস্করণ। এটি উল্লেখযোগ্য বাগ সংশোধন নির্দেশ করে।

revision

integer

প্রয়োজনীয় : ছোট সংস্করণ। এটি ছোটখাট বাগ ফিক্স বোঝায়।

অর্ডার লুকআপ মানদণ্ড

অর্ডার লুকআপের মানদণ্ড।

JSON প্রতিনিধিত্ব
{

  // Union field criteria can be only one of the following:
  "dcb3CorrelationId": string,
  "arnCriteria": {
    object (ArnCriteria)
  },
  "googleTransactionReferenceNumberCriteria": {
    object (GoogleTransactionReferenceNumberCriteria)
  }
  // End of list of possible types for union field criteria.
}
ক্ষেত্র

ইউনিয়ন ক্ষেত্রের criteria

criteria নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:

dcb3CorrelationId

string

Google-উত্পাদিত DCB কোরিলেশন আইডির উপর ভিত্তি করে সন্ধান করুন যা পেমেন্টটিকে অনন্যভাবে সনাক্ত করে। এই মানটি Google দ্বারা তৈরি করা হয়েছে এবং প্রমাণীকরণ কলের সময় ক্যারিয়ার বিলিং পেমেন্ট ইন্টিগ্রেটরে পাঠানো হয়েছে।

arnCriteria

object ( ArnCriteria )

Acquirer রেফারেন্স নম্বর (ARN) এর উপর ভিত্তি করে সন্ধান করুন।

googleTransactionReferenceNumberCriteria

object ( GoogleTransactionReferenceNumberCriteria )

Google লেনদেন রেফারেন্স নম্বরের উপর ভিত্তি করে সন্ধান করুন।

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

প্রয়োজনীয় : লেনদেনের জন্য অনুমোদন কোড।

RequestOriginator

সংস্থা বা সাংগঠনিক সাব-গ্রুপ সম্পর্কে তথ্য যা থেকে এই অনুরোধটি এসেছে। এটি Google-কে সমস্যা বা অপব্যবহার শনাক্ত করতে এবং paymentIntegratorAccountId এর চেয়ে সূক্ষ্ম স্তরে নিয়ন্ত্রণ প্রয়োগ করতে দেয়। এটি বিশেষভাবে মূল্যবান যখন কলার একজন মধ্যস্থতাকারী পরিষেবা প্রদানকারী হয় যেটি একাধিক বহিরাগত ক্লায়েন্টদের কাছ থেকে অনুরোধগুলি উৎসর্গ করে।

JSON প্রতিনিধিত্ব
{
  "organizationId": string,
  "organizationDescription": string
}
ক্ষেত্র
organizationId

string

প্রয়োজনীয় : কোম্পানি, সংস্থা বা সাংগঠনিক গোষ্ঠীর একটি শনাক্তকারী যেখান থেকে এই অনুরোধটি এসেছে৷ এই paymentIntegratorAccountId এর মধ্যে অনন্য হতে হবে।

organizationDescription

string

প্রয়োজনীয় : একটি মানব-পঠনযোগ্য নাম বা সংস্থার বিবরণ যা Google-এর কর্মচারী এবং সেই সংস্থার সংহতকারীর মধ্যে যোগাযোগ সহজ করতে ব্যবহার করা যেতে পারে।

রেসপন্স হেডার

হেডার অবজেক্ট যা সার্ভার থেকে প্রেরিত সমস্ত প্রতিক্রিয়াতে সংজ্ঞায়িত করা হয়।

JSON প্রতিনিধিত্ব
{
  "responseTimestamp": string
}
ক্ষেত্র
responseTimestamp

string ( int64 format)

প্রয়োজনীয় : এই প্রতিক্রিয়ার টাইমস্ট্যাম্প যুগ থেকে মিলিসেকেন্ড হিসাবে উপস্থাপন করা হয়েছে। প্রাপকের অবশ্যই যাচাই করা উচিত যে এই টাইমস্ট্যাম্পটি 'এখন' এর ± 60s।

অর্ডারের বিবরণ ফলাফল কোড পান

getOrderDetails পদ্ধতি কলের ফলাফল।

Enums
GET_ORDER_DETAILS_RESULT_CODE_UNKNOWN এই ডিফল্ট মান সেট করবেন না!
SUCCESS অর্ডার পাওয়া গেছে এবং ফিরে এসেছে।
ORDER_CANNOT_BE_RETURNED

অনুরোধ করা আদেশ বিদ্যমান, কিন্তু ফেরত দেওয়া যাবে না. কারণগুলির মধ্যে রয়েছে এমন ক্ষেত্রে যেখানে অর্ডারটি তার মালিকের অনুরোধে সরানো হয়েছিল।

PAYMENT_TOO_OLD অনুরোধকৃত অর্থপ্রদান পাওয়া গেছে, কিন্তু অর্থপ্রদানের বয়সের কারণে একটি অর্ডারের বিবরণ দেওয়া হয়নি।
PAYMENT_NOT_FOUND অনুরোধকৃত অর্থপ্রদান পাওয়া যায়নি।
NO_ADDITIONAL_DETAILS অনুরোধকৃত অর্থপ্রদান পাওয়া গেছে, কিন্তু অর্ডার বিশদ উপলব্ধ নেই।

অর্ডার

আদেশ সম্পর্কে তথ্য.

JSON প্রতিনিধিত্ব
{
  "timestamp": string,
  "orderId": string,
  "currencyCode": string,
  "subTotalAmount": string,
  "totalAmount": string,
  "items": [
    {
      object (Item)
    }
  ],
  "taxes": [
    {
      object (Tax)
    }
  ]
}
ক্ষেত্র
timestamp

string ( int64 format)

ঐচ্ছিক : কখন অর্ডার করা হয়েছিল তার টাইমস্ট্যাম্প, যুগ থেকে মিলিসেকেন্ড হিসাবে উপস্থাপন করা হয়েছে। সব অর্ডার ধরনের জন্য উপলব্ধ নয়.

orderId

string

ঐচ্ছিক : একটি স্ট্রিং অনন্যভাবে এই অর্ডারটি সনাক্ত করে। সব অর্ডার ধরনের জন্য উপলব্ধ নয়.

currencyCode

string

ঐচ্ছিক : এই অর্ডারে সমস্ত পরিমাণের জন্য ISO 4217 3-অক্ষরের মুদ্রা কোড। সব অর্ডার ধরনের জন্য উপলব্ধ নয়.

subTotalAmount

string ( Int64Value format)

ঐচ্ছিক : ট্যাক্সের আগে এই অর্ডারের মোট পরিমাণ, order.currencyCode এ উল্লেখ করা মুদ্রার মাইক্রো হিসাবে উপস্থাপিত। এটি SUM(items.totalPrice) এর সমান। সব অর্ডার ধরনের জন্য উপলব্ধ নয়.

totalAmount

string ( Int64Value format)

ঐচ্ছিক : কর সহ এই অর্ডারের মোট পরিমাণ, যা order.currencyCode এ উল্লেখিত মুদ্রার মাইক্রো হিসাবে উপস্থাপিত হয়। এটি subTotalAmount + SUM(taxes.amount) এর সমান। সব অর্ডার ধরনের জন্য উপলব্ধ নয়.

items[]

object ( Item )

প্রয়োজনীয় : এই অর্ডারের অংশ ছিল এমন আইটেমগুলির তালিকা৷

taxes[]

object ( Tax )

ঐচ্ছিক : করের তালিকা যা এই আদেশের অংশ ছিল।

আইটেম

অর্ডার একটি আইটেম সম্পর্কে তথ্য.

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 মুদ্রার মাইক্রো হিসাবে উপস্থাপিত করের পরিমাণ।