Method: externaltransactions.refundexternaltransaction

החזרים כספיים או החזרים כספיים חלקיים על עסקה חיצונית קיימת.

בקשת HTTP

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

כתובת ה-URL כתובה בתחביר של gRPC Transcoding.

פרמטרים של נתיב

פרמטרים
name

string

חובה. שם העסקה החיצונית שיוחזר עליה כסף. פורמט: applications/{packageName}/externalTransactions/{externalTransaction}

גוף הבקשה

גוף הבקשה מכיל נתונים במבנה הבא:

ייצוג ב-JSON
{
  "refundTime": string,

  // Union field refund_type can be only one of the following:
  "partialRefund": {
    object (PartialRefund)
  },
  "fullRefund": {
    object (FullRefund)
  }
  // End of list of possible types for union field refund_type.
}
שדות
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".

שדה איחוד refund_type. חובה. סוג ההחזר הכספי על עסקה חיצונית. הערך refund_type יכול להיות רק אחד מהבאים:
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

בסוג הזה אין שדות.

החזר כספי מלא של הסכום שנותר בעסקה.