- درخواست HTTP
- پارامترهای مسیر
- درخواست بدنه
- بدنه پاسخ
- دامنههای مجوز
- بازپرداخت جزئی
- بازپرداخت کامل
- امتحانش کن!
بازپرداخت یا بازپرداخت جزئی یک تراکنش خارجی موجود.
درخواست HTTP
POST https://androidpublisher.googleapis.com/androidpublisher/v3/{name=applications/*/externalTransactions/*}:refund
این URL از سینتکس Transcoding در gRPC استفاده میکند.
پارامترهای مسیر
| پارامترها | |
|---|---|
name | الزامی. نام تراکنش خارجی که وجه آن مسترد خواهد شد. فرمت: 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 ( |
| فیلدها | |
|---|---|
refundTime | الزامی. زمانی که تراکنش بازپرداخت شده است. از RFC 3339 استفاده میکند، که در آن خروجی تولید شده همیشه به صورت Z-normalized خواهد بود و از ارقام کسری ۰، ۳، ۶ یا ۹ استفاده میکند. آفستهای غیر از "Z" نیز پذیرفته میشوند. مثالها: |
| الزامی. نوع بازپرداخت تراکنش خارجی. در زیر لیستی از فیلدهای ناسازگار آمده است. حداکثر یکی از فیلدها در پاسخ تنظیم میشود: | |
partialRefund | بازپرداخت جزئی. |
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
بازپرداخت جزئی
بازپرداخت جزئی از مبلغ معامله.
| نمایش JSON |
|---|
{
"refundId": string,
"refundPreTaxAmount": {
object ( |
| فیلدها | |
|---|---|
refundId | الزامی. یک شناسه منحصر به فرد که این بازپرداخت جزئی را متمایز کند. اگر بازپرداخت موفقیتآمیز باشد، بازپرداختهای بعدی با همان شناسه ناموفق خواهند بود. باید برای بازپرداختهای یک تراکنش منحصر به فرد باشد. |
refundPreTaxAmount | الزامی. مبلغ بازپرداخت جزئی قبل از کسر مالیات. باید کمتر از مبلغ باقیمانده قبل از کسر مالیات معامله باشد. |
بازپرداخت کامل
این نوع هیچ فیلدی ندارد.
بازپرداخت کامل مبلغ باقیمانده از یک تراکنش.