Gestire abbonamenti e acquisti una tantum

Potresti dover eseguire azioni di gestione sugli abbonamenti o sugli acquisti una tantum nell'ambito delle attività quotidiane. Ad esempio, l'assistenza clienti emettere rimborsi totali o parziali per gli utenti oppure potresti dover revocare dei diritti umani in alcuni casi. Puoi gestire gli ordini da Play Console oppure se vuoi gestirle dal tuo sistema, puoi farlo utilizzando API Google Play Developer.

Annullare gli abbonamenti

Gli utenti possono annullare un abbonamento a Google Play in qualsiasi momento tramite il Play Store. devi però offrire agli utenti la possibilità di annullare i propri abbonamenti nella tua app e sul tuo sito web, se applicabile.

Il modo più semplice per consentire agli utenti di annullare volontariamente è tramite link diretti Play Store, dove potranno visualizzare e gestire il proprio abbonamento.

Potresti anche dover attivare gli annullamenti dal backend. La purchases.subscriptions.cancel consente di annullare l'acquisto di un abbonamento. Ad esempio, potresti utilizzare questo metodo per disattivare un servizio legacy. L'annullamento di un abbonamento non dà diritto al rimborso e l'utente continua a avranno accesso fino al termine del periodo di fatturazione corrente. L'annullamento di un l'abbonamento con questo metodo impedisce all'utente di ripristinare l'abbonamento nel Play Store, ma gli utenti possono comunque abbonarsi di nuovo tramite la tua app se necessario.

Questa azione attiva uno sviluppatore in tempo reale SUBSCRIPTION_CANCELED notifica. Gestisci queste cancellazioni come descritto in Annullamenti.

Rimanda fatturazione

Utilizza subscriptions.defer per estendere il periodo di diritto di un abbonamento. Durante il periodo di differimento, L'utente rimane abbonato ai contenuti, nonostante non gli vengano addebitati costi extra nel tempo. Quando si posticipa la fatturazione di un abbonamento, le informazioni sullo stato: viene aggiornato di conseguenza e si riflette nel campo expiryTime nella informazioni sullo stato dell'acquisto:

  • Per gli abbonamenti ricorrenti attivi, la fatturazione differita estende il successivo data di rinnovo.
  • Per i piani prepagati, la fatturazione differita estende la data di scadenza.

Ecco alcuni esempi di utilizzo della fatturazione differita:

  • Offri agli utenti l'accesso senza costi come offerta speciale, ad esempio offrendo una settimana senza costi agli abbonati esistenti per la compilazione di un sondaggio di feedback.
  • Offrire ai clienti un accesso senza costi come azione di assistenza clienti, ad esempio dopo un'interruzione estesa che potrebbe aver influito sulla loro capacità di utilizzare il tuo servizio.

La fatturazione può essere differita di un solo giorno o fino a un anno per chiamata API. Per posticipare ulteriormente la fine del diritto, chiama di nuovo l'API prima dell'arrivo della nuova data di scadenza.

Questa azione attiva uno sviluppatore in tempo reale SUBSCRIPTION_DEFERRED notifica. Consulta Rimandare la fatturazione di un abbonato in Informazioni sugli abbonamenti per scoprire come gestire questi eventi.

Esempio:

  1. Il servizio di streaming Obiettivi di fitness vuole lanciare una promozione su incoraggia ad allenarsi regolarmente a febbraio.

  2. Decide di offrire un mese aggiuntivo di servizio a tutti gli abbonati che si allena con Obiettivi di fitness almeno 10 volte durante il mese di febbraio.

  3. Monitorano i risultati della sfida e il 1° marzo richiamano subscriptions.defer API per ogni acquisto attivo di abbonamenti appartenenti a che hanno affrontato la sfida a febbraio.

  4. Questi utenti ottengono il vantaggio di un mese extra di allenamento regolare video senza costi e gli utenti raccontano a tutti i loro amici come raggiungere li aiuta a rimanere in salute!

Emettere rimborsi e revoche

Esistono molte situazioni in cui potresti voler emettere un rimborso o revocare accesso a un abbonamento o un acquisto una tantum.

Rimborso totale di un ordine in base all'ID ordine

Con orders.refund puoi emettere rimborsi totali per qualsiasi ordine entro tre anni dall'acquisto. Il metodo orders.refund riceve un parametro di revoca che indica se l'accesso deve essere revocato oltre a fornire il rimborso.

Se emetti una revoca con la richiesta di rimborso per l'acquisto di un abbonamento, viene interrotto immediatamente e attiva un'SUBSCRIPTION_REVOKED Notifica in tempo reale per lo sviluppatore. Leggi la gestione del ciclo di vita degli abbonamenti guida sezione Revocazioni per scoprire come gestire questi eventi.

Esempio:

  1. Per celebrare l'inizio della nuova coppa del mondo, l'app di e-sport Calcio-non-calcio decide di mettere in palio maglie virtuali senza costi per tutti gli utenti che acquistano i nuovi kit del team nelle prime 24 ore.

  2. Football-non-calcio utilizza orders.refund senza trasmettere un parametro di revoca per rimborsare gli acquisti di maglia al vincitori.

di Gemini Advanced.

Revocare e rimborsare un abbonamento tramite il token di acquisto

Per alcuni casi d'uso potrebbe essere necessario revocare l'accesso all'abbonamento di un utente e fornire un rimborso. Fatturazione Play offre metodi di revoca, inclusi i metodi e i rimborsi ripartiti proporzionalmente tramite il subscriptionsv2.revoke tramite Google Cloud CLI o tramite l'API Compute Engine. Con questo endpoint, puoi specificare revocationContext per determinare come viene calcolato il rimborso.

Questa azione attiva lo sviluppatore in tempo reale SUBSCRIPTION_REVOKED Notifica. L'app deve gestire questi annullamenti come descritto in Revocazioni.

Esempio:

  • Acquista con token di acquisto 1a2b3c4d5e6f7g8h9i0j
  • Applicazione con nome pacchetto com.your.app
  • Intento di emettere un rimborso proporzionale

Richiesta POST HTTP:

https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.your.app/purchases/subscriptionsv2/tokens/1a2b3c4d5e6f7g8h9i0j:revoke

Corpo della richiesta:

{
  "revocationContext": {
    "proratedRefund": {}
  }
}

Rimborsi totali

Se devi terminare un abbonamento e rimborsare l'intero importo periodo di fatturazione corrente, emetti un rimborso totale. Utilizza la purchases.subscriptionsv2.revoke e imposta "fullRefund": {} come tipo di rimborso.

Esempio:

  1. Maria ha un abbonamento ai SuperMovies con rinnovo automatico della durata di 30 giorni piano mensile. Maria ha riscontrato alcuni problemi tecnici che le hanno impedito l'accesso ai contenuti. Il terzo giorno della fatturazione contatta l'assistenza clienti affermando di non avere mai avuto accesso all'abbonamento.

  2. L'assistenza clienti individua i dettagli di acquisto dell'abbonamento di Maria in il proprio sistema e attiva una chiamata a purchases.subscriptionsv2.revoke richiedendo un rimborso totale.

  3. L'assistenza clienti dice a Maria che dovrebbe ricevere il 100% del suo è stato rimborsato e lei non è più abbonata al piano.

Rimborsi ripartiti proporzionalmente

Se devi interrompere un abbonamento e rimborsare parzialmente il costo rimanente data del diritto, emetti un rimborso proporzionale. Utilizza la purchases.subscriptionsv2.revoke e imposta "proratedRefund": {} come tipo di rimborso.

Esempio:

  1. Maria ha un abbonamento ai SuperMovies con rinnovo automatico della durata di 30 giorni piano mensile. Utilizza felicemente il servizio da un po' di tempo. Maria contatta l'assistenza clienti il 15° giorno del ciclo di fatturazione dichiarando di si sta trasferendo all'estero e non potrà più utilizzare il servizio avviando la giorno successivo.

  2. L'assistenza clienti individua i dettagli di acquisto dell'abbonamento di Maria in il proprio sistema e attiva una chiamata a purchases.subscriptionsv2.revoke richiedere un rimborso proporzionale.

  3. L'assistenza clienti dice a Maria che dovrebbe ricevere circa il 50% del suo prezzo dell'abbonamento rimborsato e l'accesso al servizio è stato interrotto immediatamente.

di Gemini Advanced.