- Richiesta HTTP
- Parametri del percorso
- Corpo della richiesta
- Corpo della risposta
- Ambiti di autorizzazione
- PartialRefund
- FullRefund
- Fai una prova!
Rimborsa o rimborsa parzialmente una transazione esterna esistente.
Richiesta HTTP
POST https://androidpublisher.googleapis.com/androidpublisher/v3/{name=applications/*/externalTransactions/*}:refund
L'URL utilizza la sintassi di transcodifica gRPC.
Parametri del percorso
| Parametri | |
|---|---|
name |
Obbligatorio. Il nome della transazione esterna che verrà rimborsata. Formato: applications/{packageName}/externalTransactions/{externalTransaction} |
Corpo della richiesta
Il corpo della richiesta contiene dati con la seguente struttura:
| Rappresentazione 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 ( |
| Campi | |
|---|---|
refundTime |
Obbligatorio. L'ora in cui la transazione è stata rimborsata. Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: |
| Obbligatorio. Tipo di rimborso della transazione esterna. Di seguito è riportato un elenco di campi che si escludono a vicenda. Al massimo uno dei campi verrà impostato in una risposta: | |
partialRefund |
Un rimborso parziale. |
fullRefund |
Un rimborso dell'intero importo. |
| Fine dei campi che si escludono a vicenda. | |
Corpo della risposta
In caso di esito positivo, il corpo della risposta contiene un'istanza di ExternalTransaction.
Esempio
Di seguito è riportato un esempio di richiesta:
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" \ }'
Di seguito è riportato un esempio di risposta:
{ "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" } } }
Ambiti di autorizzazione
Richiede il seguente ambito OAuth:
https://www.googleapis.com/auth/androidpublisher
PartialRefund
Un rimborso parziale di una transazione.
| Rappresentazione JSON |
|---|
{
"refundId": string,
"refundPreTaxAmount": {
object ( |
| Campi | |
|---|---|
refundId |
Obbligatorio. Un ID univoco che distingue questo rimborso parziale. Se il rimborso va a buon fine, i rimborsi successivi con lo stesso ID non andranno a buon fine. Deve essere univoco per i rimborsi di una singola transazione. |
refundPreTaxAmount |
Obbligatorio. L'importo al netto delle imposte del rimborso parziale. Deve essere inferiore all'importo al netto delle imposte rimanente della transazione. |
FullRefund
Questo tipo non ha campi.
Un rimborso completo dell'importo rimanente di una transazione.