Method: externaltransactions.refundexternaltransaction

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

طلب HTTP

POST https://androidpublisher.googleapis.com/androidpublisher/v3/{name=applications/*/externalTransactions/*}:refund

يستخدم عنوان URL بنية تحويل الترميز إلى gRPC.

مَعلمات المسار

المعلمات
name

string

الحقل مطلوب. اسم المعاملة الخارجية التي سيتم ردّ أموالها. التنسيق: applications/{packageName}/externalTransactions/{externalTransaction}

نص الطلب

يتضمن نص الطلب بيانات بالبنية التالية:

تمثيل JSON
{
  "refundTime": string,

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "partialRefund": {
    object (PartialRefund)
  },
  "fullRefund": {
    object (FullRefund)
  }
  // End of mutually exclusive fields.
}
الحقول
refundTime

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

الحقل مطلوب. تمثّل هذه السمة نوع عملية ردّ الأموال من معاملة خارجية. في ما يلي قائمة بالحقول التي يستبعد كلّ منها الآخر. سيتم ضبط حقل واحد على الأكثر في الردّ:
partialRefund

object (PartialRefund)

ردّ جزء من الأموال.

fullRefund

object (FullRefund)

ردّ الأموال بالكامل

نهاية الحقول التي يستبعد كلّ منها الآخر

نص الاستجابة

إذا كانت الاستجابة ناجحة، يحتوي نص الاستجابة على مثال ExternalTransaction.

عيّنة

في ما يلي نموذج طلب:

curl \
  -X POST \
  'https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.example.app/externalTransactions/foo:refund' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
  -H 'Content-Type: application/json' \
  -d '{ \
    "partialRefund": { \
      "refundId": "my_refund_id", \
      "refundPreTaxAmount": { \
        "currency": "USD", \
        "priceMicros": "10120000" \
      } \
    }, \
    "refundTime": "2023-10-20T16:43:32.852Z" \
  }'

في ما يلي نموذج ردّ:

{
  "externalTransactionId": "1234567890123456789012345678901234567890123456789012345678901234",
  "originalPreTaxAmount": {
    "currency": "USD",
    "priceMicros": "1990000"
  },
  "originalTaxAmount": {
    "currency": "USD",
    "priceMicros": "11400000"
  },
  "packageName": "com.example.app",
  "transactionState": "TRANSACTION_CANCELED",
  "transactionTime": "2023-04-01T12:00:00Z",
  "userTaxAddress": {
    "regionCode": "US"
  },
  "createTime": "2023-04-01T11:55:00Z",
  "currentPreTaxAmount": {
    "currency": "USD",
    "priceMicros": "0"
  },
  "currentTaxAmount": {
    "currency": "USD",
    "priceMicros": "0"
  },
  "testPurchase": {},
  "recurringTransaction": {
    "initialExternalTransactionId": "9876543210987654321098765432109876543210987654321098765432109876",
    "externalSubscription": {
      "subscriptionType": "RECURRING"
    }
  }
}

نطاقات الأذونات

يجب توفير نطاق OAuth التالي:

  • https://www.googleapis.com/auth/androidpublisher

PartialRefund

ردّ جزء من الأموال المدفوعة في إحدى المعاملات

تمثيل JSON
{
  "refundId": string,
  "refundPreTaxAmount": {
    object (Price)
  }
}
الحقول
refundId

string

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

refundPreTaxAmount

object (Price)

الحقل مطلوب. المبلغ قبل الضريبة للاسترداد الجزئي. ينبغي أن يكون أقل من المبلغ المتبقي قبل الضريبة للمعاملة.

FullRefund

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

ردّ المبلغ المتبقي من المعاملة بالكامل