Das beliebte Shopsystem Magento bietet die Möglichkeit, Bestellungen auch manuell im Backend aufzugeben. Diese Funktion ist besonders für Unternehmen geeignet, die Bestellungen auch per Telefon aufnehmen. Möchte man dafür eine extra Zahlungsart nutzen, die Kunden bei einer Bestellung im Online-Shop nicht sehen sollen, stößt man allerdings schnell an die Grenze des Machbaren. Wir zeigen Ihnen, wie Sie dennoch eine Zahlungsart nur für das Backend freischalten können.

Wo finde ich die Einstellungen dafür in Magento?

Leider bietet das Shopsystem selbst im Backend keine Möglichkeit, den Ausgabeort von Zahlungsarten zu bestimmen. Dafür müssen Sie eine Anpassung im Code des Zahlungsmoduls vornehmen. Aber keine Angst, es handelt sich dabei nur um eine kleine Änderung.

Wie kann die Zahlungsart angepasst werden?

Jede Zahlungsart, die in einem Magento Shop integriert ist, sei es als extra Plugin oder als Core-Funktionalität, erweitert in jedem Fall die Klasse Mage_Payment_Model_Method_Abstract und kann deshalb auch auf folgende Klasseneigenschaften zugreifen:

$_canUseInternal
$_canUseCheckout

Während $_canUseInternal angibt, ob die Zahlungsart für manuelle Bestellungen im Backend genutzt werden kann, ist $_canUseCheckout dafür zuständig, dass die Zahlungsart für die Kunden im Frontend angezeigt werden darf. Diese Eigenschaften müssten also für die entsprechende Zahlungsart angepasst werden.

In welchem Verzeichnis finde ich die Zahlungsarten?

Der folgende Pfad soll als Beispiel für die Zahlungsart „Vorkasse“ dienen: „/app/code/core/Mage/Payment/Model/Method/Banktransfer.php“.

Damit Ihre Änderungen Updatefähig bleiben, empfiehlt es sich jedoch, die Klasse der Zahlungsart vorher in das entsprechende lokale Verzeichnis zu kopieren: „/app/code/local/Mage/Payment/Model/Method/Banktransfer.php“.

Durchführung der Änderung

Öffnen Sie die kopierte Datei mit einem Editor und ergänzen Sie die Klasse um folgende Eigenschaften:

protected $_canUseInternal = true;
protected $_canUseCheckout = false;

Speichern Sie die Datei und laden Sie diese zurück auf den Server, falls dies noch nicht passiert ist. Vergessen Sie auch nicht den Cache zu leeren, damit die Änderung überall korrekt angezeigt wird. Hat alles funktioniert, wird diese Zahlungsart dem Kunden im Frontend nun nicht mehr zur Auswahl angeboten. Bei der Aufgabe einer Bestellung im Backend sollte die Zahlungsart nun allerdings zur Verfügung stehen.

Mit anderen Zahlungsarten können Sie genau so verfahren. Ändern sie die genannten Eigenschaften einfach nach Belieben ab und erstellen Sie somit z.B. Zahlungsarten, die Sie für die telefonische Aufnahme von Bestellungen verwenden können. Wir wünschen Ihnen viel Erfolg.

Lesen Sie auch:

Magento 2 – Alle Neuerungen im Überblick Am 17. November wurde Version 2 der erfolgreichen Shopsoftware Magento offiziell vorgestellt. Mit der Magento Enterprise Edition 2.0 und der Magento Community Edition 2.0 steht die neue Version weiterhin in zwei Varianten für Endnutzer bereit und ka...
Magento – Wo ist der Button für den Bilduplo... In Hilfsforen, wie Stackoverflow, mehren sich schon seit einiger Zeit die Nachfragen zu einem bestimmten Problem, welches Magento betrifft. Viele Nutzer können keine Artikelbilder mehr hochladen, weil der entsprechende Upload-Button nicht angezeigt w...
Magento Sicherheitslücke: Mehr als 1000 deutsche O... Das Bundesamt für Sicherheit in der Informationstechnik (BSI) ließ vor kurzem verlauten, dass aktuell mehr als 1000 deutsche Online-Shops vom sogenannten "Online-Skimming" betroffen sind. Bei dieser Methode werden beim Bestellvorgang Zahlungsinformat...
Magento – Keine Blöcke nach Update auf Versi... Nach dem Magento Update auf Version 1.9.2.3 oder die Installation des Security Patches SUPEE-7405, kann es passieren, dass bestimmte Blöcke in Ihren Shop Templates nicht mehr angezeigt werden. Dies ist jedoch kein Bug, sondern ein neues Sicherheitsfe...