News Tools

WooCommerce Subscriptions 9.2.0: Proration für physische Produkte und neue Einstellungen

Wer Abo-Produkte über WooCommerce verkauft, sollte sich das Update auf Subscriptions 9.2.0 genauer ansehen. Die neue Version der Extension, die das WooCommerce-Team diese Woche über den Developer Blog angekündigt hat, ändert gleich mehrere Verhaltensweisen im Admin-Bereich – und eine davon kann beim Zurückrollen auf ältere Versionen still Einstellungen überschreiben.

Das Release erscheint gut vier Monate, nachdem der Subscriptions-Kern vollständig in die Extension gewandert ist. Seitdem laufen alle Funktionen und Updates ausschließlich über das Plugin selbst. Version 9.2.0 setzt diese Konsolidierung fort und baut den Einstellungs-Tab unter WooCommerce → Einstellungen → Subscriptions technisch neu auf.

Was ändert sich bei der Proration physischer Produkte?

Die wichtigste Neuerung für Shopbetreiber: Proration funktioniert ab sofort auch für physische Produkte. Bislang ließen sich die Optionen „Wiederkehrende Zahlung anteilig berechnen“ und „Abo-Laufzeit anteilig berechnen“ nur auf virtuelle Produkte anwenden. Wer etwa ein monatliches Pflegepaket oder einen Kaffee im Abo verschickt und Kunden Upgrades zwischen Tarifen erlaubt, kann jetzt faire Zwischenabrechnungen konfigurieren.

Technisch geschieht das über zwei neue Werte für die bestehenden Filter: physical-upgrade berechnet nur Upgrades anteilig und lässt Downgrades unangetastet, physical proriert in beide Richtungen. Bestehende Einstellungen bleiben unverändert – die Änderung ist rein additiv.

Vorsicht beim Downgrade: Rollt ein Shop zurück auf 9.1.0 oder älter, erkennt die alte Version die neuen Werte nicht. Speichert ein Admin den Einstellungsbereich dann, ohne das leere Dropdown neu zu befüllen, wird die Proration still auf „Nein“ gesetzt.

Gifting, manuelle Zahlungen und härtere Rechteprüfung

Die Geschenk-Option für Abos wandert vom globalen Schalter auf Produktebene. Der bisherige Standard „für alle Produkte aktiviert“ entfällt; stattdessen steuern Händler Gifting pro Produkt über einen Meta-Wert, ein Bulk-Edit im Produkt-Listing macht die Massenpflege möglich. Shops mit aktiviertem Store-Default erhalten eine Hintergrundmigration, die den Wert auf bestehende Produkte schreibt. Wer Gifting deaktiviert hatte, muss nichts tun.

Eine zweite Korrektur betrifft manuelle Verlängerungen. Die Option „Automatische Zahlungen deaktivieren“ konnte ein Abo bislang in den manuellen Modus zwingen, selbst wenn die übergeordnete Einstellung „Manuelle Verlängerungen akzeptieren“ ausgeschaltet war – ein Widerspruch, den 9.2.0 auflöst. Beide Einstellungen müssen jetzt aktiv sein; eine Upgrade-Routine korrigiert betroffene Shops automatisch, ohne das bisherige Verhalten zu ändern.

Auf der Sicherheitsseite bekommt das Entfernen von Positionen aus einem Abo eine echte Capability-Prüfung. Bisher wurde das Besitzerrecht eher lax durchgesetzt; jetzt prüft die Funktion wcs_can_items_be_removed() eine dedizierte Berechtigung. Sichtbare Folge: Empfänger verschenkter Abos sehen den Entfernen-Button im Kundenkonto nicht mehr. Zusätzlich erhalten Entfernen- und Reaktivierungs-Links eigene Nonces – Links aus der Zeit vor 9.2.0 verlieren ihre Gültigkeit. Wer Kunden gerade per Mail zum Reaktivieren eingeladen hat, sollte die Kampagne nach dem Update erneut ausspielen.

Was müssen Entwickler und Agenturen jetzt prüfen?

Für Agenturen und Plugin-Entwickler hält das Release drei Baustellen bereit. Erstens registriert sich der Einstellungs-Tab künftig über woocommerce_get_settings_pages statt über das alte Tab-Array; die REST-Felder unter /wc/v3/settings/subscriptions laufen über eine neue Klasse, die Vorgängerin ist deprecated. Zweitens wird das Feld für maximale Kunden-Sperrungen von einem Select auf ein Zahlenfeld umgestellt – der bisherige Range-Filter wird ignoriert. Drittens hängt sich die neue Settings-Klasse mit Priorität 1 statt der üblichen 10 in den Render-Hook; eigener Code, der nach dem Core-Output laufen soll, braucht eine Anpassung.

Kleiner, aber spürbar im Alltag: Das Plan-Selector-Skript von All Products for WooCommerce Subscriptions lädt nicht mehr automatisch auf jeder Seite. Custom Templates, AJAX-Fragmente oder Quick-View-Modals müssen es künftig selbst über WCS_ATT_Display::enqueue_frontend_script() einbinden.

Der Rat bleibt der übliche, hier aber besonders berechtigt: Update zuerst auf der Staging-Umgebung, Proration-Einstellungen dokumentieren, und wer einen Rollback plant, speichert danach keinen Einstellungsbereich ungeprüft. Für Shops mit Gifting-Abo oder physischen Abo-Boxen lohnt die 9.2.0 trotzdem – die pro-Produkt-Steuerung und die physische Proration schließen Lücken, die viele Händler bislang mit Workarounds geflickt haben.