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: Bitdefender SSL Zertifikat sperrt Sie vom... Falls Sie bei der Anmeldung in Ihrem Magento Backend eine seltsame Fehlermeldung erhalten oder Ihr Browser plötzlich eine seltsame Datei mit dem Namen "Download" herunterlädt, dann sind Sie wahrscheinlich auch ein Nutzer der beliebten Internet-Securi...
Magento Tutorial: Geschenk mit Warenkorb Preisrege... Haben Sie schon einmal versucht, in Magento eine Warenkorb Preisregel zu erstellen, die es erlaubt, Ihren Kunden einen Geschenkartikel anzubieten? Dann haben Sie wahrscheinlich auch festgestellt, dass dies mit den hauseigenen Mitteln des beliebten On...
Achtung: Gefährliche Sicherheitslücke in Magento-P... Erneut macht eine gefährliche Sicherheitslücke, die das pouläre Online-Shop-System Magento betrifft, Schlagzeilen. Mindestens 8000 Installationen sollen betroffen sein. In der Vergangenheit gab es schon des Öfteren kritische Sicherheitslücken in de...
Achtung: Neue Sicherheitslücken in Magento Wie am Dienstag, dem 16. April 2015, bekannt wurde, gibt es neue Sicherheitslücken in der beliebten Shop-Software Magento. Es handelt sich hier um sogenannte remote code execution exploits, welche Angreifer dazu befähigen, Schadcode auf Ihrem Webserv...