REST Resource: externaltransactions

منبع: تراکنش خارجی

جزئیات یک معامله خارجی

نمایش JSON
{
  "packageName": string,
  "externalTransactionId": string,
  "originalPreTaxAmount": {
    object (Price)
  },
  "originalTaxAmount": {
    object (Price)
  },
  "currentPreTaxAmount": {
    object (Price)
  },
  "currentTaxAmount": {
    object (Price)
  },
  "testPurchase": {
    object (ExternalTransactionTestPurchase)
  },
  "transactionTime": string,
  "createTime": string,
  "transactionState": enum (TransactionState),
  "userTaxAddress": {
    object (ExternalTransactionAddress)
  },
  "transactionProgramCode": integer,

  // Union field transaction_type can be only one of the following:
  "oneTimeTransaction": {
    object (OneTimeExternalTransaction)
  },
  "recurringTransaction": {
    object (RecurringExternalTransaction)
  }
  // End of list of possible types for union field transaction_type.

  // Union field program_details can be only one of the following:
  "externalOfferDetails": {
    object (ExternalOfferDetails)
  }
  // End of list of possible types for union field program_details.
}
فیلدها
packageName

string

فقط خروجی. نام منبع تراکنش خارجی. نام بسته برنامه‌ای که محصولات inapp در آن فروخته شده‌اند (برای مثال، 'com.some.app').

externalTransactionId

string

فقط خروجی. شناسه این تراکنش. همه شناسه‌های تراکنش تحت یک نام بسته باید منحصر به فرد باشند. هنگام ایجاد تراکنش خارجی تنظیم شود.

originalPreTaxAmount

object ( Price )

الزامی. مبلغ تراکنش اصلی قبل از کسر مالیات. این مبلغ، مبلغ قبل از کسر مالیات است که در ابتدا و قبل از اعمال هرگونه بازپرداخت به گوگل اطلاع داده شده است.

originalTaxAmount

object ( Price )

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

currentPreTaxAmount

object ( Price )

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

currentTaxAmount

object ( Price )

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

testPurchase

object ( ExternalTransactionTestPurchase )

فقط خروجی. در صورت تنظیم، این تراکنش یک خرید آزمایشی بوده است. گوگل برای تراکنش آزمایشی هزینه‌ای دریافت نمی‌کند.

transactionTime

string ( Timestamp format)

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

از RFC 3339 استفاده می‌کند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده می‌کند. آفست‌های غیر از "Z" نیز پذیرفته می‌شوند. مثال‌ها: "2014-10-02T15:01:23Z" ، "2014-10-02T15:01:23.045123456Z" یا "2014-10-02T15:01:23+05:30" .

createTime

string ( Timestamp format)

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

از RFC 3339 استفاده می‌کند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده می‌کند. آفست‌های غیر از "Z" نیز پذیرفته می‌شوند. مثال‌ها: "2014-10-02T15:01:23Z" ، "2014-10-02T15:01:23.045123456Z" یا "2014-10-02T15:01:23+05:30" .

transactionState

enum ( TransactionState )

فقط خروجی. وضعیت فعلی تراکنش.

userTaxAddress

object ( ExternalTransactionAddress )

الزامی. آدرس کاربر برای محاسبه مالیات.

transactionProgramCode

integer

اختیاری. کد برنامه تراکنش، که برای کمک به تعیین هزینه خدمات برای برنامه‌های واجد شرایط شرکت‌کننده در برنامه‌های شریک استفاده می‌شود. توسعه‌دهندگانی که در برنامه Play Media Experience ( https://play.google.com/console/about/programs/mediaprogram/ ) شرکت می‌کنند، باید هنگام گزارش تراکنش‌های صورتحساب جایگزین، کد برنامه را ارائه دهند. اگر شما یک توسعه‌دهنده واجد شرایط هستید، لطفاً برای اطلاعات بیشتر در مورد نحوه تنظیم این فیلد با BDM خود تماس بگیرید. توجه: این فیلد را نمی‌توان برای تراکنش‌های پیشنهادات خارجی استفاده کرد.

فیلد اتحادیه transaction_type . نوع تراکنشی که انجام شده است. transaction_type فقط می‌تواند یکی از موارد زیر باشد:
oneTimeTransaction

object ( OneTimeExternalTransaction )

این یک تراکنش یک‌باره است و بخشی از اشتراک نیست.

recurringTransaction

object ( RecurringExternalTransaction )

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

فیلد یونیون program_details . جزئیات خاص برنامه که برای گزارش تراکنش ضروری هستند. این جزئیات فقط باید برای برنامه‌ای که تراکنش با آن مرتبط است تنظیم شوند. program_details فقط می‌تواند یکی از موارد زیر باشد:
externalOfferDetails

object ( ExternalOfferDetails )

اختیاری. جزئیات لازم برای گزارش دقیق تراکنش‌های پیشنهادهای خارجی.

خرید تست تراکنش خارجی

این نوع هیچ فیلدی ندارد.

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

تراکنش خارجی یکباره

نشان دهنده یک تراکنش یک بار مصرف است.

نمایش JSON
{
  "externalTransactionToken": string
}
فیلدها
externalTransactionToken

string

فقط ورودی. در طول فراخوانی برای ایجاد ارائه می‌شود. هنگام راه‌اندازی جریان صورتحساب جایگزین، از مشتری بازیابی می‌شود.

تراکنش خارجی دوره‌ای

نشان‌دهنده تراکنشی است که بخشی از یک سری پرداخت‌های مکرر است. این می‌تواند یک اشتراک یا یک محصول یکباره با پرداخت‌های متعدد (مانند پیش‌سفارش) باشد.

نمایش JSON
{

  // Union field source can be only one of the following:
  "initialExternalTransactionId": string,
  "externalTransactionToken": string,
  "migratedTransactionProgram": enum (ExternalTransactionProgram)
  // End of list of possible types for union field source.

  // Union field product_details can be only one of the following:
  "externalSubscription": {
    object (ExternalSubscription)
  },
  "otherRecurringProduct": {
    object (OtherRecurringProduct)
  }
  // End of list of possible types for union field product_details.
}
فیلدها

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

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

initialExternalTransactionId

string

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

externalTransactionToken

string

فقط ورودی. در طول فراخوانی برای ایجاد ارائه می‌شود. هنگام راه‌اندازی جریان صورتحساب جایگزین از مشتری بازیابی می‌شود. فقط برای خرید اولیه لازم است.

migratedTransactionProgram

enum ( ExternalTransactionProgram )

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

فیلد یونیون product_details . الزامی. جزئیات محصول در تراکنش خارجی تکرارشونده. product_details فقط می‌تواند یکی از موارد زیر باشد:
externalSubscription

object ( ExternalSubscription )

جزئیات اشتراک خارجی.

otherRecurringProduct

object ( OtherRecurringProduct )

جزئیات یک محصول تراکنش خارجی تکرارشونده که به هیچ دسته خاص دیگری تعلق ندارد.

برنامه تراکنش خارجی

نشان دهنده برنامه تراکنش خارجی است که توسط کاربر برای تکمیل تراکنش تجربه می‌شود.

انوم‌ها
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED برنامه تراکنش نامشخص. استفاده نشده.
USER_CHOICE_BILLING صورتحساب به انتخاب کاربر، که در آن کاربر می‌تواند بین صورتحساب گوگل پلی و صورتحساب تحت مدیریت توسعه‌دهنده یکی را انتخاب کند.
ALTERNATIVE_BILLING_ONLY فقط صورتحساب جایگزین، که در آن کاربران فقط می‌توانند از صورتحساب توسعه‌دهنده-مدیر استفاده کنند.

اشتراک خارجی

جزئیات اشتراک خارجی.

نمایش JSON
{
  "subscriptionType": enum (SubscriptionType)
}
فیلدها
subscriptionType

enum ( SubscriptionType )

الزامی. نوع اشتراک خارجی.

نوع اشتراک

انواع اشتراک خارجی

انوم‌ها
SUBSCRIPTION_TYPE_UNSPECIFIED نامشخص، استفاده نکنید.
RECURRING این یک اشتراک دوره‌ای است که در آن از کاربر در هر چرخه صورتحساب هزینه دریافت می‌شود.
PREPAID این یک اشتراک پیش‌پرداخت است که در آن کاربر هزینه را از قبل پرداخت می‌کند.

سایرمحصولات دوره ای

این نوع هیچ فیلدی ندارد.

جزئیات یک محصول تراکنش خارجی تکرارشونده که به هیچ دسته خاص دیگری تعلق ندارد.

وضعیت تراکنش

وضعیت انجام تراکنش.

انوم‌ها
TRANSACTION_STATE_UNSPECIFIED وضعیت تراکنش نامشخص. استفاده نشده.
TRANSACTION_REPORTED تراکنش با موفقیت به گوگل گزارش شد.
TRANSACTION_CANCELED وجه معامله به طور کامل مسترد شده است.

آدرس تراکنش خارجی

آدرس کاربر برای تراکنش خارجی.

نمایش JSON
{
  "regionCode": string,
  "administrativeArea": string
}
فیلدها
regionCode

string

الزامی. کد منطقه دو حرفی بر اساس ISO-3166-1 Alpha-2 (کدهای منطقه سازمان ملل).

administrativeArea

string

اختیاری. بالاترین سطح تقسیمات اداری کشور/منطقه. فقط برای تراکنش‌های داخل هند الزامی است. مقادیر معتبر عبارتند از: «جزیره اندامان و نیکوبار»، «آندرا پرادش»، «آروناچال پرادش»، «اسام»، «بیهار»، «چندیگره»، «چاتیسگاره»، «دادرا و نگار هاولی»، «دادرا و نگار هاولی اندامان»، «دهلی»، «گوآ»، «گجرات»، «هاریانا»، «هیماچال پرادش»، «جامو و کشمیر»، «جهارکند»، «کارناتاکا»، «کرالا»، «لاداخ»، «لاکشادویپ»، «مادحیا پرادش»، «مهاراشترا»، «ماهاراش‌گا‌آم‌لایم‌پور»، "اودیشا"، "پوچری"، "پنجاب"، "راجستان"، "سیکیم"، "تامیل" NADU، "TELANGANA"، "TRIPURA"، "UTTAR PRADESH"، "UTTARAKHAND" و "West Bengal".

جزئیات پیشنهاد خارجی

گزارش جزئیات منحصر به فرد برای برنامه پیشنهادات خارجی.

نمایش JSON
{
  "linkType": enum (ExternalOfferLinkType),
  "installedAppPackage": string,
  "installedAppCategory": enum (ExternalOfferAppCategory),
  "appDownloadEventExternalTransactionId": string
}
فیلدها
installedAppPackage

string

اختیاری. نام بسته‌ی برنامه‌ای که از طریق این تراکنش دانلود شده است. وقتی linkType برابر با LINK_TO_APP_DOWNLOAD باشد، الزامی است.

installedAppCategory

enum ( ExternalOfferAppCategory )

اختیاری. دسته برنامه دانلود شده از طریق این تراکنش. این باید با دسته ارائه شده در کنسول Play در طول فرآیند تأیید برنامه خارجی مطابقت داشته باشد. فقط برای دانلود برنامه‌ها لازم است.

appDownloadEventExternalTransactionId

string

اختیاری. شناسه تراکنش خارجی مرتبط با رویداد دانلود برنامه از طریق یک لینک خارجی. هنگام گزارش تراکنش‌های انجام شده در برنامه‌های نصب شده خارجی الزامی است.

نوع لینک پیشنهاد خارجی

نوع لینک خارجی

انوم‌ها

دسته بندی برنامه ExternalOffer

دسته بندی برنامه دانلود شده. برای اطلاعات بیشتر در مورد دسته بندی برنامه ها به https://support.google.com/googleplay/android-developer/answer/9859673 مراجعه کنید.

انوم‌ها
EXTERNAL_OFFER_APP_CATEGORY_UNSPECIFIED نامشخص، استفاده نکنید.
APP این برنامه در دسته بندی اپلیکیشن ها قرار دارد.
GAME این برنامه در دسته بازی‌ها قرار می‌گیرد.

روش‌ها

createexternaltransaction

یک تراکنش خارجی جدید ایجاد می‌کند.

getexternaltransaction

یک تراکنش خارجی موجود را دریافت می‌کند.

refundexternaltransaction

بازپرداخت یا بازپرداخت جزئی یک تراکنش خارجی موجود.

کدهای خطا

عملیات این منبع، کدهای خطای HTTP زیر را برمی‌گرداند:

کد خطا دلیل وضوح تصویر
5xx خطای عمومی در سرور گوگل پلی. درخواست خود را دوباره امتحان کنید.

اگر مشکل همچنان ادامه داشت، با مدیر حساب Google Play خود تماس بگیرید یا درخواست پشتیبانی ارسال کنید. داشبورد وضعیت Play را برای هرگونه قطعی شناخته شده بررسی کنید.

409 خطای به‌روزرسانی همزمان.

تلاشی برای به‌روزرسانی شیء در حال به‌روزرسانی صورت گرفته است. برای مثال، یک خرید با فراخوانی متد acknowledgePurchase() از کتابخانه‌ی صورتحساب Play و با فراخوانی همزمان purchases.products.acknowledge از API توسعه‌دهنده‌ی Play، تأیید می‌شود.

درخواست خود را دوباره امتحان کنید.