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 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

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

OrderLookup Criteria

معیارهای جستجوی سفارش

نمایندگی 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

جستجو بر اساس شناسه همبستگی DCB ایجاد شده توسط Google که پرداخت را به‌طور منحصربه‌فرد شناسایی می‌کند. این مقدار توسط Google ایجاد شد و در طول تماس Auth به یکپارچه‌ساز پرداخت صورت‌حساب شرکت مخابراتی ارسال شد.

arnCriteria

object ( ArnCriteria )

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

googleTransactionReferenceNumberCriteria

object ( GoogleTransactionReferenceNumberCriteria )

جستجو بر اساس شماره مرجع تراکنش گوگل.

معیارهای 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
}
فیلدها
organizationId

string

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

organizationDescription

string

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

ResponseHeader

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

نمایندگی JSON
{
  "responseTimestamp": string
}
فیلدها
responseTimestamp

string ( int64 format)

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

GetOrderDetails ResultCode

نتیجه فراخوانی متد 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

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

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 .