- Solicitação HTTP
- Parâmetros de caminho
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
- PartialRefund
- FullRefund
- Faça um teste
Reembolsa total ou parcialmente uma transação externa atual.
Solicitação HTTP
POST https://androidpublisher.googleapis.com/androidpublisher/v3/{name=applications/*/externalTransactions/*}:refund
O URL usa a sintaxe de transcodificação gRPC.
Parâmetros de caminho
| Parâmetros | |
|---|---|
| name | 
 Obrigatório. O nome da transação externa que será reembolsada. Formato: applications/{packageName}/externalTransactions/{externalTransaction} | 
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
| Representação JSON | 
|---|
| { "refundTime": string, // Union field | 
| Campos | |
|---|---|
| refundTime | 
 Obrigatório. A data e a hora em que a transação foi reembolsada. Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos:  | 
| Campo de união refund_type. Obrigatório. Tipo de reembolso de transação externa.refund_typepode ser apenas de um dos tipos a seguir: | |
| partialRefund | 
 Um reembolso parcial. | 
| fullRefund | 
 Reembolso do valor total. | 
Corpo da resposta
Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de ExternalTransaction.
Exemplo
Confira um exemplo de solicitação:
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" \ }'
Veja a seguir um exemplo de resposta:
{ "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" } } }
Escopos de autorização
Requer o seguinte escopo OAuth:
- https://www.googleapis.com/auth/androidpublisher
PartialRefund
Um reembolso parcial de uma transação.
| Representação JSON | 
|---|
| {
  "refundId": string,
  "refundPreTaxAmount": {
    object ( | 
| Campos | |
|---|---|
| refundId | 
 Obrigatório. Um ID exclusivo que distingue esse reembolso parcial. Se o reembolso for bem-sucedido, outros com o mesmo ID vão falhar. Precisa ser único entre os reembolsos para uma transação individual. | 
| refundPreTaxAmount | 
 Obrigatório. O valor bruto do reembolso parcial. Precisa ser menor do que o valor bruto que resta da transação. | 
FullRefund
Esse tipo não tem campos.
Reembolso total do valor restante de uma transação.