Puoi rimborsare tu stesso un ordine di Google Play, e farlo prima di uno storno ti fa risparmiare la commissione bancaria
Puoi rimborsare qualsiasi ordine di Google Play più recente di tre anni con una singola chiamata API, con o senza revocare l'accesso. Farlo tu stesso prima che una contestazione diventi uno storno ti fa risparmiare la commissione bancaria che ricade sugli sviluppatori dal 3 agosto 2026. Ecco come funziona orders.refund.

Punti chiave
- L'endpoint `orders.refund` della Google Play Developer API consente a uno sviluppatore di rimborsare direttamente qualsiasi acquisto una tantum o ordine di abbonamento, senza revisione, senza motivo richiesto e senza bisogno di una richiesta del cliente.
- Un rimborso e una revoca sono azioni distinte. `orders.refund` accetta un flag opzionale `revoke`. Lascialo disattivato e l'acquirente mantiene l'accesso, impostalo su true e Google termina immediatamente l'accesso all'elemento.
- Gli ordini più vecchi di tre anni non possono essere rimborsati tramite la Google Play Developer API. Una volta chiusa quella finestra, l'ordine è permanentemente fuori portata.
- `orders.refund` emette solo rimborsi completi. Un rimborso parziale e proporzionale su un abbonamento richiede il più recente endpoint `purchases.subscriptionsv2.revoke` con un contesto `proratedRefund`.
- Rimborsare un ordine di abbonamento con `revoke` impostato su true attiva una Real-time Developer Notification `SUBSCRIPTION_REVOKED`, così il tuo backend viene a conoscenza della revoca nello stesso modo in cui viene a conoscenza di qualsiasi altro evento di abbonamento.
- Dal 3 agosto 2026, Google addebita allo sviluppatore il prezzo di acquisto più le commissioni bancarie di uno storno. Un rimborso che emetti tu stesso restituisce solo il prezzo di acquisto, quindi rimborsare presto un ordine incerto può costare meno che lasciarlo diventare uno storno.
- Un rimborso avviato dallo sviluppatore è l'unico flusso di rimborso di Google Play che controlli completamente. Il rimborso self-service di 48 ore, i rimborsi dell'assistenza e gli acquisti annullati vengono tutti decisi senza di te.
Non devi aspettare che un cliente apra una contestazione. Se vuoi restituire il denaro, puoi rimborsare tu stesso un ordine di Google Play, direttamente, con una singola chiamata API o due clic in Play Console. Google non ti chiederà perché, e non metterà in dubbio la tua scelta. Questo è l'unico flusso di rimborso in cui tieni tu il pulsante, e usarlo presto, prima che una contestazione si indurisca in uno storno bancario, è spesso la via d'uscita più economica.
L'unico flusso di rimborso che controlli davvero
La maggior parte dei rimborsi su Google Play accade a te, non passa attraverso di te. Un acquirente che chiede a Google entro 48 ore ottiene un rimborso self-service automatico senza alcun intervento dello sviluppatore. Un agente dell'assistenza può concederne uno che è definitivo nel momento in cui viene emesso. Uno storno bancario viene deciso tra il titolare della carta e la sua banca. In tutti questi casi, sei uno spettatore che lo scopre dopo.
Il rimborso dello sviluppatore è l'eccezione. Qui sei tu a decidere di restituire il denaro, secondo i tuoi tempi, per i tuoi motivi. È uno strumento di buona volontà, uno strumento di assistenza clienti e, in modo discreto, uno strumento di controllo dei costi. Sapere esattamente come si comporta è ciò che lo trasforma da pulsante di emergenza in una scelta deliberata.
Cosa fa orders.refund, in una sola chiamata
Il metodo orders.refund della Google Play Developer API rimborsa un singolo ordine, che si tratti di un acquisto una tantum nell'app o di un pagamento di abbonamento. Invii un POST vuoto al percorso di rimborso dell'ordine, autenticato con il tuo account di servizio, e una chiamata riuscita restituisce un corpo vuoto. Questo è l'intero meccanismo.
Il flag revoke decide se mantengono l'accesso
L'unica scelta che la chiamata ti offre è il flag di query revoke. Il riferimento di Google è netto su cosa fa: se impostato su true, l'accesso all'abbonamento o all'elemento nell'app verrà terminato immediatamente. Omettilo e il denaro torna indietro mentre il cliente conserva ciò che ha acquistato. Quel singolo booleano è la differenza tra un rimborso amichevole e una cancellazione netta.
| Parte della chiamata | Valore |
|---|---|
| Metodo e percorso | POST /androidpublisher/v3/applications/{packageName}/orders/{orderId}:refund |
packageName | L'id della tua app, per esempio com.acme.app |
orderId | L'id dell'ordine mostrato all'acquirente al momento dell'acquisto |
revoke | Flag di query opzionale. true termina l'accesso immediatamente, omettilo per rimborsare e lasciare l'accesso intatto |
| Corpo della richiesta | Vuoto |
| Ambito OAuth | https://www.googleapis.com/auth/androidpublisher |
Rimborso completo per impostazione predefinita, proporzionale solo per gli abbonamenti
orders.refund restituisce l'intero valore dell'ordine. Non ha alcun campo per un importo parziale. Se devi restituire parte di un abbonamento, ricorri al più recente endpoint purchases.subscriptionsv2.revoke, che accetta un contesto di revoca e può emettere un rimborso completo oppure uno proporzionale in base al tempo rimanente nel periodo. Il vecchio purchases.subscriptions.revoke faceva solo rimborsi completi, ed è questo il motivo principale per cui esiste il metodo v2. Per gli ordini una tantum, i rimborsi parziali sono disponibili tramite il sito Play Console per gli acquisti effettuati dopo marzo 2018, e mai per le app a pagamento.

Il muro dei tre anni e altri limiti
Il confine rigido è l'età. Google afferma chiaramente che gli ordini più vecchi di tre anni non possono essere rimborsati. Non c'è appello né deroga una volta che un ordine supera quella linea, quindi un rimborso è una decisione con una data di scadenza. Una manciata di altri limiti definisce ciò che la chiamata può e non può fare.
| Limite | Cosa significa |
|---|---|
| Tetto di età di tre anni | Gli ordini più vecchi di tre anni non possono essere rimborsati tramite l'API |
| Solo importo completo | orders.refund restituisce l'intero valore dell'ordine, mai un importo parziale |
| Rimborsi parziali | Disponibili per gli abbonamenti tramite purchases.subscriptionsv2.revoke, o tramite Play Console per gli ordini una tantum effettuati dopo marzo 2018, mai per le app a pagamento |
| Non reversibile | Una volta emesso, un rimborso non può essere annullato |
Cosa ti fa risparmiare in denaro
Ogni rimborso è già una perdita prima ancora che tu tocchi il pulsante, perché il denaro che hai speso per servire quell'acquisto non torna indietro con esso. Se l'acquirente ha generato immagini, eseguito chiamate API contro i tuoi modelli, consumato spazio di archiviazione o attivato un pagamento a terzi, quei costi sono spesi e restano spesi. Il rimborso decide solo chi trattiene il prezzo di vendita oltre a questo.
Il motivo per ricorrere tu stesso a un rimborso è ciò che accade se non lo fai. La documentazione di Google è esplicita: dal 3 agosto 2026, quando un cliente contesta un addebito presso la sua banca, Google trasferisce il prezzo di acquisto e la commissione di storno della banca allo sviluppatore. Un rimborso che emetti tramite orders.refund restituisce solo il prezzo di acquisto. Quindi, per un ordine che ti aspetti già di perdere, un rimborso emesso da te costa meno dello storno esattamente della commissione bancaria, e chiude il caso prima che possa aggravarsi.
Dove si colloca un rimborso volontario tra gli altri flussi di rimborso
Aiuta vedere il rimborso dello sviluppatore accanto a tutto il resto che può ritirare denaro dal tuo account. Solo due di questi flussi chiedono mai il tuo intervento, e solo uno di essi ti lascia avviare tu stesso il rimborso.
| Flusso di rimborso | Chi decide | Il tuo controllo |
|---|---|---|
Rimborso dello sviluppatore (orders.refund) | Tu | Totale. Scegli tu se e quando |
| Rimborso self-service di 48 ore | Nessuno. Google rimborsa automaticamente | |
| Rimborso dell'agente dell'assistenza | Assistenza di Google o Apple | Nessuno. Definitivo una volta concesso |
Revisione dello storno (orders.reviewrefund) | Google, usando le tue prove | Solo una finestra di intervento di 24 ore |
| Voided Purchases API | Nessuno, è in sola lettura | Nessuno. Leggi solo ciò che è già accaduto |
Come rimborsare un ordine di Google Play, dall'inizio alla fine
Da Play Console
- Apri Play Console e seleziona Gestione degli ordini nel menu a sinistra.
- Trova l'ordine tramite il suo id ordine o l'indirizzo email completo dell'acquirente.
- Sotto il prezzo, scegli Rimborsa e seleziona un motivo di rimborso. Usa il sito web, non l'app mobile, se hai bisogno di un rimborso parziale.
Dall'API
- Autentica un account di servizio che detiene l'ambito
androidpublishere le autorizzazioni finanziarie in Play Console. - Invia un POST vuoto al percorso di rimborso dell'ordine, aggiungendo
revoke=truesolo se vuoi anche tagliare l'accesso. - Gestisci la risposta di successo vuota e, se hai revocato un abbonamento, aspettati che una notifica
SUBSCRIPTION_REVOKEDraggiunga il tuo backend.
Un rimborso dello sviluppatore è uno strumento piccolo e preciso. Ti dà un modo pulito per risarcire un cliente, e una via d'uscita più economica di uno storno su un ordine che avresti perso comunque. L'unica regola è usarlo di proposito, con il flag revoke impostato esattamente come intendi davvero.
Domande frequenti
- Posso rimborsare un ordine di Google Play senza annullare l'accesso del cliente?
- Sì. Chiama `orders.refund` e lascia disattivato il flag `revoke`. L'acquirente riceve indietro il suo denaro e mantiene l'accesso all'elemento. Imposta `revoke` su true solo quando vuoi anche terminare immediatamente l'accesso all'acquisto.
- Fino a quanto tempo indietro posso rimborsare un ordine su Google Play?
- Fino a tre anni dalla data di acquisto. La Google Play Developer API stabilisce che gli ordini più vecchi di tre anni non possono essere rimborsati, e non c'è alcuna deroga una volta chiusa quella finestra.
- orders.refund supporta i rimborsi parziali?
- No. `orders.refund` emette solo l'importo completo dell'ordine. Per un rimborso parziale o proporzionale su un abbonamento, usa `purchases.subscriptionsv2.revoke` con un contesto `proratedRefund`, oppure emetti un rimborso parziale tramite Play Console per gli ordini una tantum idonei.
- Il mio backend verrà a sapere quando revoco un abbonamento con un rimborso?
- Sì. Rimborsare un ordine di abbonamento con `revoke` impostato su true attiva una Real-time Developer Notification `SUBSCRIPTION_REVOKED`, così il tuo server può aggiornare il diritto di accesso nello stesso modo in cui gestisce qualsiasi altro evento di abbonamento.
- È meglio rimborsare io stesso un ordine che lasciarlo diventare uno storno?
- Spesso, in puri termini di costo. Dal 3 agosto 2026 uno storno costa allo sviluppatore il prezzo di acquisto più la commissione bancaria, mentre un rimborso che emetti restituisce solo il prezzo di acquisto. Se un ordine si sta chiaramente dirigendo verso una contestazione, rimborsarlo presto evita la commissione bancaria aggiuntiva.
Fonti e approfondimenti
- Google Play Developer API: Method orders.refund
- Android Developers: Manage subscriptions and one-time purchases
- Play Console Help: Manage your app's orders and issue refunds
- Google Play Developer API: Method purchases.subscriptionsv2.revoke
- Google Play Console Help: refund protection and chargeback cost responsibility
- Google Play Help: Learn about Google Play refund policies
RefundHalt
Il pilota automatico dei rimborsi per App Store e Google Play
Continua a leggere
Il Send Consumption Information di Apple ora chiede cinque campi, non dodici, ed ecco ciascuno di essi
Quando un cliente chiede un rimborso ad Apple, il payload di Send Consumption Information è la tua risposta. Apple lo ha ridotto da dodici campi a cinque, tre obbligatori e due facoltativi. Ecco ogni campo, i valori che ciascuno accetta e la finestra di 12 ore entro cui inviarlo.
Esiste un endpoint che restituisce l'intera cronologia dei rimborsi App Store di un cliente, ed ecco cosa restituisce
L'endpoint Get Refund History di Apple restituisce la cronologia completa dei rimborsi App Store di un cliente come transazioni firmate. Ecco ogni campo, come il token revision pagina, perché funziona per cliente e non per app, e quanto ti costa un rimborso che ti sfugge.