- درخواست HTTP
- درخواست بدن
- بدن پاسخگو
- RequestHeader
- نسخه
- OrderLookup Criteria
- معیارهای Arn
- معیارهای Google TransactionReferenceNumber
- RequestOriginator
- ResponseHeader
- GetOrderDetails ResultCode
- سفارش دهید
- مورد
- مالیات
سفارشی دریافت کنید که مبنایی را برای شرکای Google برای دریافت هزینه از کاربران نهایی فراهم کند.
اگر نقطه پایانی هنگام پردازش درخواست با خطا مواجه شود، پاسخ این نقطه پایانی از نوع خواهد بود.ErrorResponse
اگر این روش یک HTTP 200 را برنگرداند، ممکن است پاسخهای این عبارت خالی باشد. بدنه پاسخ در شرایطی که میتوان از یک با توضیح واضح برای کمک به مهاجم برای درک شناسه حساب یکپارچهساز پرداخت سایر ادغامکنندهها استفاده کرد، خالی است. در این شرایط، که یا کلید امضا مطابقت ندارد، شناسه یکپارچه پرداخت پیدا نشد، یا کلید رمزگذاری ناشناخته بود، این روش یک HTTP 404 را با بدنه خالی برمی گرداند. اگر امضای درخواست تأیید شود، اطلاعات اضافی در مورد خطا در بدنه پاسخ بازگردانده می شود.ErrorResponse
یک نمونه درخواست به نظر می رسد:
{
"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 | الزامی : شناسه حساب یکپارچهساز پرداخت که تماسگیرنده و محدودیتهای قراردادی مرتبط را برای این تعامل شناسایی میکند. |
orderLookupCriteria | الزامی : معیارهایی که ترتیبی را که باید جستجو شود نشان می دهد. |
requestOriginator | اختیاری : اطلاعات مربوط به سازمان یا گروه فرعی سازمانی که این درخواست را ایجاد کرده است (اگر ادغام کننده از طرف سازمان دیگری با ما تماس گرفته باشد). |
بدن پاسخگو
بار پاسخ برای روش getOrderDetails .
در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:
| نمایندگی JSON |
|---|
{ "responseHeader": { object ( |
| فیلدها | |
|---|---|
responseHeader | مورد نیاز : هدر مشترک برای همه پاسخ ها. |
result | الزامی : نتیجه این تماس. |
order | اختیاری : اطلاعات مربوط به سفارشی که پرداخت انجام شده است. (اگر و فقط در صورتی که |
RequestHeader
شی هدر که روی تمام درخواست های ارسال شده به سرور تعریف می شود.
| نمایندگی JSON |
|---|
{
"requestId": string,
"requestTimestamp": string,
"userLocale": string,
"protocolVersion": {
object ( |
| فیلدها | |
|---|---|
requestId | مورد نیاز : شناسه منحصر به فرد این درخواست. این رشته ای است که حداکثر طول آن 100 کاراکتر است و فقط شامل کاراکترهای "az"، "AZ"، "0-9"، ":"، "-"، و "_" است. |
requestTimestamp | الزامی است : مهر زمانی این درخواست به عنوان میلی ثانیه از آن دوره نشان داده شده است. گیرنده باید تأیید کند که این مُهر زمانی ± 60 ثانیه «اکنون» است. این مهر زمانی درخواست پس از تلاش مجدد بی تاثیر نیست. |
userLocale | منسوخ شده : کد زبان ISO 639-2 آلفا 3 دو یا سه حرفی که به صورت اختیاری با خط فاصله و کد کشور ISO 3166-1 آلفا-2، به عنوان مثال، «pt-BR»، «fil» یا 'fil-PH'. از این برای کمک به هدایت فیلدهای |
protocolVersion | مورد نیاز : نسخه این درخواست. |
نسخه
شئ نسخه که شکلی ساختار یافته از ساختار نسخه کلاسیک abc است. نسخههای اصلی همین تعداد تضمین میشوند که سازگار باشند. توجه داشته باشید که اصلاحات جزئی و جزئی می توانند اغلب و بدون اطلاع قبلی تغییر کنند. یکپارچه کننده باید از همه درخواست ها برای یک نسخه اصلی پشتیبانی کند.
| نمایندگی JSON |
|---|
{ "major": integer, "minor": integer, "revision": integer } |
| فیلدها | |
|---|---|
major | مورد نیاز : نسخه اصلی. این برای درخواستهای سازگاری با نسخههای مختلف علامتگذاری شده است و تضمین نمیشود که سازگار باشند. |
minor | مورد نیاز : نسخه کوچک. این نشان دهنده رفع اشکال قابل توجه است. |
revision | مورد نیاز : نسخه کوچک. این نشان دهنده رفع اشکال جزئی است. |
OrderLookup Criteria
معیارهای جستجوی سفارش
| نمایندگی JSON |
|---|
{ // Union field |
| فیلدها | |
|---|---|
| |
dcb3CorrelationId | جستجو بر اساس شناسه همبستگی DCB ایجاد شده توسط Google که پرداخت را بهطور منحصربهفرد شناسایی میکند. این مقدار توسط Google ایجاد شد و در طول تماس Auth به یکپارچهساز پرداخت صورتحساب شرکت مخابراتی ارسال شد. |
arnCriteria | جستجو بر اساس شماره مرجع گیرنده (ARN). |
googleTransactionReferenceNumberCriteria | جستجو بر اساس شماره مرجع تراکنش گوگل. |
معیارهای Arn
معیارهای جستجوی پرداخت بر اساس شماره مرجع گیرنده (ARN).
| نمایندگی JSON |
|---|
{ "acquirerReferenceNumber": string, "authorizationCode": string } |
| فیلدها | |
|---|---|
acquirerReferenceNumber | الزامی : شماره مرجع دریافت کننده (ARN) که به طور منحصر به فرد پرداخت را مشخص می کند. باید 23 رقم باشد. |
authorizationCode | مورد نیاز : کد مجوز برای معامله. |
معیارهای Google TransactionReferenceNumber
معیارهای جستجوی پرداخت براساس شماره مرجع تراکنش ایجاد شده توسط Google.
| نمایندگی JSON |
|---|
{ "googleTransactionReferenceNumber": string, "authorizationCode": string } |
| فیلدها | |
|---|---|
googleTransactionReferenceNumber | الزامی است : شماره مرجع تراکنش ایجاد شده توسط Google که پرداخت را به طور منحصر به فردی مشخص می کند. |
authorizationCode | مورد نیاز : کد مجوز برای معامله. |
RequestOriginator
اطلاعات مربوط به سازمان یا زیر گروه سازمانی که این درخواست از آن منشا گرفته است. این به Google امکان میدهد مشکلات یا سوء استفاده را شناسایی کرده و کنترلها را در سطح دقیقتری نسبت به paymentIntegratorAccountId اجرا کند. به ویژه زمانی که تماسگیرنده یک ارائهدهنده خدمات واسطه است که درخواستهای چندین مشتری خارجی را دریافت میکند بسیار ارزشمند است.
| نمایندگی JSON |
|---|
{ "organizationId": string, "organizationDescription": string } |
| فیلدها | |
|---|---|
organizationId | الزامی : شناسه شرکت، سازمان یا گروه سازمانی که این درخواست از آن منشا گرفته است. باید در این |
organizationDescription | مورد نیاز : نام یا توصیفی از سازمان که برای انسان قابل خواندن است که می تواند برای تسهیل ارتباط بین کارمندان Google و ادغام کننده در مورد آن سازمان استفاده شود. |
ResponseHeader
شی هدر که روی تمام پاسخ های ارسال شده از سرور تعریف می شود.
| نمایندگی JSON |
|---|
{ "responseTimestamp": string } |
| فیلدها | |
|---|---|
responseTimestamp | الزامی : مهر زمانی این پاسخ به عنوان میلی ثانیه از دوره نشان داده شده است. گیرنده باید تأیید کند که این مُهر زمانی ± 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 ( |
| فیلدها | |
|---|---|
timestamp | اختیاری : مُهر زمانی مربوط به زمان انجام سفارش، که به صورت میلی ثانیه از آن دوره نشان داده میشود. برای همه انواع سفارش در دسترس نیست. |
orderId | اختیاری : رشته ای که به طور منحصر به فرد این ترتیب را مشخص می کند. برای همه انواع سفارش در دسترس نیست. |
currencyCode | اختیاری : کد ارز 3 حرفی ISO 4217 برای همه مبالغ در این ترتیب. برای همه انواع سفارش در دسترس نیست. |
subTotalAmount | اختیاری : مبلغ کل این سفارش قبل از مالیات، به صورت میکرو ارز مشخص شده در |
totalAmount | اختیاری : کل مبلغ این سفارش شامل مالیات، به صورت میکرو ارز مشخص شده در |
items[] | مورد نیاز : فهرست مواردی که بخشی از این سفارش بودند. |
taxes[] | اختیاری : فهرست مالیات هایی که بخشی از این سفارش بودند. |
مورد
اطلاعات در مورد یک مورد در سفارش.
| نمایندگی JSON |
|---|
{ "description": string, "merchant": string, "quantity": string, "totalPrice": string, "googleProductName": string } |
| فیلدها | |
|---|---|
description | اختیاری : شرح موردی که خریداری شده است. برای همه انواع سفارش در دسترس نیست. |
merchant | مورد نیاز : فروشنده، هنرمند یا سازنده کالا. |
quantity | اختیاری : مقداری که از این کالا سفارش داده شده است. اگر مقادیر صحیح برای محصول قابل اعمال نباشد، این قسمت حذف می شود (مثلاً محصولات اندازه گیری شده ممکن است مقادیر کسری داشته باشند). |
totalPrice | اختیاری : قیمت کل این مورد، به صورت میکرو ارز مشخص شده در |
googleProductName | مورد نیاز : نام سرویس محصول Google برای مورد. |
مالیات
اطلاعاتی درباره مالیاتی که برای این سفارش اعمال می شود.
| نمایندگی JSON |
|---|
{ "description": string, "amount": string } |
| فیلدها | |
|---|---|
description | مورد نیاز : شرح مالیات. |
amount | الزامی : مقدار مالیات، نشان داده شده به صورت میکرو ارز مشخص شده در |