| Zusammenfassung | Das Plugin Discourse Subscriptions ermöglicht es Site-Betreibern, wiederkehrende und einmalige Abonnements zu verkaufen, die den Zugriff auf eine Gruppe in einer Discourse-Instanz gewähren. | |
| Installationsanleitung | Dieses Plugin ist im Discourse-Kern enthalten. Es ist nicht erforderlich, das Plugin separat zu installieren. |
Das Plugin Discourse Subscriptions ermöglicht es dir, einmalige sowie wiederkehrende Abonnements zu erstellen, für die Benutzer zahlen können, um auf gebührenpflichtige Inhalte zuzugreifen. Dies kann eine hervorragende Möglichkeit sein, die Hosting-Kosten deiner Community zu finanzieren.
Funktionen
Das Plugin Discourse Subscriptions unterstützt die folgenden Funktionen:
- Erstellen neuer Produkte und Pläne über das Admin-Panel
- Stornieren und Erstattungen von Abonnements über das Admin-Panel
- Erstellen von einmaligen Käufen oder wiederkehrenden Abo-Plänen
- Hinzufügen kostenloser Testphasen bei wiederkehrenden Abonnements
- Unterstützung für SCA/3D Secure
- Hinzufügen/Entfernen von Benutzern aus Plan-Gruppen, wenn sie abonnieren/stornieren
- Stornierung des Abonnements über das Benutzerprofil
- Stornierung des Abonnements am Ende der Abonnementperiode
- Optionale Unterstützung für Stripe Checkout
- Automatische Umsatzsteuerberechnung und -erhebung
- Benutzer können ihre Karte für einzelne Abonnements aktualisieren
Der „Abonnieren“-Button in der oberen Navigation führt dich zur Abo-Seite /s, auf der die für deine Site konfigurierten Abonnements aufgelistet sind:
Sobald ein Benutzer auf einen der „Abonnieren“-Buttons für einen bestimmten Plan klickt, öffnet sich die Zahlungsseite für diesen Plan:
Nachdem ein Benutzer seine Zahlungsdetails und seine Adresse eingegeben und auf „Abonnieren“ geklickt hat, wird ihm eine „Danke!“-Nachricht angezeigt und er wird zu seiner Abrechnungsseite weitergeleitet:
Der Benutzer wird auch automatisch einer von dir gewählten Gruppe hinzugefügt, sodass du leicht sehen kannst, welche Benutzer abonniert haben, und gleichzeitig gebührenpflichtige Inhalte in Kategorien bereitstellen kannst, die nur diese Gruppe sehen kann.
Begriffe
- Abonnement - Abonnements sind wiederkehrende Zahlungspläne, mit denen du den Zugriff auf Inhalte in deiner Community steuern kannst. Wenn ein Abonnement erstellt oder gelöscht wird, wird ein Benutzer der Benutzergruppe hinzugefügt oder entfernt, die du mit deinem Abo-Plan verknüpft hast. Ein Abonnement besteht aus einem Produkt und Plänen.
- Produkt - Ein Produkt im Sinne von Stripe ist das, was du verkaufst. Ein Produkt kann einen oder mehrere Pläne enthalten.
- Um eine Beschreibung zu deinem Produkt hinzuzufügen, füge ein Metadatenfeld mit dem Namen „description“ hinzu und verwende dieses stattdessen. Du kannst Markdown verwenden.
- Plan - Ein Plan enthält einen Preis, einen wiederkehrenden Zyklus und ist mit einer Gruppe verknüpft, auf die deine Abonnenten Zugriff erhalten.
Achte sehr darauf, deine Stripe-Privatschlüssel jederzeit sicher und geschützt aufzubewahren.
Wenn du deine Discourse-Instanz herunterfährst, dieses Plugin deinstallierst oder deine Site offline geht, wird Stripe deine Kunden für deinen Dienst weiterhin in Rechnung stellen, bis das Abonnement storniert wird.
Konfiguration
- Plugin installieren & aktivieren
- Zahlungsgateway (Stripe) konfigurieren
- Webhooks & Ereignisse in Stripe konfigurieren
- Füge deine Stripe-Schlüssel (öffentlich, geheim, Webhook-Geheimnis) unter Admin > Plugins > Installiert > Subscriptions > Einstellungen hinzu
/admin/site_settings/category/discourse_subscriptions?filter=plugin%3Adiscourse-subscriptions. - Erstelle eine Gruppe, der sich deine Abonnenten durch den Kauf anschließen können
- Erstelle ein Produkt und einen Plan unter Admin > Plugins > Subscriptions
- Profit!
Richte dein Zahlungsgateway ein.
Zunächst benötigst du ein Konto beim Stripe-Zahlungsgateway. Um loszulegen, kannst du ein Konto im Testmodus einrichten und herausfinden, wie alles funktioniert, ohne echte Transaktionen durchzuführen oder ein Bankkonto einrichten zu müssen. Es gibt keinen Testmodus-Umschalter im Plugin; achte stattdessen darauf, deine Entwicklungsschlüssel zu verwenden (sie beginnen mit pk_test, sk_test)
Richte Webhooks und Ereignisse in deinem Stripe-Konto ein
Webhooks sind erforderlich, damit Abonnement-Stornierungen vollständig funktionieren. Stelle sicher, dass du sie korrekt konfiguriert hast.
Sobald du ein Konto bei Stripe hast, musst du Stripe die Adresse deiner Website mitteilen, damit es dich über bestimmte Transaktionen benachrichtigen kann. Du kannst dies in deinem Stripe-Dashboard unter Endpoints > URL eingeben.
Webhook-Adresse: [deine Serveradresse]/s/hooks – wobei [deine Serveradresse] die URL deiner Discourse-Installation ist.
Du musst Stripe auch mitteilen, über welche Ereignisse es dich per Webhook-URL benachrichtigen soll.
Derzeit reagiert Discourse Subscriptions auf die folgenden Ereignisse:
customer.subscription.deletedcustomer.subscription.updatedcheckout.session.completedcheckout.session.async_payment_succeeded
Füge die Stripe-API- und Webhook-Schlüssel zu deinen Plugin-Einstellungen hinzu
Stripe muss autorisiert sein, mit deiner Website zu kommunizieren. Dazu veröffentlicht es ein Paar aus privaten und öffentlichen API-Schlüsseln sowie ein Signierungsgeheimnis für deine Webhooks.
Um Webhooks zu autorisieren, füge die API-Schlüssel und das Webhook-Geheimnis von Stripe auf deiner Einstellungsseite (unter Developers) hinzu.
Das Hinzufügen von Produktionsschlüsseln führt zu echten Zahlungen. Wenn du testen möchtest, stelle sicher, dass du auf den Modus
View test dataumstellst und unter Developerspk_test- undsk_test-Schlüssel erhältst.
In deinen Stripe-Kontoeinstellungen findest du:
Füge diese Schlüssel unter den entsprechenden Einstellungen in Admin > Plugins > Installiert > Subscriptions > Einstellungen hinzu /admin/site_settings/category/discourse_subscriptions?filter=plugin%3Adiscourse-subscriptions.
Richte deine Benutzergruppen in Discourse ein
Wenn ein Benutzer sich erfolgreich für deine Discourse-Anwendung abonniert, wird er nach der Verarbeitung seiner Kreditkartentransaktion einer Benutzergruppe hinzugefügt. Durch die Zuweisung von Benutzern zu einer Benutzergruppe kannst du steuern, auf was deine Benutzer auf deiner Website Zugriff haben. Benutzergruppen sind eine Kernfunktion von Discourse, und dieses Plugin tut nichts mit ihnen, außer Benutzer zu der Gruppe hinzuzufügen oder zu entfernen, die du mit deinem Plan verknüpft hast.
Erstelle ein oder mehrere Produkte mit Plänen.
Klicke unter Admin > Plugins > Subscriptions auf „Neues Produkt hinzufügen“. Sobald du ein Produkt gespeichert hast, kannst du Pläne hinzufügen. Beachte, dass die Preise und Abrechnungsintervalle von Plänen nicht geändert werden können, sobald du sie erstellt hast. Dies dient dazu, Verwirrung rund um das Abonnement-Management zu vermeiden.
Wenn du dir dein Stripe-Dashboard ansiehst, wirst du feststellen, dass alle diese Produkte und Pläne aufgelistet sind. Discourse Subscriptions erstellt sie nicht lokal. Sie werden in Stripe erstellt.
Testen
Teste mit diesen Kreditkartennummern:
- 4242 4242 4242 4242
- 4111 1111 1111 1111 (keine Authentifizierung erforderlich)
- 4000 0027 6000 3184 (Authentifizierung erforderlich)
Für weitere Testkartennummern: Test card numbers | Stripe Documentation
Besuche /s und führe einige Testtransaktionen durch.
Live gehen
Sobald du bereit bist, live zu gehen, ändere deine API- und Webhook-Geheimnisschlüssel in Produktionsschlüssel. Du musst neue Produkte und Pläne im Live-Modus erstellen.
Sei dir bewusst, dass Benutzer weiterhin Zugriff auf die Gruppe haben, wenn du die Stripe-Webhooks nicht korrekt konfigurierst und wiederkehrende Zahlungen aus irgendeinem Grund (abgelaufene Kreditkarte usw.) nicht verarbeitet werden. Damit Stripe Abonnements automatisch storniert, stelle sicher, dass du deine Einstellungen für Manage failed payments ähnlich dem folgenden Bild einrichtest und die Webhooks wie oben beschrieben konfigurierst.
Zahlungsinformationen aktualisieren
Benutzer können ihre für einzelne Abonnements verwendete Karte aktualisieren, indem sie die Abrechnungsseite besuchen und auf die Schaltfläche „Bearbeiten“ neben dem Abonnement klicken, wodurch dieser Bildschirm geöffnet wird:
Stripe Checkout mit Stripe Pricing Tables
Du kannst dich auch dafür entscheiden, die Produkt- und Checkout-Seiten des Subscription-Plugins zu ersetzen und stattdessen Stripe Checkout mit Stripe Pricing Tables zu verwenden.
In deinem Stripe-Dashboard:
- Nachdem du die Produkte in Discourse erstellt hast, gehe zu Products > Product catalog
- Klicke auf das Produkt, das du in der Preistabelle einbeziehen möchtest
- Klicke auf
Edit product More Optionsund gib Folgendes unterMetadataein:- Key:
group_name - Value: Der Name der Gruppe in Discourse (z. B.
trust_level_0)
- Key:
- Klicke auf
Update product, um zu speichern
Stelle sicher, dass der Gruppenname mit der Gruppe übereinstimmt, die unter
User_Groupsin Discourse ausgewählt ist
Erstelle deine Stripe-Preistabelle
- Gehe zu Products > Pricing tables
- Erstelle eine neue Tabelle und füge die Produkte hinzu, die du gerade erstellt hast
- Nach der Veröffentlichung der Tabelle kopiere die ID der Preistabelle, die im Einbettungscode zu finden ist (sie beginnt mit
prctbl_...) - Füge die ID der Preistabelle in dein
discourse_subscriptions_pricing_table_idein und aktiviere die Einstellung für die Abo-Preistabelle. - Klicke auf die grünen Häkchen, um beide Einstellungen zu speichern.
Empfohlener Schritt:
Beim Einrichten der Preistabelle in Stripe wird empfohlen, den Benutzer nach Abschluss des Checkouts zu deiner Site weiterzuleiten, andernfalls verbleiben sie auf einer Stripe-Bestätigungsseite ohne Link zurück zu deiner Site.
Eine Weiterleitung zu https://<deine-site>/my/billing/subscriptions ist eine gute Wahl für Abonnements. Für Einmalkäufe kannst du direkt zu https://<deine-site>/my/billing/payments verlinken.
Automatische Steuererhebung
Um die automatische Steuererhebung zu aktivieren, aktiviere das Site-Einstellungsfeld für discourse_subscriptions_enable_automatic_tax.
Wenn du es aktivierst, aber deine Stripe-Instanz nicht korrekt konfiguriert hast, um Steuern zu erheben, kann dieser Popup nach Abschluss des Checkout-Prozesses angezeigt werden:
Es gibt diese Anleitung für weitere Informationen, aber es sollte nicht viel zu tun sein, da das Plugin nun den entsprechenden Parameter automatic_tax[enabled]=true übergibt (Schritt 5).
Stelle sicher, dass du auch deine Registrierungen konfigurierst (Schritt 4):
Hier ist ein Beispiel für eine Transaktion des Discourse Subscription Plugins in Stripe, die zeigt, dass die Steuer automatisch erhoben wurde:
Einstellungen
| Name | Beschreibung |
|---|---|
| discourse subscriptions enabled | Aktiviert das Plugin Discourse Subscriptions. |
| discourse subscriptions extra nav subscribe | Zeigt den Abonnieren-Button in der primären Navigation an |
| discourse subscriptions public key | Stripe Publishable Key |
| discourse subscriptions secret key | Stripe Secret Key |
| discourse subscriptions webhook secret | Stripe Webhook Secret |
| discourse subscriptions currency | Standard-Währungskode. Dies kann beim Erstellen eines Abo-Plans überschrieben werden. |
| discourse subscriptions campaign enabled | Aktiviert ein Kampagnenbanner, um die finanzielle Unterstützung dieser Community zu fördern. |
| discourse subscriptions campaign goal | Das numerische Ziel für deine Unterstützungsaktion (Abonnenten oder gesammelter Betrag). |
| discourse subscriptions campaign type | Wählt den Typ der durchzuführenden Kampagne (Abonnenten oder monatlich gesammelter Betrag). |
| discourse subscriptions campaign banner location | Wählt die Position des Kampagnenbanners (oben oder Seitenleiste). |
| discourse subscriptions campaign banner bg image | Lade ein benutzerdefiniertes Bild hoch, das als Hintergrund für das Kampagnenbanner verwendet werden soll. |
| discourse subscriptions campaign banner shadow color | Wählt die Farbe des Schlagschattens des Kampagnenbanners. |
| discourse subscriptions campaign show contributors | Zeigt Avatare der neuesten Käufe von Abo-Produkten an. |
| discourse subscriptions campaign product | Die Stripe-Produkt-ID, die Unterstützern gesendet wird, wenn sie auf den Button in der Kampagne klicken. Wenn diese Einstellung leer ist, werden Unterstützer zur Hauptproduktseite weitergeleitet. |
| discourse subscriptions campaign grant | Gewährt dem Benutzer einen kostenlosen Monat Abonnements |
| discourse subscriptions pricing table id | Die Stripe-Preistabelle-ID aus dem Einbettungscode |
| discourse subscriptions pricing table enabled | Aktiviert die Verwendung der Stripe-Preistabelle und ersetzt die bestehende Abo-Seite |
| discourse_subscriptions_enable_automatic_tax | Schaltet ein, ob Umsatzsteuer erhoben wird. Erfordert einige Einstellungen in Stripe. |
| discourse_subscriptions_enable_verbose_logging | Aktiviert ausführlichere Protokollierung zur Unterstützung bei der Fehlersuche. Bitte nicht dauerhaft in der Produktion aktiviert lassen. |
Von uns gehostet? Dieses Plugin ist in unseren Hosting-Plänen Pro, Business und Enterprise verfügbar Subscriptions | Discourse - Civilized Discussion




















