Tutti gli articoli
Deep dive8 min di lettura

Un rimborso di non consumabile è quello raro che puoi davvero annullare, quindi uno sblocco a vita ti costa il prezzo e nient'altro

Un rimborso di non consumabile, su uno sblocco a vita, un upgrade senza pubblicità o un livello pro permanente, è l'unico rimborso che puoi annullare davvero, perché puoi riprenderti la funzionalità. Ecco quanto costa sull'App Store e su Google Play, perché Apple non ti chiede mai prima, e come far valere revoke.

Un lucchetto di ottone aperto accanto a una ricevuta e a una sola chiave, che illustra un rimborso di non consumabile in cui lo sviluppatore si riprende la funzionalità sbloccata

Punti chiave

  • Un non consumabile è un acquisto una tantum che il cliente tiene per sempre, una rimozione della pubblicità, uno sblocco pro a vita, una funzionalità permanente. A differenza di un consumabile, nulla viene speso alla consegna, quindi un rimborso di non consumabile è l'unico rimborso in cui puoi restituire i soldi e riprenderti la funzionalità allo stesso tempo.
  • Questo fa del rimborso di non consumabile la perdita più netta che affronterai. Perdi il prezzo di vendita e lo store annulla la propria commissione, ma non c'è calcolo, né chiamata API, né un output consegnato che hai pagato e non puoi recuperare. La perdita è limitata al prezzo.
  • Il problema è il prezzo. Uno sblocco a vita di solito è il tuo prodotto dal prezzo unitario più alto, spesso da dieci a trenta volte un abbonamento mensile, quindi un rimborso di non consumabile è un colpo singolo più grande di quasi ogni altro rimborso del tuo account.
  • Sull'App Store, Apple decide da sola ogni rimborso di non consumabile tramite reportaproblem.apple.com, e non esiste un CONSUMPTION_REQUEST per i non consumabili. Apple invia quella richiesta di prove solo per i consumabili e gli abbonamenti a rinnovo automatico, quindi su un non consumabile non hai alcuna finestra per argomentare né alcun canale di prove.
  • Apple ti avvisa comunque che è successo. Una App Store Server Notification di tipo REFUND scatta per consumabili, non consumabili e abbonamenti non rinnovabili, e la transazione firmata porta un revocationDate e un revocationReason. StoreKit rimuove inoltre il prodotto da Transaction.currentEntitlements, che è il tuo segnale per spegnere la funzionalità.
  • Su Google Play puoi rimborsare tu stesso un non consumabile dalla Play Console o dall'API orders.refund, e passare revoke a true termina l'accesso immediatamente. Il rimborso self-service di 48 ore di Google gira senza chiederti nulla, e un acquisto una tantum non confermato viene rimborsato e revocato automaticamente dopo 3 giorni.
  • La trappola è controllare l'accesso sul client. Se un non consumabile rimborsato è ancora contrassegnato come posseduto in una ricevuta in cache o in un flag solo lato client, il cliente tiene la funzionalità dopo che i soldi se ne sono andati, quindi perdi il prezzo e continui a servire lo sblocco. Verifica il diritto sul tuo server rispetto alla revoca, a ogni avvio.

Vendi uno sblocco a vita, un upgrade senza pubblicità o un livello pro permanente, e stai vendendo un non consumabile, l'unico acquisto in cui un rimborso può davvero annullare ciò che hai dato. Un rimborso di consumabile riprende soldi che hai già speso per consegnare monete o crediti. Un rimborso di abbonamento annulla un accesso che stavi comunque affittando. Un rimborso di non consumabile è diverso, e in un senso stretto è il rimborso più clemente che riceverai: il cliente non tiene nulla. Restituisci il prezzo, ti riprendi la funzionalità, e a differenza di un consumabile non resta alcuna fattura di calcolo dalla tua parte del libro mastro. Questa è la buona notizia. La cattiva è che un non consumabile di solito è la cosa più costosa che vendi, quindi l'unico rimborso che puoi annullare in modo pulito è anche uno dei più grandi.

Cos'è un non consumabile, e perché il suo rimborso si comporta in modo diverso

Lo store classifica ogni acquisto in un tipo, e il tipo decide cosa un rimborso può e non può annullare. Un non consumabile si trova all'estremo opposto rispetto a un consumabile.

Un non consumabile si compra una volta e si tiene per sempre

Un acquisto in-app non consumabile è un diritto permanente. Il cliente lo compra una volta e lo possiede per tutta la vita dell'account: una rimozione della pubblicità, un livello pro a vita, uno sblocco della versione completa, un pacchetto di funzionalità permanente. Apple lo ripristina gratuitamente sui dispositivi del cliente, e Google Play lo lega all'account. Non c'è rinnovo né scadenza, quindi il valore non viene distribuito nel tempo e non viene consumato al riscatto. Si accende e basta e resta acceso.

Nulla viene speso alla consegna, quindi un rimborso può annullarlo in modo pulito

Questo è l'intero motivo per cui un rimborso di non consumabile è diverso. Quando consegni un pacchetto di monete, le monete vengono spese e la tua fattura di calcolo è reale e persa. Quando consegni un non consumabile, cambi un flag. Non c'è un costo per utilizzo legato alla vendita, quindi quando i soldi vengono annullati puoi rimettere il flag com'era ed essere quasi intero. Lo store aiuta persino: su entrambe le piattaforme un non consumabile rimborsato viene revocato, il cliente perde l'accesso, e non può ricomprarlo e rimborsarlo una seconda volta.

Quanto ti costa davvero un rimborso di non consumabile

Il numero che compare nei tuoi report è il prezzo di vendita che esce di nuovo. Su un non consumabile, quel numero è quasi tutta la storia, che è esattamente ciò che lo distingue da un consumabile, dove il prezzo di vendita è solo l'inizio della perdita.

CostoQuando lo paghiTorna con un rimborso
Il prezzo di acquistoAll'acquistoNo, l'intero importo viene restituito al cliente
La commissione dello store sulla venditaAll'acquistoDi solito sì, lo store annulla la propria quota
Calcolo o chiamate API per consegnare lo sbloccoNon ce n'è, cambi un flagNulla da recuperare, nulla di perso
La funzionalità stessaHai concesso l'accessoSì, revoke la riprende
Una commissione di storno bancario, se la contestazione va in bancaDopo l'addebitoNo, e su Google Play ora la paghi anche tu

La perdita è il prezzo, e il prezzo è il problema

Poiché non c'è un costo di adempimento da lasciare arenato, un rimborso di non consumabile ti costa il prezzo di vendita e poco altro. Il guaio è la scala. Un rimborso di abbonamento mensile restituisce pochi dollari. Uno sblocco a vita viene spesso prezzato a 30, 60 o 120 dollari proprio perché il cliente paga una volta sola, quindi un singolo rimborso di non consumabile può equivalere a un anno di ricavi da abbonamento di un altro utente. Ne vedrai molti meno dei rimborsi di abbonamento, ma ognuno pesa di più, e un piccolo gruppo di rimborsi a vita può contare più di un mese intenso di abbandono ordinario.

Due mani che restituiscono una piccola chiave di ottone sul tavolo mentre il denaro scivola nella direzione opposta, che illustra un rimborso di non consumabile in cui la funzionalità viene ripresa e il prezzo restituito

Il lato App Store, dove Apple non ti chiede mai prima

Sull'App Store non hai un interruttore di rimborso, e per un non consumabile non hai nemmeno un canale di prove. Vale la pena essere precisi su entrambe le cose, perché la seconda sorprende gli sviluppatori che davano per scontato che il flusso di consumo coprisse tutto.

Non esiste un CONSUMPTION_REQUEST per un non consumabile

Apple decide da sola ogni rimborso, una richiesta alla volta, tramite reportaproblem.apple.com. Per un consumabile, e dal 2024 per un abbonamento a rinnovo automatico, Apple invia al tuo server un CONSUMPTION_REQUEST e ti dà 12 ore per restituire informazioni sul consumo. Un non consumabile non riceve nulla di tutto ciò. Non c'è richiesta di consumo, né finestra di 12 ore, né campo da compilare, perché Apple tratta uno sblocco permanente come posseduto o no, senza nulla da misurare. Su un rimborso di non consumabile non hai voce in capitolo. Hai un avviso.

La notifica REFUND è come scopri che è successo

Quello che ottieni è una App Store Server Notification di tipo REFUND. Apple la invia per consumabili, non consumabili e abbonamenti non rinnovabili, e la transazione firmata al suo interno porta un revocationDate, il timestamp del rimborso, e un revocationReason. StoreKit fa emergere lo stesso fatto sul dispositivo: il prodotto rimborsato esce da Transaction.currentEntitlements, e StoreKit chiama il tuo gestore di revoca dei diritti così l'app può spegnere la funzionalità. Tratta la notifica come l'attivatore e il controllo del diritto come la fonte di verità. Quando revocationDate è impostato, lo sblocco è finito.

Il lato Google Play, dove puoi rimborsare ma la via veloce ti salta

Google Play dà allo sviluppatore più controllo diretto rispetto ad Apple, anche se i rimborsi che fanno più male accadono comunque senza di te.

Puoi rimborsare e revocare tu stesso un non consumabile

Puoi emettere un rimborso di non consumabile dalla Play Console, o con il metodo orders.refund nella Play Developer API, su qualsiasi ordine di meno di tre anni. Quella chiamata accetta un parametro revoke, e impostarlo a true termina l'accesso all'elemento in-app immediatamente. Google Play tratta quindi il cliente come se non possedesse più il prodotto, disinstalla un'app rimborsata, e blocca un ciclo di riacquisto e rimborso sullo stesso elemento. Questo è l'unico posto in cui hai una leva pulita: rimborso più revoke riprende davvero uno sblocco permanente.

Le vie da 48 ore e da 3 giorni girano senza di te

Due rimborsi di Google Play su un non consumabile accadono senza alcun input da parte tua. Entro 48 ore dall'acquisto, un cliente può ottenere un rimborso self-service direttamente dallo store, e a te non viene chiesto nulla. Separatamente, se il tuo server non conferma mai l'acquisto entro 3 giorni, Google Play lo rimborsa e lo revoca automaticamente, presumendo che il cliente abbia pagato e non abbia mai ricevuto i beni. Entrambi vengono decisi prima che tu dica la tua, e la Voided Purchases API è come lo scopri a posteriori così da poter rimuovere il diritto.

Cosa significa in denaro quando un non consumabile diventa uno storno

Un rimborso è la versione economica della perdita di una vendita di non consumabile. Uno storno è la versione costosa, e su un prezzo a vita il divario è ampio.

La via della contestazione costa di più e restituisce di meno

Quando un cliente si rivolge alla propria banca invece che allo store, la vendita torna come uno storno, e uno storno è definitivo. Sull'App Store non hai una finestra di consumo per difendere un non consumabile, quindi non c'è nulla da inviare. Su Google Play, dal 3 agosto 2026, uno storno sposta il prezzo di acquisto meno la commissione di servizio di Play, più la commissione di storno della banca, sullo sviluppatore, mentre Google continua a coprire la propria commissione di servizio. Su uno sblocco a vita da 90 dollari, questo trasforma un rimborso pulito che avresti potuto assorbire in una perdita più grande e definitiva con una commissione bancaria appiccicata sopra.

Tieni il cliente scontento nella corsia del rimborso

La lezione è la stessa verso cui ogni store ti spinge: un rimborso annulla la vendita e di solito restituisce la commissione, uno storno non fa nessuna delle due e aggiunge una commissione. Un cliente che può ottenere un rimborso semplice raramente chiama la banca. Su Google Play puoi rispondere a una revisione di storno tramite orders.reviewrefund entro 24 ore, e Google offre una Review Refund API per condividere i dettagli della transazione così da poter contestare le controversie fraudolente per tuo conto. Usala, ma non farci affidamento. La mossa più economica è rendere facile il rimborso onesto prima ancora che la contestazione inizi.

Come perdere meno sui rimborsi di non consumabili

Non puoi impedire a uno store di rimborsare uno sblocco permanente. Puoi assicurarti che quando lo fa, tu ti riprenda davvero la funzionalità e riesca a vedere lo schema.

Verifica il diritto sul server, a ogni avvio

Decidi l'accesso da un controllo lato server rispetto allo stato attuale della transazione, non da una ricevuta in cache né da un flag client scritto una volta all'acquisto. Quando arriva una notifica REFUND, o il diritto scompare, o revoke è impostato su Google Play, spegni la funzionalità dalla tua parte. Un non consumabile rimborsato che funziona ancora è l'unico caso in cui il rimborso più pulito diventa una perdita pura.

Osserva i prodotti a vita e una tantum come una coorte a sé

Poiché i rimborsi di non consumabili sono rari ma grandi, svaniscono dentro un tasso di rimborso mescolato. Tienili tracciati a parte, per prodotto. Un gruppo su un livello a vita di solito indica qualcosa di specifico: un prezzo che ha superato il valore, una funzionalità che si è rotta dopo un aggiornamento, o una scheda dello store che prometteva più di quanto lo sblocco offra. Leggi i rimborsi di non consumabili rispetto alle vendite di non consumabili e la causa di solito è facile da nominare.

Conferma in fretta, e onora in modo pulito i rimborsi legittimi

Conferma ogni acquisto in tempo così da non innescare mai un rimborso automatico di 3 giorni per sbaglio, e quando un rimborso è genuino, riprenditi la funzionalità senza attriti invece di lasciare che un cliente inasprito si rivolga alla propria banca. Il rimborso è la perdita più piccola. Lo storno è quello che porta la commissione.

La versione breve

Un rimborso di non consumabile è il raro rimborso che puoi davvero annullare, perché uno sblocco permanente non ti costa nulla da consegnare e può essere ripreso direttamente. Perdi il prezzo, lo store annulla la propria quota, e non c'è una fattura di calcolo arenata come su un consumabile. La complicazione è che uno sblocco a vita di solito è il tuo prodotto più costoso, quindi ogni rimborso è un grosso colpo singolo, Apple lo decide da sola senza richiesta di consumo a cui rispondere, e Google Play lo rimborserà senza di te entro 48 ore o al traguardo di conferma dei 3 giorni. Verifica il diritto sul tuo server, revoca in modo pulito, conferma in fretta, e tieni il cliente scontento nella corsia del rimborso invece che in quella dello storno.

Domande frequenti

Posso rimborsare io stesso un acquisto in-app non consumabile?
Su Google Play, sì. Puoi rimborsare un non consumabile dalla Play Console o dall'API orders.refund su qualsiasi ordine di meno di tre anni, e impostare il parametro revoke a true termina l'accesso immediatamente. Sull'App Store, no. Apple decide ogni rimborso tramite reportaproblem.apple.com, e per un non consumabile non c'è un CONSUMPTION_REQUEST, quindi non hai alcuna finestra di prove.
Apple invia un CONSUMPTION_REQUEST per un rimborso di non consumabile?
No. Apple invia un CONSUMPTION_REQUEST solo per i consumabili e, dal 2024, gli abbonamenti a rinnovo automatico. Un non consumabile non riceve né richiesta di consumo né finestra di 12 ore, perché Apple tratta uno sblocco permanente come semplicemente posseduto o no. Scopri il rimborso tramite la App Store Server Notification di tipo REFUND e il revocationDate sulla transazione, non tramite una richiesta a cui rispondere.
Come faccio a sapere che il non consumabile di un cliente è stato rimborsato?
Sull'App Store, una notifica REFUND scatta e la transazione firmata porta un revocationDate e un revocationReason, mentre StoreKit rimuove il prodotto da Transaction.currentEntitlements. Su Google Play, la Voided Purchases API lo segnala e le notifiche in tempo reale contrassegnano l'annullamento. In entrambi i casi, controlla il diritto sul tuo server e spegni la funzionalità quando l'acquisto viene revocato.
Recupero i miei soldi in modo pulito con un rimborso di non consumabile?
In modo più pulito di qualsiasi altro tipo di rimborso. Il prezzo di acquisto viene restituito al cliente e lo store di solito rende la propria commissione, ma poiché un non consumabile non costa nulla da consegnare, non c'è una fattura di calcolo o di API arenata dalla tua parte come con un consumabile. La tua perdita è essenzialmente il prezzo di vendita, a patto che tu revochi davvero la funzionalità.
Cosa succede se non confermo un acquisto di non consumabile su Google Play?
Google Play rimborsa e revoca automaticamente l'acquisto se non lo confermi entro 3 giorni, presumendo che il cliente abbia pagato e non abbia mai ricevuto l'elemento. Chiama purchases.products.acknowledge dal tuo server appena verifichi l'acquisto così da non innescare mai un rimborso che non intendevi.

Fonti e approfondimenti

RefundHalt

Il pilota automatico dei rimborsi per App Store e Google Play

Continua a leggere

La prossima richiesta di rimborso è già in arrivo.

Configura RefundHalt nel tempo che impiegheresti a leggere un'altra e-mail dell'assistenza su un rimborso che non sei riuscito a contestare.