Tutti gli articoli
Playbook7 min di lettura

Un cliente addebitato due volte per lo stesso abbonamento di solito ha pagato su due piattaforme, e solo uno di quei rimborsi spetta a te

Quando un cliente viene addebitato due volte per lo stesso abbonamento, di solito si tratta di un piano acquistato sull'App Store e di un altro su Google Play o sul tuo sito. Ecco chi può rimborsare ciascun lato, quanto ti costa e come fermare il secondo addebito.

Un iPhone e un telefono Android affiancati su una scrivania accanto a un estratto conto con due addebiti identici, che mostrano un cliente addebitato due volte per lo stesso abbonamento

Punti chiave

  • Un cliente addebitato due volte per lo stesso abbonamento di solito l'ha acquistato in due store diversi, come l'App Store e Google Play, e ogni store addebita e rimborsa il proprio acquisto in modo indipendente.
  • Gli sviluppatori non possono rimborsare gli acquisti dell'App Store. Decide Apple, tramite reportaproblem.apple.com o tramite la schermata di rimborso che un'app può aprire con beginRefundRequest di StoreKit, e Apple dichiara di impiegare fino a 48 ore per approvare o respingere la richiesta.
  • Su Google Play, lo sviluppatore può rimborsare un ordine da Order management in Play Console o tramite l'API orders.refund, che non può rimborsare ordini più vecchi di 3 anni.
  • Rimborsare l'ordine più recente di un abbonamento Google Play rimuove subito l'abbonamento e annulla i rinnovi futuri. Rimborsare un ordine precedente lascia l'abbonamento attivo.
  • Apple invia un CONSUMPTION_REQUEST per le richieste di rimborso su qualsiasi tipo di prodotto, compresi gli abbonamenti a rinnovo automatico, e lo sviluppatore ha 12 ore per rispondere con Send Consumption Information se il cliente ha dato il consenso.
  • Per gli ordini Google Play effettuati dopo il 3 agosto 2026, un chargeback costa allo sviluppatore il prezzo di acquisto, meno la commissione di servizio di Play, più la commissione di chargeback della banca.
  • Impostare un appAccountToken sugli acquisti Apple e un ID account offuscato sugli acquisti Google Play permette al tuo server di riconoscere un unico cliente dietro due abbonamenti prima che arrivi il secondo addebito.

Nulla nei sistemi di fatturazione di Apple o di Google impedisce a una persona di pagare entrambi per il tuo abbonamento nello stesso mese. Quando un cliente viene addebitato due volte per lo stesso abbonamento, è quasi sempre andata così. Si è abbonato su un iPhone, poi di nuovo su un tablet Android o sul tuo sito, e la tua app non ha riconosciuto il primo piano. Il cliente vede due addebiti e ti scrive. Il punto è che puoi rimborsarne da solo solo uno, e solo se non è stato acquistato tramite Apple. Ecco come funziona ciascun lato, quanto ti costa il doppione e come assicurarti che non si ripeta.

Perché i clienti vengono addebitati due volte per lo stesso abbonamento

Ogni store gestisce il proprio acquisto. Apple addebita l'abbonamento App Store, Google quello di Google Play e il tuo processore di pagamento il piano web. Nessuno di loro sa che gli altri esistono. Il tuo server è l'unico punto in cui i due acquisti possono incontrarsi, e solo se entrambi portano un ID che li collega allo stesso account.

Le strade più comuni verso un doppio addebito sono queste:

  • Il cliente cambia telefono, da iOS ad Android o viceversa, e si abbona di nuovo perché la nuova app mostra un paywall.
  • Il cliente si abbona sul tuo sito, installa l'app senza aver fatto l'accesso, e l'app gli vende in più un abbonamento dello store.
  • Il cliente disinstalla l'app convinto che questo chiuda il piano. La guida di Google dice che disinstallare un'app non annulla il relativo abbonamento Google Play, e un piano App Store continua a rinnovarsi finché non viene annullato nell'account Apple.

"È chiaro che la tua app e il tuo sito non si parlano"

È la lamentela che leggerai nell'email al supporto, e dal punto di vista del cliente è legittima. Ha pagato per un solo prodotto. Sentirsi chiedere di pagarlo di nuovo sembra una trappola, anche quando è stato un incidente da entrambe le parti. Il modo più rapido per calmare le acque è dire chiaramente quale acquisto puoi rimborsare tu e quale invece deve portare ad Apple.

Chi può rimborsare ciascun addebito

È qui che la maggior parte delle risposte del supporto sbaglia. Puoi promettere solo ciò che controlli.

Dove è stato acquistato il doppioneChi decide il rimborsoCome smette di rinnovarsi il pianoIl tuo ruolo
App StoreSolo Apple, tramite reportaproblem.apple.com o la schermata di rimborso nella tua appIl cliente lo annulla nel suo account AppleCONSUMPTION_REQUEST, rispondi entro 12 ore se il cliente ha dato il consenso
Google Play, entro 48 ore dall'acquistoIl cliente può chiederlo a Google, oppure puoi rimborsarlo tuRimborsare l'ultimo ordine annulla i rinnovi futuriNessuno nel rimborso self-service di Google
Google Play, dopo 48 oreTu, da Play Console o con orders.refundRimborsare l'ultimo ordine annulla i rinnovi futuriDecidi tu
Il tuo sitoTu, tramite il tuo processore di pagamentoLo annulli tu dal tuo latoDecidi tu

Uno sviluppatore può rimborsare un abbonamento App Store?

No. Apple gestisce ogni rimborso dell'App Store. Quello che puoi fare è accorciare il percorso. beginRefundRequest di StoreKit apre la schermata di rimborso di Apple dentro la tua app, con i dettagli dell'acquisto e un elenco di motivi già compilati. La documentazione di Apple dice che l'App Store impiega fino a 48 ore per approvare o respingere la richiesta. Fuori dall'app, il cliente accede a reportaproblem.apple.com, sceglie "Richiedi un rimborso", indica un motivo e seleziona l'abbonamento.

Rimborsare tu stesso il lato Google Play

Su Google Play il controllo è tuo. In Play Console, apri Order management, seleziona l'ordine e rimborsalo. La guida di Play Console è precisa sugli abbonamenti: rimborsa l'ordine più recente e l'abbonamento viene rimosso subito, con i rinnovi futuri annullati. Rimborsa un ordine precedente e l'abbonamento resta attivo. Se lo automatizzi, l'API orders.refund fa lo stesso lavoro, accetta un flag revoke per chiudere subito l'accesso e rifiuta gli ordini più vecchi di 3 anni.

Quanto ti costa un abbonamento doppio

Il doppione non è mai stato un ricavo che potevi tenerti. La vera domanda è quanto ti costa in più, oltre al rimborso.

Il caso semplice

Mettiamo che un cliente abbia pagato $9.99 al mese sia sull'App Store sia su Google Play per tre mesi prima di accorgersene. Sono $29.97 di addebiti doppi. Se rimborsi tu i tre ordini Google Play, restituisci $29.97 e il problema finisce quel giorno stesso. Se invece il cliente porta il lato App Store ad Apple, è Apple a decidere quanto rimborsare e tu lo scopri solo dalle notifiche del tuo server. In ogni caso, i ricavi di una piattaforma per quei tre mesi tornano indietro.

Il caso costoso

La perdita vera arriva quando il cliente rinuncia al supporto e chiama la sua banca. Un chargeback è definitivo una volta che la banca ha deciso. Google Play ti dà una sola possibilità di contestare, una revisione del chargeback a cui rispondi entro 24 ore tramite orders.reviewrefund. Per gli ordini Google Play effettuati dopo il 3 agosto 2026, un chargeback perso ti costa il prezzo di acquisto, meno la commissione di servizio di Play, più la commissione di chargeback della banca. Un rimborso da $29.97 che potevi emettere in un minuto diventa $29.97 più una commissione che non controlli.

Il costo che continui a pagare nel frattempo

Finché entrambi i piani sono attivi, il tuo backend serve una sola persona ma vede due abbonamenti. Se conti le postazioni, sincronizzi dati o chiami API di terze parti a pagamento per abbonamento, potresti pagare due volte calcolo, storage e chiamate API per un solo cliente. Unire i due record risolve il problema.

Uno sviluppatore legge la casella del supporto clienti su un portatile accanto a uno smartphone, mentre gestisce il rimborso di un abbonamento doppio

Come gestire un doppio addebito dal supporto

Rispondi in fretta e con un solo messaggio. Ogni scambio in più aumenta le probabilità di una contestazione bancaria.

  • Cerca entrambi gli acquisti tramite l'account del cliente, non tramite l'indirizzo email da cui ha scritto.
  • Chiedigli quale piano vuole tenere. Di solito è quello sul dispositivo che usa adesso.
  • Se il doppione è su Google Play o sul tuo sito, rimborsalo tu e digli che è fatto.
  • Se il doppione è sull'App Store, indirizzalo a reportaproblem.apple.com, o al pulsante di rimborso nella tua app se ne hai creato uno, e digli di annullarlo nelle impostazioni del suo account Apple.
  • Se poi Apple invia un CONSUMPTION_REQUEST e il cliente ha dato il consenso, rispondi entro 12 ore con dati di utilizzo accurati. Un piano doppio mai usato è facile da approvare per Apple.

Come fermare il secondo addebito prima che avvenga

Prevenire costa meno di qualsiasi rimborso, e gli strumenti esistono già in entrambi gli store.

Collega ogni acquisto al tuo ID account

Su iOS, genera un UUID per account e passalo come opzione di acquisto appAccountToken. Apple restituisce lo stesso valore nella transazione e nelle informazioni di rinnovo dell'abbonamento. Se un acquisto è avvenuto fuori dalla tua app, l'endpoint Set App Account Token ti permette di associare o aggiornare il token in un secondo momento. Su Android, passa a setObfuscatedAccountId un ID account sottoposto a hash di 64 caratteri o meno, mai dati personali in chiaro.

Controlla i diritti di accesso prima di mostrare un paywall

Prima che compaia il paywall, chiedi al tuo server se l'account con accesso effettuato ha già un piano attivo su una qualsiasi piattaforma. Mostra prima un invito ad accedere, poi il paywall solo agli account senza un piano attivo.

Tieni d'occhio gli account con due piani attivi

Esegui un controllo giornaliero sugli account con più di un abbonamento attivo tra gli store. Accorgertene nella prima settimana significa rimborsare un mese invece di tre, e mandare una breve email invece di subire un chargeback.

RefundHalt associa gli abbonamenti App Store e Google Play ai tuoi ID account, così un cliente che paga due volte compare come una sola persona con due piani prima che se ne accorga la sua banca.

Domande frequenti

Perché un cliente è stato addebitato due volte per lo stesso abbonamento?
Di solito perché l'ha acquistato su due piattaforme, come l'App Store e Google Play, oppure su uno store e sul tuo sito. Ogni store addebita il proprio abbonamento e non sa nulla dell'altro, quindi entrambi si rinnovano finché uno non viene annullato.
Posso rimborsare un abbonamento App Store a un cliente?
No. Solo Apple può rimborsare gli acquisti dell'App Store. Puoi aprire la schermata di rimborso di Apple dentro la tua app con beginRefundRequest di StoreKit, oppure indirizzare il cliente a reportaproblem.apple.com. Apple dichiara di impiegare fino a 48 ore per approvare o respingere la richiesta.
Come rimborso un abbonamento Google Play doppio?
Rimborsa l'ordine da Order management in Play Console, oppure chiama l'API orders.refund. Rimborsare l'ordine più recente rimuove subito l'abbonamento e annulla i rinnovi futuri. L'API non può rimborsare ordini più vecchi di 3 anni.
Rimborsare un abbonamento lo annulla anche?
Su Google Play, rimborsare l'ordine più recente annulla i rinnovi futuri, mentre rimborsare un ordine precedente lascia l'abbonamento attivo. Sull'App Store, il rimborso è una decisione di Apple e il cliente annulla l'abbonamento dal proprio account Apple.
Come evito che gli utenti si abbonino due volte tra iOS e Android?
Collega il tuo ID account a ogni acquisto, con appAccountToken su Apple e un ID account offuscato su Google Play. Poi verifica sul tuo server se esiste un piano attivo su una qualsiasi piattaforma prima di mostrare un paywall, e chiedi all'utente di accedere prima.

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.