payment recurring

Wiederkehrende Zahlungen/Abonnements in Drupal Commerce am Beispiel des Commerce Recurring Moduls

Wiederkehrende Zahlungen gewinnen an Beliebtheit und werden auch zunehmend von bekannten Marken genutzt. Diese Art von Abrechnungsmodell finden Sie unter anderem bei Netflix, Spotify oder Apple Music. Zweifellos sind sie aufgrund der Regelmäßigkeit und Pünktlichkeit der Zahlungen, der vollständigen Automatisierung und Sicherheit für E-Business von großem Nutzen. Wenn Sie diese Methode der Zahlungserhebung implementieren möchten, ermutige ich Sie, diesen Artikel zu lesen. Sie erfahren, wie es in Drupal Commerce gemacht wird.

Was sind wiederkehrende Zahlungen?

Dabei handelt es sich um Zahlungen, die von Kunden in ausgewählten Zeiträumen eingezogen werden. Meistens erfolgen diese Zahlungen monatlich, aber es gibt auch andere Modelle. Einige Systeme ziehen Zahlungen einmal im Jahr ein, andere – einmal pro Woche. Auch ein vierteljährlicher Zyklus ist möglich. Andere Zeitintervalle sind weniger verbreitet.

Was können Sie mit wiederkehrenden Zahlungen verkaufen?

Netflix und Spotify, die in der Einleitung erwähnt wurden, sind Systeme mit einer Datei-Datenbank (Video, Audio). Um darauf zugreifen zu können, muss man wiederkehrende Zahlungen leisten.

In unserer Drupal-Agentur haben wir ein ähnliches Projekt umgesetzt – natürlich mit Drupal. Nach der Zahlung erhält der Nutzer Zugang zum System und einzigartigen PDF-Dateien. Der Kunde hat die Möglichkeit, eine einzelne, spezifische Datei zu erwerben oder ein monatliches oder jährliches Abonnement zu bezahlen. Letzteres ermöglicht den Zugriff auf alle Dateien im System.

Ein ähnliches System, das wir bei Droptica entwickelt haben, ist Training Realm. Es handelt sich um eine Webanwendung, die es den Nutzern ermöglicht, Trainingseinheiten zu protokollieren, Trainingspläne zu erstellen und die Schwierigkeit der Trainingszyklen an das Niveau des Nutzers anzupassen. Und wie Sie wahrscheinlich erraten können, haben wir auch in diesem Fall den Service für wiederkehrende Zahlungen verwendet.

An den obigen Beispielen können Sie sehen, dass wiederkehrende Zahlungen am häufigsten mit digitalen Produkten oder Diensten verbunden sind. Natürlich kann diese Lösung auch für den Verkauf physischer Produkte implementiert werden. Ein perfektes Beispiel ist Diät-Catering. Das System zieht automatisch eine monatliche Gebühr für das Essen ein, das in den nächsten 30 Tagen geliefert werden soll.

Wie Sie sehen, gibt es viele Einsatzmöglichkeiten. Wiederkehrende Zahlungen sind sehr praktisch für Unternehmen, da sie ihnen regelmäßige Einnahmen über einen vorhersehbaren Zeitraum bieten.

Installation des Moduls für wiederkehrende Zahlungen in Drupal Commerce

Ich werde die Aktivierung und Konfiguration des Commerce Recurring Moduls anhand der Droopler Distribution präsentieren. Wir haben dort ein Starter-Paket für Drupal Commerce vorbereitet – es genügt, die d_commerce Module zu aktivieren (Screenshot unten), um ein einsatzbereites Commerce-System auf Drupal-Basis zu erhalten.

Die Installation des Droopler-Systems ist sehr einfach. Anweisungen für Composer finden Sie hier.

Wenn Sie bereits das Droopler-System haben, müssen Sie das Commerce Recurring-Modul installieren.

Laden Sie die entsprechenden Recurring Modul-Dateien und alle zusätzlichen für dieses Beispiel benötigten Module mit dem Befehl herunter:

 composer require drupal/commerce_recurring drupal/facets_pretty_paths drupal/commerce_paypal

Nach dem Ausführen dieser Befehle im Terminal sollten Sie diesen Effekt sehen:

blog1

Im nächsten Schritt gehen Sie in Drupal auf die Modul-Liste-Seite (/admin/modules) und aktivieren die folgenden Module:

  • d_commerce 
  • d_commerce_product 
  • d_commerce_products_list
  • Commerce Recurring

Für wiederkehrende Zahlungen benötigen Sie auch ein Zahlungsmodul, das wiederkehrende Zahlungen unterstützt. In diesem Beitrag wird das Beispiel auf dem Commerce PayPal Modul basieren.

Sie können das Modul mit dem Befehl herunterladen:

 composer require drupal/commerce_paypal

Die Beschreibung, wie man das Modul aktiviert und konfiguriert, finden Sie auf der drupal.org-Projektseite.

Konfiguration des Commerce Recurring Moduls

Nach der Installation des Moduls werden wir zwei zusätzliche Seiten im Admin-Bereich sehen:

  1. Abrechnungspläne /admin/commerce/config/billing-schedules
  2. Abonnements /admin/commerce/subscriptions

Wir beginnen mit den Einstellungen auf der Seite Abrechnungspläne. Hier können Sie entscheiden, ob der Kunde monatlich, wöchentlich oder täglich zahlt. Oder vielleicht möchten Sie alle 13 Tage abbuchen? Ja, auch ein solches Zahlungsintervall können Sie konfigurieren.

Darüber hinaus legen Sie auch den Parameter fest, wann die Zahlung eingezogen werden soll: ob dies sofort nach dem Kauf oder vielleicht am Ende des festgelegten Zeitraums (z.B. am Ende des Monats) geschehen soll.

Sie entscheiden auch, ob die Zahlung immer am ersten des Monats erfolgen soll oder ob sie am gleichen Tag des folgenden Monats, in dem der Kauf getätigt wurde, vorgenommen werden soll (z.B. Kauf am 13. des Monats, also Zahlung immer am 13. eines jeden Monats).

Ein weiterer Parameter ist die Proportionalität, z.B. für jährliche Zahlungen: wenn jemand im Juli einen Kauf tätigt, legen Sie fest, ob er den Betrag für ein ganzes Jahr oder nur für ein halbes Jahr zahlt, und die nächste Zahlung für ein ganzes Jahr wird dann im Januar fällig.

Am Ende des Formulars entscheiden Sie, was zu tun ist, wenn die Zahlung fehlschlägt (z.B. können Sie die Zahlung in 3 Tagen erneut versuchen).

Wie Sie sehen, gibt es viele Konfigurationsmöglichkeiten. Jeder wird eine Konfiguration finden, die zu seinem Geschäftsmodell passt.

Monatliche wiederkehrende Zahlungen

Unten finden Sie ein Beispiel für Formulareinstellungen für monatliche wiederkehrende Zahlungen. Die Zahlung wird im Voraus abgebucht und immer vollständig pro Monat vorgenommen (berechnet ab dem Kaufdatum durch den Kunden).

Im Falle eines Zahlungsausfalls wird das System drei weitere Male versuchen, die Zahlung zu verarbeiten, bevor das Abonnement deaktiviert wird.

So sieht es im Formular aus:

blog2

blog3

Die vollständige Beschreibung der Einstellungen für dieses Formular finden Sie in der Dokumentation auf der Drupal Commerce Seite.

Hinzufügen von wiederkehrenden Zahlungen zu einem Produkt

In diesem Fall sehen Sie, wie eine wiederkehrende Zahlung in Bezug auf ein Produkt aussieht, z.B. das oben erwähnte Diät-Catering.

Es ist üblich, eine separate Produktvariante zu erstellen, die ein Abonnement ermöglicht. Im Allgemeinen kann jedes Produkt eine Variante haben, die sich im Preis, SKU-Code und/oder anderen Merkmalen unterscheidet.

Zum Beispiel kann eine E-Commerce-Plattform, die den Verkauf von Kleidung betreibt, ein Produkt "T-Shirt" haben, dessen Varianten verschiedene Farbvarianten sind. Um Varianten zu erstellen, gehen Sie zu

  • '/admin/commerce/config/product-variation-types'

oder über das Menü

  • Commerce->Konfiguration->Produkte->Produktvariationenstypen und klicken Sie dann auf "Produktvariante hinzufügen".

In diesem einfachen Formular geben Sie den Namen der zu erstellenden Variante ein und wählen "Abonnement erlauben".

blog5

Jeder erstellte Produkttyp ermöglicht es Ihnen, eine Variante hinzuzufügen. Wenn Sie also die vorhandenen Produkte nicht verlieren möchten, müssen Sie einen zusätzlichen Produkttyp erstellen, dessen Varianten Abonnements sein werden.

Hierfür gehen Sie zu '/admin/commerce/config/product-types' und klicken auf "Produkttyp hinzufügen". Füllen Sie das Formular aus der Dropdown-Liste aus und wählen Sie die zuvor erstellte Variante ('Abonnement' im Beispiel).

blog6

Dann brauchen Sie ein tatsächliches Produkt, das der Endbenutzer in den Einkaufswagen legen kann. Sie können es hinzufügen, indem Sie zur Seite "/product/add" gehen. Wählen Sie aus der Liste der Produkttypen das zuvor erstellte "Abonnementprodukt". Füllen Sie das Formular gemäß den angezeigten Feldern aus und klicken Sie dann auf "Speichern und Varianten hinzufügen". Sie sehen eine Tabelle, die alle erstellten Varianten zeigt, die mit diesem Produkt verbunden sind. Klicken Sie auf "Variante hinzufügen". Füllen Sie im angezeigten Formular die Felder wie SKU und Preis aus.

Das Feld Titel ist in diesem Fall der Name der erstellten Variante. Wie bereits erwähnt, kann ein Produkt beliebig viele haben, und der Name der Variante selbst wird zusammen mit dem Produktnamen in der Bestellung und im Warenkorb angezeigt. Im Falle eines Abonnements können Sie Varianten nach Zeitraum erstellen, z.B. ein Monat, ein halbes Jahr, ein Jahr. Für dieses Beispiel haben wir ein monatliches Abonnement erstellt, sodass wir die Produktvariante "monatlich" nennen und im Feld Abrechnungsplan das zuvor erstellte monatliche Intervall auswählen.

blog7

Nach dem Klicken auf die Schaltfläche "Speichern" kehren Sie zur Liste der Varianten eines bestimmten Produkts zurück, wie auf der Liste zu sehen ist, besteht der Titel der Varianten letztlich aus dem Produktnamen und dem zugehörigen erstellten Variantennamen.

blog8

Im nächsten Schritt können Sie zur Produktansicht gehen, es in den Warenkorb legen und den Kaufprozess durchlaufen. Nach erfolgreichem Abschluss der Zahlung und Bestellung wird, sofern sie ein Produkt enthielt, mit dem eine wiederkehrende Zahlung verbunden ist, ein Abonnement erstellt, das Sie unter '/admin/commerce/subscriptions' oder über das 'Commerce->Abonnements' Admin-Panel verwalten können.

blog9

Eine genauere Beschreibung der Moduloperation finden Sie hier.

Erstellen von eigenständigen wiederkehrenden Zahlungen

Bisher haben wir ein Abonnement als separates Produkt erstellt, das der Kunde auch zusammen mit den Produkten, die nicht unbedingt Abonnements sein müssen, in den Warenkorb legen kann. Aber was, wenn Sie keine Produkte und Varianten erstellen möchten, z.B. wenn Sie den Nutzern die Möglichkeit wiederholter Zahlungen geben möchten?

Das Commerce Recurring Modul ermöglicht es Ihnen auch, wiederkehrende Zahlungen hinzuzufügen. Dies kann an derselben Stelle erfolgen, an der die auf Bestellungen basierenden erstellten Abonnements aufgelistet sind, indem Sie auf die Schaltfläche "Abonnement hinzufügen" klicken und die "einzelne" Option auswählen. Dann füllen Sie das Formular nach Bedarf aus. Beachten Sie, dass in dieser Situation der Benutzer angegeben werden muss, dem das Abonnement zugeordnet wird.

blog10

Eine genauere Beschreibung finden Sie hier.

Zusammenfassung

Drupal bietet eine Vielzahl von Möglichkeiten, maßgeschneiderte E-Commerce-Lösungen zu schaffen. Erfahren Sie mehr über Drupal Commerce aus unseren anderen Blogposts:

Wenn Sie dagegen fachkundige Unterstützung benötigen, besuchen Sie unsere Drupal Commerce Seite.

Drupal-Commerce-Services-Banner-Blog-Droptica