MitgliedMaus 3.0+
HINWEIS: Bei Zahlungsdiensten, die keine Card-on-File-Funktionalität unterstützen (z. B. PayPal, Authorize.net), hat MemberMouse keine Kontrolle über den Prozess der wiederkehrenden Rechnungsstellung und nicht überfällige Zahlungen automatisch bearbeiten.
Standardmäßig verfügt MemberMouse über ein integriertes Mahnverfahren für die Einziehung überfälliger Zahlungen. Wenn ein Abonnement die Rechnung nicht zum geplanten Termin einreicht, unternimmt MemberMouse innerhalb einer Woche drei weitere Versuche, die Zahlung einzuziehen. MemberMouse sendet außerdem eine konfigurierbare Zahlungsrückstandsmeldung nach jeder fehlgeschlagenen Zahlung. Wenn Sie eine detaillierte Beschreibung dieses Prozesses lesen möchten, lesen Sie unseren Artikel Automatisierte Bearbeitung überfälliger Zahlungen.
Sie können die Zeiten zwischen den einzelnen Abrechnungsversuchen anpassen, aber die drei Versuche können nicht geändert werden. Dies ist eine fest eingestellte Zahl.
Obwohl dieses Erfassungsintervall als Standard gut funktioniert, möchten Sie vielleicht die Tage, die zwischen einem Erfassungsversuch vergehen, und die Dauer des gesamten Erfassungsprozesses anpassen. Dies ist möglich, indem Sie einen WordPress-Filter verwenden, mm_abrechnung_abonnement_mahnung_intervall.
Filter sind Funktionen, die WordPress an bestimmten Punkten der Ausführung durchläuft, bevor eine Aktion mit den Daten durchgeführt wird. MemberMouse definiert einen eigenen Satz von Filtern, die Sie verwenden können, um den Ablauf der Ausführung in MemberMouse zu steuern, bevor bestimmte Aktionen ausgeführt werden.
Hier ist ein einfaches Beispiel:
function customContentProtection($data)
{
return true;
}
add_filter('mm_bypass_content_protection', 'customContentProtection');
In diesem Beispiel verwenden wir die add_filter() Methode, um anzuzeigen, dass die customContentProtection() Methode sollte aufgerufen werden, wenn MemberMouse die mm_Umgehung_des_Inhalt_Schutzes Filter.
Um mehr über die Arbeit mit der WordPress Action API zu erfahren diesen Artikel lesen.
Anpassen der Mahnungsintervalle
MemberMouse übergibt zwei Argumente an Ihre Funktion. Das erste ist eine ganze Zahl $failureIntervall
die die Standardanzahl von Tagen vor dem nächsten Versuch darstellt. Die zweite ist eine ganze Zahl $failureState
der den jeweiligen Status der fehlgeschlagenen Rechnungsstellung angibt. Derzeit gibt es drei Fehlerzustände: 2, 3 und 4, die den zweiten, dritten bzw. letzten Versuch, die Zahlung einzuziehen, darstellen.
Ihre Funktion sollte eine ganze Zahl zurückgeben, die die Anzahl der Tage angibt, die bis zum nächsten Versuch vergehen sollen. Hier ist ein Beispiel, das die Standard-Mahnintervalle nachbildet:
function customDunningInterval($failureInterval, $failureState)
{
switch ($failureState)
{
Fall 2:
return 2; // Erster Wiederholungsversuch, zwei Tage nach der ersten fehlgeschlagenen Rückbuchung
case 3:
return 3; // Zweiter Wiederholungsversuch, drei Tage nach dem ersten Wiederholungsversuch
Fall 4:
return 2; // Dritter Wiederholungsversuch, zwei Tage nach dem zweiten Wiederholungsversuch
Standard:
return $failureInterval;
}
}
add_filter("mm_billing_subscription_dunning_interval", "customDunningInterval", 10, 2);
Um die Mahnungsintervalle anzupassen, können Sie einfach die in den drei Case-Anweisungen zurückgegebenen Werte auf die gewünschte Länge in Tagen ändern.
Wenn Sie also die Zahlung 3 Tage, 5 Tage und dann 7 Tage nach jedem Versuch wiederholen möchten, würden Sie die Funktion wie folgt ändern:
function customDunningInterval($failureInterval, $failureState)
{
switch ($failureState)
{
Fall 2:
return 2; // Erster Wiederholungsversuch, drei Tage nach der ersten fehlgeschlagenen Rückbuchung
case 3:
return 3; // Zweiter Wiederholungsversuch, fünf Tage nach dem ersten Wiederholungsversuch
Fall 4:
return 2; // Dritter Wiederholungsversuch, sieben Tage nach dem zweiten Wiederholungsversuch
Standard:
return $failureInterval;
}
}
add_filter("mm_billing_subscription_dunning_interval", "customDunningInterval", 10, 2);