Continuando la discussione da Discourse subscriptions - changing price - how to cancel auto-renewal instead of whole subscription:
Richiesta di funzionalità: Sarebbe utile se l’utente potesse scegliere di annullare l’abbonamento alla fine del ciclo, invece di poterlo annullare solo immediatamente.
Ho visto questo nella documentazione di Stripe, sotto la voce “Cancel at end of cycle”:
If you instead want to cancel the subscription at the end of the current billing period (that is, for the duration of time the customer has already paid for), update the subscription with a cancel_at_period_end value of true:
…
You can reactivate subscriptions scheduled for cancellation (with the cancel_at_period_end parameter) by updating cancel_at_period_end to false . You can reactivate the subscription at any point up to the end of the period.
1 Mi Piace
Si scopre che l’utente può fare ciò che ho chiesto (ho cambiato “allow” in “clarify” nel titolo ora)… quindi eccone due nuovi ma correlati…
Richieste di funzionalità: La dicitura predefinita dovrebbe chiarire i due tipi di annullamento. L’interfaccia di amministrazione dovrebbe avere la stessa colonna “Stato” dell’interfaccia utente.
Ecco alcuni dettagli…
Sembra che “annulla” in Discourse Subscriptions significhi due cose diverse a seconda di chi lo fa! Per l’utente annulla solo il rinnovo automatico; per l’amministratore annulla immediatamente l’intera sottoscrizione.
-
Se l’utente fa clic sull’icona del cestino in u/.../billing/subscriptions, il prompt è “Sei sicuro di voler annullare questa sottoscrizione?”
La scelta di Sì attiva il webhook customer.subscription.updated.
Due parti degne di nota della risposta sono "cancel_at_period_end": true e "status": "active". La pagina della sottoscrizione dell’utente rimane “Stato: Attivo”, ma per “Si rinnova” ora indica “annullato”. L’utente rimane nel gruppo degli abbonati.
Spiacevolmente, l’interfaccia di amministrazione non indica più che il rinnovo automatico è stato annullato: ha solo “Stato: attivo”.
-
Se l’amministratore fa clic su “annulla” in /admin/plugins/discourse-subscriptions/subscriptions, il prompt è di nuovo “Sei sicuro di voler annullare questa sottoscrizione?” (chiede anche se rimborsare).
La scelta di Sì attiva il webhook customer.subscription.deleted.
La risposta include "status": "canceled". La sottoscrizione viene eliminata ovunque e l’utente viene rimosso dal gruppo degli abbonati.