Miglioramenti al Subscriptions Plugin

Ciao, ho apportato le seguenti modifiche a questo plugin e volevo sapere se il team di Discourse è aperto a una PR.

Mi piacerebbe anche se altri potessero fare test approfonditi. Al momento sto testando i flussi con gli scenari che mi sono critici.


Il plugin originale è un’ottima base ma è principalmente focalizzato sugli abbonamenti ricorrenti tramite Stripe. Ho apportato le seguenti modifiche:

Riepilogo delle Nuove Funzionalità e Miglioramenti

1. Sistema di Pagamento Multi-Provider (con Razorpay) Il plugin non è più codificato in modo rigido per Stripe. Ora utilizza un’architettura basata su provider che consente più gateway di pagamento.

  • Integrazione Razorpay: Razorpay è stato completamente integrato come secondo provider di pagamento. Questo è fondamentale per le community in mercati come l’India, dove Razorpay è un gateway preferito.
  • Webhook Sicuri: L’integrazione Razorpay è robusta e include un gestore di webhook sicuro per confermare i pagamenti server-to-server, garantendo che nessun abbonamento venga perso se un utente chiude il browser dopo il pagamento.

2. Abbonamenti Una Tantum a Durata Limitata Questo introduce un nuovo tipo di prodotto flessibile oltre agli abbonamenti ricorrenti standard.

  • Accesso Scaduto: Gli amministratori possono ora creare piani di pagamento una tantum che concedono l’accesso a un gruppo per una durata fissa (ad esempio, un pass per eventi di 7 giorni, una prova di 30 giorni o un pacchetto di 90 giorni).
  • Scadenza Automatica: Un processo batch giornaliero viene eseguito automaticamente per verificare gli abbonamenti scaduti e rimuovere gli utenti dai gruppi pertinenti, garantendo che il controllo degli accessi sia completamente automatizzato.

3. Revisione Completa della Pagina Prezzi La pagina di abbonamento predefinita rivolta all’utente è stata completamente ricostruita per migliorare le conversioni e l’esperienza utente.

  • Interfaccia Utente Moderna Basata su Schede: Il vecchio elenco di prodotti è sostituito da un layout pulito e reattivo basato su schede, più facile da leggere e confrontare.
  • Consapevole del Tema: Il nuovo design utilizza le variabili del tema di Discourse ed è completamente compatibile sia con le modalità chiara che scura.
  • Checkout su Pagina Singola: L’intero processo di checkout avviene ora sulla pagina dei prezzi. Cliccando su “Abbonati” viene visualizzato un modulo di pagamento direttamente sulla pagina, eliminando un passaggio ridondante e riducendo l’attrito per l’utente.

4. Logica Avanzata di Upselling e Visualizzazione del Valore Le nuove schede dei prezzi sono progettate per essere potenti strumenti di upselling.

  • Costo Effettivo Mensile: L’interfaccia utente calcola e visualizza automaticamente il “costo mensile effettivo” per tutti i tipi di piano (inclusi i piani una tantum di 3 mesi o annuali), consentendo agli utenti di confrontare facilmente il valore delle diverse opzioni.
  • Risparmio Esplicito: Un badge “Risparmia ₹X” viene visualizzato automaticamente sui piani a lungo termine, comunicando chiaramente il vantaggio di scegliere un piano di valore superiore rispetto a quello di base.

5. Dashboard Amministratore e Utente Unificate Sia le pagine di fatturazione dell’amministratore che quelle dell’utente sono state rifattorizzate per essere più semplici e potenti.

  • Vista Unificata Singola: Invece di elenchi separati per diversi tipi di pagamento, ora c’è una singola tabella che mostra tutti gli abbonamenti da tutti i provider (Stripe, Razorpay, Manuale).
  • Informazioni Chiare: Queste viste mostrano chiaramente il provider, lo stato, la data di scadenza/rinnovo e l’importo per ogni transazione, fornendo ad amministratori e utenti una cronologia completa dei loro diritti.

6. Gestione Manuale degli Abbonamenti per gli Amministratori È stato aggiunto un nuovo set di strumenti per dare agli amministratori un maggiore controllo.

  • Concedi Abbonamento: Gli amministratori possono ora concedere manualmente qualsiasi piano di abbonamento a qualsiasi utente per una durata specifica. Questo è perfetto per gestire pagamenti offline, fornire accesso gratuito o apportare correzioni.
  • Revoca Accesso: L’accesso ai piani non ricorrenti può essere revocato immediatamente dalla dashboard dell’amministratore.

7. Correzione Bug Critico per la Gestione dei Gruppi

  • È stato corretto un bug importante nella logica di rimozione dei gruppi originale. Quando un abbonamento viene annullato o revocato, il sistema ora esegue un “controllo di sicurezza” per verificare se l’utente ha altri abbonamenti attivi per lo stesso gruppo. L’utente verrà rimosso dal gruppo solo se non ha altri modi validi per accedervi, impedendo che gli utenti vengano rimossi in modo errato.
4 Mi Piace

Puoi includere un link al tuo repository GitHub?

1 Mi Piace

Sì sì certo.. dammi solo un giorno. Sto risolvendo alcuni bug relativi alla gestione dei dati legacy di Stripe quando passeremo a questa versione del plugin con nuovi campi.

Ho aggiornato il primo post con il repository.

Guida all’installazione e alla configurazione

Questa guida ti accompagnerà nell’impostazione dei provider di pagamento necessari e nella creazione dei tuoi primi prodotti e piani.

1. Configurazione del Provider

Per prima cosa, vai su `Admin , ,

3 Mi Piace

Ho aggiornato il repository con le seguenti modifiche/correzioni. Sono ora pronto per installarlo e utilizzarlo sul mio sito di produzione.

Riepilogo dei Miglioramenti di Stabilit

1. Integrazione Moderna di Stripe Checkout Il plugin

  • Cosa significa: Invece di un modulo di carta di credito sulla pagina, gli utenti vengono ora inviati a una pagina sicura ospitata da Stripe per completare il pagamento.
  • **Perch

2. Logica di Riacquisto Affidabile La logica che impedisce agli utenti di riacquistare un prodotto per il quale hanno gi

  • La Correzione: Abbiamo aggiunto product_id a ogni record di abbonamento locale. Il controllo
  • Il Risultato: Un utente con un abbonamento attivo (ricorrente o a tempo limitato) verr

**3. Integrit

  • La Correzione: Entrambe le pagine ora recuperano lo stato pi
  • Il Risultato: Ci

4. Elaborazione Robusta di Webhook e Job

  • **Niente pi

  • Job di Scadenza Affidabile: Il job in background giornaliero che scade i piani una tantum

1 Mi Piace

Wow, grazie per aver apportato tutte queste modifiche!

Così com’è, però, non possiamo semplicemente unire modifiche molto grandi tutte in una volta. Se desideri che queste vengano unite al plugin discourse-subscriptions, dovrai separare ogni modifica individualmente e creare PR separati con test. Inoltre, assicurati che non ci siano modifiche che interrompano gli utenti esistenti che stanno attualmente utilizzando il plugin di sottoscrizioni e hanno già molti iscritti.

5 Mi Piace

Certamente, grazie. Mi prenderò del tempo e creerò diverse PR dopo aver definito le specifiche.

5 Mi Piace