REST Resource: externaltransactions

المورد: ExternalTransaction

تفاصيل معاملة خارجية

تمثيل 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

النتائج فقط. اسم المورد الخاص بالمعاملة الخارجية. اسم حزمة التطبيق الذي تم بيع المنتجات داخله (على سبيل المثال، "com.some.app").

externalTransactionId

string

النتائج فقط. معرّف هذه المعاملة. يجب أن تكون جميع معرّفات المعاملات ضِمن اسم الحزمة نفسه فريدة. يتم ضبطها عند إنشاء المعاملة الخارجية.

originalPreTaxAmount

object (Price)

الحقل مطلوب. مبلغ المعاملة الأصلي قبل احتساب الضرائب يمثّل هذا المبلغ المبلغ قبل الضريبة الذي تم إبلاغ Google به في الأصل قبل تطبيق أي عمليات ردّ للأموال.

originalTaxAmount

object (Price)

الحقل مطلوب. مبلغ الضريبة الأصلي يمثّل هذا المبلغ الضريبي الذي تم إبلاغ Google به في الأصل قبل تطبيق أي عمليات ردّ للأموال.

currentPreTaxAmount

object (Price)

النتائج فقط. مبلغ المعاملة الحالي قبل الضريبة يمثّل هذا الحقل المبلغ الحالي قبل الضريبة، بما في ذلك أي عمليات ردّ أموال تم تطبيقها على هذه المعاملة.

currentTaxAmount

object (Price)

النتائج فقط. مبلغ الضريبة الحالي يمثّل هذا الحقل مبلغ الضريبة الحالي، بما في ذلك أي مبالغ تم ردّها في هذه المعاملة.

testPurchase

object (ExternalTransactionTestPurchase)

النتائج فقط. إذا تم ضبطها، تكون هذه المعاملة عملية شراء تجريبية. لن تحصّل Google أي رسوم مقابل إجراء معاملة تجريبية.

transactionTime

string (Timestamp format)

الحقل مطلوب. الوقت الذي تم فيه إكمال المعاملة

يستخدم المعيار RFC 3339، حيث يكون الناتج الذي يتم إنشاؤه مُمثلاً بالتوقيت العالمي المنسَّق مع حرف Z في النهاية ويستخدم الأرقام الجزئية 0 أو 3 أو 6 أو 9. تُقبل أيضًا المعادلات الأخرى التي لا تستخدم حرف Z. أمثلة: "2014-10-02T15:01:23Z" أو "2014-10-02T15:01:23.045123456Z" أو "2014-10-02T15:01:23+05:30".

createTime

string (Timestamp format)

النتائج فقط. وقت إنشاء هذه المعاملة هذا هو الوقت الذي تم فيه إبلاغ Google بالمعاملة.

يستخدم المعيار RFC 3339، حيث يكون الناتج الذي يتم إنشاؤه مُمثلاً بالتوقيت العالمي المنسَّق مع حرف Z في النهاية ويستخدم الأرقام الجزئية 0 أو 3 أو 6 أو 9. تُقبل أيضًا المعادلات الأخرى التي لا تستخدم حرف 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" (https://play.google.com/console/about/programs/mediaprogram/) تقديم رمز البرنامج عند إعداد تقارير عن معاملات نظام الفوترة البديل. إذا كنت مطوّرًا مؤهَّلاً، يُرجى التواصل مع مدير تطوير الأعمال للحصول على مزيد من المعلومات حول كيفية ضبط هذا الحقل. ملاحظة: لا يمكن استخدام هذا الحقل لمعاملات العروض الخارجية.

حقل الدمج transaction_type نوع المعاملة التي تمّ تنفيذها. يمكن أن تكون transaction_type إحدى القيم التالية فقط:
oneTimeTransaction

object (OneTimeExternalTransaction)

هذه معاملة لمرة واحدة وليست جزءًا من اشتراك.

recurringTransaction

object (RecurringExternalTransaction)

هذه المعاملة هي جزء من سلسلة متكرّرة من المعاملات.

حقل الدمج program_details تفاصيل خاصة بالبرنامج ضرورية لإعداد تقارير المعاملات يجب ضبط التفاصيل فقط للبرنامج المرتبط بالمعاملة. يمكن أن تكون program_details إحدى القيم التالية فقط:
externalOfferDetails

object (ExternalOfferDetails)

اختياريّ. التفاصيل اللازمة لإعداد تقارير دقيقة عن معاملات العروض الترويجية الخارجية

ExternalTransactionTestPurchase

لا يتضمّن هذا النوع أي حقول.

تمثّل هذه السمة معاملة تم إجراؤها باستخدام حساب اختباري. لن تحصّل Google رسومًا مقابل هذه المعاملات.

OneTimeExternalTransaction

يمثّل معاملة تم إجراؤها مرة واحدة فقط.

تمثيل JSON
{
  "externalTransactionToken": string
}
الحقول
externalTransactionToken

string

الإدخال فقط يتم توفيرها أثناء الاتصال بـ Create. يتم استردادها من العميل عند بدء مسار الفوترة البديل.

RecurringExternalTransaction

تمثّل هذه السمة معاملة تشكّل جزءًا من سلسلة متكرّرة من الدفعات. يمكن أن يكون ذلك اشتراكًا أو منتجًا يُدفع ثمنه لمرة واحدة مع دفعات متعددة (مثل الطلب المُسبَق).

تمثيل 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

الإدخال فقط يتم توفيرها أثناء الاتصال بـ Create. يتم استردادها من العميل عند بدء مسار الفوترة البديل. مطلوب فقط عند الشراء لأول مرة.

migratedTransactionProgram

enum (ExternalTransactionProgram)

الإدخال فقط يتم توفيرها أثناء الاتصال بـ Create. يجب استخدامها فقط عند نقل اشتراك من إعداد التقارير الشهرية يدويًا إلى إعداد التقارير آليًا.

حقل الدمج product_details الحقل مطلوب. تفاصيل المنتج في المعاملة الخارجية المتكرّرة يمكن أن تكون product_details إحدى القيم التالية فقط:
externalSubscription

object (ExternalSubscription)

تمثّل هذه السمة تفاصيل الاشتراك الخارجي.

otherRecurringProduct

object (OtherRecurringProduct)

تفاصيل منتج يتضمّن معاملة خارجية متكرّرة لا ينتمي إلى أي فئة أخرى محدّدة

ExternalTransactionProgram

تمثّل هذه السمة برنامج المعاملات الخارجية الذي يتيح للمستخدم إكمال المعاملة.

عمليات التعداد
EXTERNAL_TRANSACTION_PROGRAM_UNSPECIFIED برنامج المعاملات غير المحدّد لم يتم استخدامه.
USER_CHOICE_BILLING ميزة "الفوترة حسب اختيار المستخدم"، حيث يمكن للمستخدم الاختيار بين نظام الفوترة الذي يديره المطوّر في "الفوترة في Google Play"
ALTERNATIVE_BILLING_ONLY نظام فوترة بديل فقط، حيث يمكن للمستخدمين استخدام نظام الفوترة الذي يوفّره المطوّر فقط

ExternalSubscription

تمثّل هذه السمة تفاصيل الاشتراك الخارجي.

تمثيل JSON
{
  "subscriptionType": enum (SubscriptionType)
}
الحقول
subscriptionType

enum (SubscriptionType)

الحقل مطلوب. نوع الاشتراك الخارجي.

SubscriptionType

أنواع الاشتراكات الخارجية

عمليات التعداد
SUBSCRIPTION_TYPE_UNSPECIFIED غير محدّد، لا تستخدِم هذه القيمة.
RECURRING هذا اشتراك متكرّر يتم فيه تحصيل الرسوم من المستخدم في كل دورة فوترة.
PREPAID هذا اشتراك مدفوع مسبقًا يدفع فيه المستخدم الرسوم مقدّمًا.

OtherRecurringProduct

لا يتضمّن هذا النوع أي حقول.

تفاصيل منتج معاملة خارجية متكرّرة لا ينتمي إلى أي فئة أخرى أكثر تحديدًا

TransactionState

حالة إجراء معاملة

عمليات التعداد
TRANSACTION_STATE_UNSPECIFIED حالة المعاملة غير محدَّدة. لم يتم استخدامه.
TRANSACTION_REPORTED تم إبلاغ Google عن المعاملة بنجاح.
TRANSACTION_CANCELED تم ردّ الأموال المدفوعة في المعاملة بالكامل.

ExternalTransactionAddress

عنوان المستخدِم لإجراء المعاملة الخارجية.

تمثيل JSON
{
  "regionCode": string,
  "administrativeArea": string
}
الحقول
regionCode

string

الحقل مطلوب. رمز المنطقة المكوّن من حرفَين استنادًا إلى معيار ISO-3166-1 Alpha-2 (رموز مناطق الأمم المتحدة)

administrativeArea

string

اختياريّ. التقسيم الإداري الأعلى مستوى في البلد أو المنطقة مطلوب فقط للمعاملات في الهند. القيم الصالحة هي "جزر أندامان ونيكوبار" و"أندرا براديش" و"أروناشال براديش" و"آسام" و"بيهار" و"تشانديغار" و"تشهاتيسغار" و"دادرا وناغار هافيلي" و"دادرا وناغار هافيلي ودامان وديو" و"دامان وديو" و"دلهي" و"غوا" و"غوجارات" و"هاريانا" و"هيماشال براديش" و"جامو وكشمير" و"جهارخاند" و"كارناتاكا" و"كيرالا" و"لاداخ" و"لاكشادويب" و"ماديا براديش" و"ماهاراشترا" و"مانيبور" و"ميغالايا" و"ميزورام" و"ناغالاند" و"أوديشا" و"بودوتشيري" و"البنجاب" و"راجاستان" و"سيكيم" و"تاميل نادو" و"تيلانغانا" و"تريبورا" و"أوتار براديش" و"أوتاراخاند" و "غرب البنغال".

ExternalOfferDetails

تفاصيل التقارير الخاصة بـ "برنامج العروض الترويجية الخارجية"

تمثيل JSON
{
  "linkType": enum (ExternalOfferLinkType),
  "installedAppPackage": string,
  "installedAppCategory": enum (ExternalOfferAppCategory),
  "appDownloadEventExternalTransactionId": string
}
الحقول
installedAppPackage

string

اختياريّ. اسم حزمة التطبيق الذي تم تنزيله من خلال هذه المعاملة. تكون هذه السمة مطلوبة عندما تكون قيمة linkType هي LINK_TO_APP_DOWNLOAD.

installedAppCategory

enum (ExternalOfferAppCategory)

اختياريّ. فئة التطبيق الذي تم تنزيله من خلال هذه المعاملة يجب أن تتطابق هذه الفئة مع الفئة المقدَّمة في Play Console أثناء عملية إثبات ملكية التطبيق الخارجي. مطلوب فقط لعمليات تنزيل التطبيقات.

appDownloadEventExternalTransactionId

string

اختياريّ. معرّف المعاملة الخارجية المرتبط بحدث تنزيل التطبيق من خلال رابط خارجي مطلوبة عند الإبلاغ عن المعاملات التي تتم في التطبيقات المثبَّتة خارجيًا.

ExternalOfferLinkType

تمثّل هذه السمة نوع الرابط الخارجي.

عمليات التعداد

ExternalOfferAppCategory

فئة التطبيق الذي تم تنزيله. يمكنك الانتقال إلى https://support.google.com/googleplay/android-developer/answer/9859673 للحصول على مزيد من المعلومات حول فئات التطبيقات.

عمليات التعداد
EXTERNAL_OFFER_APP_CATEGORY_UNSPECIFIED غير محدّد، لا تستخدِم هذه القيمة.
APP يتم تصنيف التطبيق ضمن فئة التطبيق.
GAME يتم تصنيف التطبيق ضمن فئة الألعاب.

الطُرق

createexternaltransaction

تُنشئ هذه الطريقة معاملة خارجية جديدة.

getexternaltransaction

تعرض هذه الطريقة معاملة خارجية حالية.

refundexternaltransaction

لردّ الأموال أو جزء منها في معاملة خارجية حالية

رموز الخطأ

تعرض عمليات هذا المرجع رموز خطأ HTTP التالية:

رمز الخطأ السبب الوصف الدقة
400 invalidValue تم إدخال قيمة غير صالحة في الطلب. يتم عرض هذا الرمز غالبًا عند تقديم رمز مميّز غير صالح أو غير مكتمل لعملية الشراء. صحِّح قيمة الحقل غير الصالحة في نص الطلب أو المَعلمات استنادًا إلى مرجع واجهة برمجة التطبيقات.
400 required لم يتم إدخال حقل أو مَعلمة مطلوبة في الطلب. راجِع مستندات واجهة برمجة التطبيقات للتأكّد من تضمين جميع الحقول والمَعلمات الإلزامية.
403 userInsufficientPermission لا يملك المستخدم الإذن الكافي لتنفيذ العملية المطلوبة. تأكَّد من أنّ المستخدم المصادَق عليه لديه الأذونات اللازمة في Google Play Console. لمزيد من التفاصيل، يُرجى الاطّلاع على استخدام حساب خدمة.
404 notFound تعذَّر العثور على المورد المطلوب. تأكَّد من صحة المعرّفات (مثل رمز الشراء أو اسم الحزمة أو معرّف المنتج أو معرّف الاشتراك).
409 concurrentUpdate تمت محاولة تعديل عنصر يتم تعديله في الوقت نفسه. أعِد محاولة إرسال الطلب باستخدام خوارزمية الرقود الأسي الثنائي. تجنَّب إجراء تعديلات متزامنة على المرجع نفسه.
5xx Generic error حدث خطأ عام في خادم Google Play. أعِد محاولة إرسال طلبك.

إذا استمرت المشكلة، يُرجى التواصل مع مدير حسابك على Google Play أو إرسال طلب دعم. ننصحك بالاطّلاع على لوحة البيانات الخاصة بحالة Play لمعرفة أي انقطاعات معروفة في الخدمة.