Wer häufiger direkte Bestellungen über das Backend aufnimmt und z.B. telefonische Kreditkartenbuchungen durchführt, dem wird auffallen, dass es schwierig ist eine der vorhandenen Zahlungsmethoden zu nehmen. Schön wäre daher eine Zahlungsmethode z.B. “Zahlung per telefonischer Kreditkartenbuchung”, die nur den Administratoren nicht aber den Shopbesuchern zur Verfügung steht.
Es gibt hier viele Extensions und Anleitungen, um dies hinzubekommen. Die einfachste und daher hier auch dargestellte ist aber folgende:
Wir verwenden für die “neue” Zahlungsmethode die von Magento mitgebrachte Methode “Purchase Order”. Deren Code lautet “purchaseorder”.
Nun wird die
methods.phtml des jeweiligen Templates geöffnet. Z.B. im Ordner
app/design/frontend/[base oder default]/[IhrTemplate]/template/checkout/onepage/payment
Dort dann folgende Zeile einfügen
<?php if($_code==”purchaseorder”){ continue; } ?>
Hier treffen wir wieder auf den o.g. Code. Soll es eine andere Zahlungsart sein, einfach den Code von dieser verwenden (lässt sich z.B. sehr einfach mit Firebug rausfinden).
Diese Zeile wird unter
<?php foreach ($this->getMethods() as $_method): $_code = $_method->getCode() ?>
und vor
<dt>
eingefügt.
Anschließend evtl. Cache leeren und die neue Zahlungsmethode taucht im Backend auf.
Noch ein Tipp:
Die Datei purchaseorder.phtml
aus dem Ordner
app/design/adminhtml/default/default/template/payment/form
nehmen und den Bereich
<li>
<div class=”input-box”>
<label for=”po_number”><?php echo Mage::helper(‘payment’)->__(‘Payment by phone’) ?> <span class=”required”>*</span></label><br/>
<input type=”text” id=”po_number” name=”payment[po_number]” title=”<?php echo Mage::helper(‘payment’)->__(“Payment by phone”) ?>” class=”required-entry input-text” value=”<?php echo $this->getInfoData(‘po_number’) ?>”/>
</div>
</li>
auskommentieren oder löschen. Somit wird im Backend dann die Input Box mit der Auftragsnummer nicht mehr benötigt und auch nicht mehr angezeigt.
Um dann vollkommen abzuschließen noch die Übersetzungen anpassen. Also entweder den leichten Weg gehen und “Purchase Order” so übersetzen wie man es will oder die entsprechenden Dateien ändern, dass dort nicht mehr “Purchase Order” sondern z.B. “Payment by phone” o.ä. zu übersetzen ist.
Genutzt in Magento Version 1.4.1.1 Kommentare? Ergänzungen? Hinweise? Gerne!
Gute Anleitung, danke!
Das eigentliche Problem bei der Umsetzung der Möglichkeit zur telefonischen Bestellaufnahme ist aber, dass z.B. Zahlung per Kreditkarte nicht wirklich im Backend unterstützt wird. Die Anbeiter, die ich kenne, unterstützen das jedenfalls nicht. Denn es reicht ja nicht, einfach die Kreditkartendaten aufzunehmen – man muss diese ja auch gleich wie im Frontend auch eingeben und verifizieren können.
VG, Robert
Das hängt dann aber vom Kreditkartenabwickler ab. Bekannt sind uns zwei Möglichkeiten: Auf der einen Seite direkt im Backofficebereich des Kundenaccounts beim KK Abwickler. Dort können Buchungen vorgenommen werden und auf der anderen Seite gibt es bei einigen Anbietern eine kleine Software, mit der direkt vom Desktop aus die Buchung vorgenommen werden kann.