Method: orders.refund
Stay organized with collections
Save and categorize content based on your preferences.
Refunds a user's subscription or in-app purchase order. Orders older than 3 years cannot be refunded.
HTTP request
POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters |
packageName |
string
The package name of the application for which this subscription or in-app item was purchased (for example, 'com.some.thing').
|
orderId |
string
The order ID provided to the user when the subscription or in-app order was purchased.
|
Query parameters
Parameters |
revoke |
boolean
Whether to revoke the purchased item. If set to true, access to the subscription or in-app item will be terminated immediately. If the item is a recurring subscription, all future payments will also be terminated. Consumed in-app items need to be handled by developer's app. (optional).
|
Request body
The request body must be empty.
Response body
If successful, the response body is empty.
Sample
The following is a sample request:
curl \
-X POST \
'https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.example.app/orders/1234567890:refund?revoke=true' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer [YOUR_ACCESS_TOKEN]'
Authorization scopes
Requires the following OAuth scope:
https://www.googleapis.com/auth/androidpublisher
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-06-02 UTC.
[null,null,["Last updated 2025-06-02 UTC."],[[["\u003cp\u003eThis operation refunds a user's subscription or in-app purchase order, provided the order is less than 3 years old.\u003c/p\u003e\n"],["\u003cp\u003eIt uses an HTTP POST request to the specified URL with path parameters for package name and order ID.\u003c/p\u003e\n"],["\u003cp\u003eAn optional query parameter "revoke" can be included to immediately terminate access to the purchased item.\u003c/p\u003e\n"],["\u003cp\u003eThe request body should be empty, and a successful response will also be empty.\u003c/p\u003e\n"],["\u003cp\u003eAuthorization requires the \u003ccode\u003ehttps://www.googleapis.com/auth/androidpublisher\u003c/code\u003e OAuth scope.\u003c/p\u003e\n"]]],["This document details how to refund a user's subscription or in-app purchase via a `POST` HTTP request. The request URL requires the application's `packageName` and the `orderId` as path parameters. An optional `revoke` query parameter determines if the purchased item should be immediately revoked. The request body must be empty, and a successful response also returns an empty body. Orders over 3 years old are ineligible for refunds. This action requires the `https://www.googleapis.com/auth/androidpublisher` authorization scope.\n"],null,["# Method: orders.refund\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nRefunds a user's subscription or in-app purchase order. Orders older than 3 years cannot be refunded.\n\n### HTTP request\n\n`POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|---------------|----------------------------------------------------------------------------------------------------------------------------------------|\n| `packageName` | `string` The package name of the application for which this subscription or in-app item was purchased (for example, 'com.some.thing'). |\n| `orderId` | `string` The order ID provided to the user when the subscription or in-app order was purchased. |\n\n### Query parameters\n\n| Parameters ||\n|----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `revoke` | `boolean` Whether to revoke the purchased item. If set to true, access to the subscription or in-app item will be terminated immediately. If the item is a recurring subscription, all future payments will also be terminated. Consumed in-app items need to be handled by developer's app. (optional). |\n\n### Request body\n\nThe request body must be empty.\n\n### Response body\n\nIf successful, the response body is empty.\n\n### Sample\n\nThe following is a sample request: \n\n```json\ncurl \\\n -X POST \\\n 'https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.example.app/orders/1234567890:refund?revoke=true' \\\n -H 'Accept: application/json' \\\n -H 'Authorization: Bearer [YOUR_ACCESS_TOKEN]'\n```\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/androidpublisher`"]]