Tutti gli articoli
Deep dive8 min di lettura

Ogni tipo di acquisto in-app viene rimborsato in modo diverso, e solo due di essi chiedono la tua versione

Consumabili, non consumabili, abbonamenti a rinnovo automatico e abbonamenti senza rinnovo vengono rimborsati secondo regole proprie. Alcuni possono essere ripristinati, altri svaniscono una volta spesi, e solo la richiesta del consumabile e la richiesta di abbonamento chiedono prove allo sviluppatore. Ecco come il tipo di acquisto in-app che vendi cambia ciò che un rimborso ti fa.

Una pila di monete, un lucchetto, un calendario e un biglietto in fila su una scrivania con luce calda, che illustrano come ogni tipo di acquisto in-app venga rimborsato in modo diverso

Punti chiave

  • Ci sono quattro tipi di acquisto in-app sull'App Store, consumabile, non consumabile, abbonamento a rinnovo automatico e abbonamento senza rinnovo, e ognuno viene rimborsato secondo regole diverse. Google Play organizza lo stesso catalogo in prodotti a pagamento singolo e abbonamenti.
  • Solo due flussi di Apple chiedono prove allo sviluppatore prima che un rimborso venga deciso, il CONSUMPTION_REQUEST del consumabile e, dalla WWDC24, il CONSUMPTION_REQUEST dell'abbonamento a rinnovo automatico. I non consumabili e gli abbonamenti senza rinnovo aprono raramente quella finestra.
  • I consumabili portano il maggior rischio di rimborso. Vengono spesi alla consegna, non possono essere ripristinati, e il loro valore è svanito prima che arrivi il rimborso, ed è esattamente per questo che Apple chiede i tuoi dati di consumo su di essi.
  • I non consumabili sono permanenti e ripristinabili, quindi un rimborso deve revocare un diritto che l'account del cliente ricorda ancora. Su Google Play, un acquisto che non confermi entro 72 ore viene rimborsato automaticamente e l'accesso viene ritirato.
  • Gli abbonamenti a rinnovo automatico vengono rimborsati su un orologio. Apple calcola quanto è stato consumato dal tempo trascorso, non da un numero che invii, quindi il tuo compito è un refundPreference onesto e le prove di utilizzo che lo sostengono.
  • Sull'App Store solo Apple può emettere un rimborso di un acquisto in-app. Su Google Play puoi rimborsare un ordine da solo dalla Play Console, il che rende il tipo di prodotto che hai venduto una tua decisione da assumere.
  • Qualunque sia il tipo, un rimborso restituisce la commissione dello store al cliente ma non restituisce mai la tua spesa. Il calcolo, le chiamate API, l'archiviazione e i pagamenti che un consumabile ha già attivato restano persi.

Il tipo di acquisto in-app che hai scelto in App Store Connect o nella Play Console decide più di come il prodotto viene venduto. Decide come si comporta un rimborso quando arriva, se il cliente può riavere l'articolo gratis dopo, e se ti viene mai chiesta la tua versione prima che il denaro si muova. Un pacchetto di monete, uno sblocco a vita, un abbonamento mensile e un pass stagionale una tantum sono quattro oggetti legali e tecnici diversi, e le regole di rimborso li trattano così. La maggior parte degli sviluppatori li pubblica tutti con lo stesso codice di acquisto e poi si chiede perché i rimborsi sembrano incoerenti. Non sono incoerenti. Sono specifici per tipo.

Ecco cos'è ogni tipo di acquisto in-app, come lo colpisce un rimborso, e perché solo due dei quattro instradano la decisione attraverso il tuo server.

I quattro tipi di acquisto in-app, e perché i rimborsi si dividono in base ad essi

Apple definisce quattro tipi di prodotto. Un consumabile viene esaurito e ricomprato: valuta di gioco, suggerimenti, una ricarica di energia. Un non consumabile viene comprato una volta e tenuto per sempre: uno sblocco pro, un upgrade senza pubblicità, un pacchetto di livelli scaricabile. Un abbonamento a rinnovo automatico viene addebitato su un ciclo ripetuto finché il cliente non annulla. Un abbonamento senza rinnovo concede l'accesso per un periodo fisso che non si rinnova da solo, come una stagione di contenuti venduta come un unico termine.

Google Play organizza lo stesso catalogo in modo diverso ma arriva allo stesso punto. Divide i prodotti in prodotti a pagamento singolo e abbonamenti, e un prodotto a pagamento singolo è contrassegnato come consumabile o meno a seconda che la tua app lo consumi dopo l'acquisto. Le parole differiscono. Le conseguenze del rimborso no.

Tipo di acquisto in-appRipristinabile dopo il rimborsoValore al momento del rimborsoApple chiede le tue prove?
ConsumabileNo, non può essere ripristinatoDi solito già spesoSì, CONSUMPTION_REQUEST
Non consumabileSì, legato all'accountAncora detenuto, diritto revocatoRaramente
Abbonamento a rinnovo automaticoSì, mentre è attivoCalcolato in proporzione al tempo trascorsoSì, dalla WWDC24
Abbonamento senza rinnovoLa tua app deve ripristinarloTermine parzialmente trascorsoRaramente

I consumabili sono il tipo che la frode sui rimborsi prende davvero di mira

Un consumabile è il caso di rimborso più difficile che affronterai, e non è un caso che sia quello attorno a cui Apple ha costruito la richiesta di consumo. Nel momento in cui un cliente compra 10,000 monete e il tuo server gliele concede, il valore è consegnato. Se spende quelle monete e poi presenta una richiesta di rimborso, lo store può restituirgli il denaro, ma le monete sono sparite e così pure ciò che ti è costato onorarle. Gli stessi strumenti di Apple lo riflettono: un consumabile lascia il record della transazione una volta completato e non porta mai una data di annullamento, perché non c'è nulla di persistente da annullare.

Ecco perché il consumabile è il tipo di prodotto in cui le prove pagano. Quando un cliente richiede un rimborso su un consumabile, Apple invia al tuo server un CONSUMPTION_REQUEST e attende fino a 12 ore una chiamata Send Consumption Information. In quella chiamata imposti un deliveryStatus e, quando hai consegnato, un consumptionPercentage. La percentuale è un intero in millesimi da 0 a 100,000, dove 100,000 significa che il cliente ha usato l'intero acquisto. Un saldo di monete che i tuoi registri mostrano completamente speso è un 100,000 che puoi segnalare, ed è il fatto più solido che puoi presentare di fronte a una contestazione di acquisto involontario.

I consumabili non possono essere ripristinati, quindi il tempismo è tutto

Poiché un consumabile non può essere ripristinato, non puoi recuperarlo come puoi revocare un abbonamento. Una volta concesso un rimborso, la tua unica protezione è il record che hai conservato al momento della vendita. Se non hai registrato la consegna e il consumo quando sono avvenuti, li stai ricostruendo sotto un orologio di 12 ore, che è il momento peggiore per mettersi a cercare i dati. Registralo in entrata, non in uscita.

Gli abbonamenti vengono rimborsati su un orologio che non controlli

Gli abbonamenti a rinnovo automatico sono dove la maggior parte delle app guadagna, e l'aggiornamento sui rimborsi della WWDC24 li ha finalmente instradati attraverso la stessa finestra di prove dei consumabili. Dalla versione 2.11 delle App Store Server Notifications, una richiesta di rimborso su un abbonamento a rinnovo automatico fa scattare anche un CONSUMPTION_REQUEST. Così i rimborsi di abbonamento che prima venivano decisi interamente senza di te ora arrivano con una finestra di 12 ore allegata.

Il trucco sta in come viene misurato il consumo. Per un abbonamento a rinnovo automatico, Apple non vuole che tu inventi una percentuale di utilizzo. Calcola il consumo dal tempo trascorso per conto suo, quindi qualcuno a sei mesi in un piano annuale risulta consumato circa a metà, qualunque cosa tu invii. La tua leva non è la percentuale. È un refundPreference onesto di GRANT_FULL, GRANT_PRORATED o DECLINE, sostenuto da qualunque segnale di utilizzo tu detenga davvero. Invia la preferenza che le prove sostengono e lascia che Apple la valuti.

Gli abbonamenti senza rinnovo stanno più vicino a uno sblocco una tantum

Un abbonamento senza rinnovo è un termine fisso che il cliente compra una volta, e si comporta più come un non consumabile che come un piano a rinnovo automatico ai fini del rimborso. Apple gli instrada raramente un CONSUMPTION_REQUEST, e non c'è alcun rinnovo automatico da calcolare in proporzione. La tua app è responsabile del tracciamento del termine e del suo ripristino sui dispositivi del cliente, quindi un rimborso significa terminare una finestra di accesso che gestivi tu stesso, non una che Apple cronometrava per te.

I non consumabili sono permanenti, il che taglia da entrambi i lati

Un non consumabile è la cosa più pulita da vendere e una trappola silenziosa al rimborso. Viene comprato una volta, è legato all'account dello store del cliente per sempre, e lo store può ripristinarlo su qualsiasi dispositivo su richiesta. Quella permanenza è un vantaggio finché non arriva un rimborso, perché ora devi revocare un diritto che l'account ricorda ancora. Se la tua logica di revoca controlla solo al momento dell'acquisto e non riverifica mai, un cliente rimborsato può ripristinare gli acquisti e rientrare dritto nella funzionalità a pagamento.

Google Play aggiunge qui un bordo tagliente che frega gli sviluppatori nuovi. Se la tua app non conferma un acquisto entro 72 ore, Google lo rimborsa automaticamente e revoca il diritto. Un non consumabile che il tuo codice di fatturazione ha dimenticato di confermare non resta nel limbo. Si annulla da solo, e il cliente perde l'accesso a qualcosa che ha pagato, senza averlo richiesto.

Uno smartphone che mostra una conferma di pagamento accanto a una piccola pila di monete con alcune spostate di lato, che illustra come ogni tipo di acquisto in-app venga rimborsato in modo diverso

Chi può addirittura emettere il rimborso cambia in base allo store e al tipo

Prima di pianificare qualsiasi risposta a un rimborso, sappi chi ha in mano la penna. Sull'App Store, solo Apple può emettere un rimborso di un acquisto in-app, per ogni tipo di prodotto. Il tuo codice StoreKit non può rimborsare un acquisto, e nemmeno il tuo supporto. Puoi inviare dati di consumo per influenzare la decisione di Apple sui due tipi che aprono una finestra, ed è tutto il tuo controllo diretto.

Google Play è l'opposto. Puoi rimborsare da solo un prodotto a pagamento singolo o un ordine di abbonamento dalla Play Console o dalle API Voided Purchases e di rimborso, in tutto o in parte. Quella libertà è anche una responsabilità: un rimborso che emetti su un consumabile deve comunque revocare l'articolo nel tuo backend, perché Google non sa che le tue monete sono spese. Il tipo di prodotto che hai scelto decide quanto è pulita quella revoca.

Cosa ti costa davvero ogni tipo di rimborso

Il prezzo rimborsato è la voce che tutti guardano e la parte più piccola del conto. Quando uno store concede un rimborso, annulla la propria commissione insieme ad esso, quindi perdi i tuoi proventi netti anziché il prezzo di listino intero. Questa è la buona notizia, e finisce qui. Ciò che lo store restituisce è la fetta che ha preso. Ciò che non restituisce mai è quanto hai già speso per evadere la vendita, e quel numero cambia bruscamente in base al tipo di prodotto.

Il consumabile è il rimborso costoso

Un consumabile rimborsato è quello che può costare più del suo prezzo. Diciamo che un cliente compri 5,000 crediti che ciascuno fa scattare una chiamata di inferenza a pagamento, ne spenda 4,000, poi presenti una richiesta di rimborso. Lo store restituisce il prezzo e la sua commissione, ma il calcolo, il conto API per token, le immagini che hai generato e qualsiasi pagamento ai creatori che quei crediti hanno finanziato sono tutti spesi. Un rimborso di non consumabile almeno riporta un diritto sotto il tuo controllo. Un rimborso di consumabile riporta indietro una vendita di cui hai già pagato l'intero costo.

Un chargeback è la versione più pesante dello stesso conto

Un rimborso e un chargeback sono eventi diversi, e ora il divario ha una data. Quando un cliente contesta l'addebito con la sua banca invece di chiederlo allo store, un chargeback completato è definitivo dal lato della banca. Per gli ordini di Google Play effettuati il 3 agosto 2026 o dopo, un chargeback perso addebita allo sviluppatore il prezzo di acquisto meno la commissione di servizio di Play, più la commissione di chargeback della banca, un addebito fisso che il circuito delle carte stabilisce. Google Play ti instrada un chargeback per la revisione tramite orders.reviewrefund con una finestra di 24 ore, l'unico flusso di Google che chiede le tue prove, e può ricadere su qualsiasi tipo di prodotto.

Come rispondere quando il tipo decide le regole

Non puoi cambiare su quale tipo di prodotto ricade un rimborso dopo la vendita, ma puoi smettere di trattare tutti e quattro allo stesso modo.

  • Registra la consegna e il consumo dei consumabili nel momento in cui avvengono. Quel registro è tutta la tua difesa sull'unico tipo che non può essere ripristinato, e la finestra di 12 ore è troppo breve per costruirlo da zero.
  • Riverifica i diritti dei non consumabili dopo un rimborso, non solo all'acquisto. Una chiamata di ripristino dovrebbe controllare lo stato attuale, così un cliente rimborsato non può rientrare nella funzionalità a pagamento.
  • Rispondi a entrambe le finestre di prove automaticamente. Una richiesta di consumo di 12 ore e una revisione di chargeback di 24 ore non possono aspettare che qualcuno legga una casella di posta, e non si estendono per i fusi orari.
  • Giudica la tua difesa sui rimborsi solo sui due tipi contestabili. Un numero crescente di rimborsi su tipi che non hanno mai aperto una finestra è un segnale di prodotto o di prezzo, non un fallimento delle tue prove.

Niente di tutto questo riguarda il battere lo store. Riguarda l'adattare la tua risposta all'oggetto che è stato effettivamente venduto. RefundHalt risponde al CONSUMPTION_REQUEST del consumabile e dell'abbonamento e alla revisione orders.reviewrefund di Google Play automaticamente, entro la finestra, con le prove di consegna e utilizzo che hai registrato al momento della vendita, e conserva i rimborsi che nessuna finestra ti ha mai lasciato contestare nel proprio registro, così il numero con cui giudichi te stesso resta onesto.

Domande frequenti

Posso rimborsare un acquisto in-app da solo?
Dipende dallo store. Sull'App Store, solo Apple può emettere un rimborso di un acquisto in-app, per ogni tipo di prodotto, quindi la tua unica influenza sono i dati di consumo che invii sui due flussi che li chiedono. Su Google Play puoi rimborsare da solo un prodotto a pagamento singolo o un ordine di abbonamento dalla Play Console o dalle API di rimborso, in tutto o in parte.
Quale tipo di acquisto in-app ha il rischio di rimborso più alto?
I consumabili. Un consumabile viene speso alla consegna, non può essere ripristinato, e il suo valore di solito è già svanito prima che arrivi la richiesta di rimborso. È esattamente per questo che Apple invia un CONSUMPTION_REQUEST per i consumabili e chiede i tuoi dati di consumo, e per cui il costo di calcolo o di API dietro un consumabile può far costare il suo rimborso più della vendita.
Apple invia una richiesta di consumo per ogni tipo di acquisto?
No. Apple invia un CONSUMPTION_REQUEST per i consumabili e, dall'aggiornamento della WWDC24, per gli abbonamenti a rinnovo automatico. I non consumabili e gli abbonamenti senza rinnovo aprono raramente quella finestra di prove. Per ogni tipo, il rimborso in sé è ancora deciso da Apple, non da te.
Un cliente può ripristinare un consumabile dopo un rimborso?
No. I consumabili non possono essere ripristinati, il che rende i loro rimborsi definitivi per te. I non consumabili e gli abbonamenti attivi sono legati all'account dello store del cliente e possono essere ripristinati, quindi un rimborso su quelli deve revocare un diritto che il tuo backend dovrebbe riverificare invece di fidarsi del momento dell'acquisto.
Come vengono calcolati diversamente i rimborsi degli abbonamenti?
Per un abbonamento a rinnovo automatico, Apple calcola quanto è stato consumato dal tempo trascorso invece che da una percentuale che invii, quindi metà termine risulta consumato circa a metà. Il tuo ruolo è un refundPreference onesto di GRANT_FULL, GRANT_PRORATED o DECLINE, sostenuto dalle prove di utilizzo che detieni, non un numero di consumo inventato.

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.