Rechnungsbeschaffung für manuelle / telefonische Bestellungen, bei denen die Zahlung außerhalb von Magento erfolgt

magento.stackexchange https://magento.stackexchange.com/questions/6551

Frage

Ob dies der Logik der Bestellverarbeitung von Magento widerspricht, ich habe nicht ganz ausgearbeitet ...

Ein Kunde nimmt eine Reihe von Telefonbestellungen an und enthält seine Zahlung über ein Portal Dritter oder über ein Handheld -PDQ -Terminal. Anschließend werden die Bestellungen in Magento ohne Zahlungsmethode erhöht.

Bestellungen ohne Zahlungsmethode scheint es nicht möglich zu sein, Rechnungen für ... zu generieren?

Was wäre der empfohlene Ansatz zur Implementierung der Fähigkeit, Rechnungen für diese Art von Bestellungen zu erhöhen? Die bereitgestellte Verlängerung des Gebrauchs von Payment Gateway bietet keine Möglichkeit, diese Arten von Bestellungen zu verarbeiten.

Würde es einen Umfang geben, um zu versuchen automatisch die Rechnung generieren Für Bestellungen, wo es vielleicht keine Zahlungsmethode ausgewählt hat, würde dies funktionieren?

Oder wäre es möglich, eine Methode zu implementieren, mit der Sie jederzeit gegen eine Bestellung eine Rechnung manuell erstellen können?

Danke im Voraus.

War es hilfreich?

Lösung

Wenn ich also Ihre Frage korrekt stelle, wird die Bestellung in Magento über die Admin -Schnittstelle manuell erstellt?

Ich habe das nicht selbst gemacht, kann also keine genauen Details geben, aber ich denke, Sie müssen eine "Offline -Erfassung" durchführen

Siehe diese Seite: http://www.magentocommerce.com/wiki/welcome_to_the_magento_user_s_guide/chapter_8

Aus der angegebenen Seite:

Offline Capture - Wenn die Rechnung eingereicht wird, erfasst das System die Zahlung nicht. Es wird angenommen, dass die Zahlung direkt über das Gateway erfasst wird, und Sie haben nicht mehr die Möglichkeit, diese Zahlung über Magento zu erfassen. Sie haben die Möglichkeit, ein Kredit -Memo zu erstellen, aber Sie haben nicht die Möglichkeit, die Rechnung zu ungültig (obwohl die Bestellung eine Online -Zahlung verwendet hat, die Rechnung ist im Wesentlichen eine Offline -Rechnung).

Additonal, Dieser Blog -Beitrag Von Inchoo zeigt, wie man es über Code macht:

Für die Vollständigkeit (da Links vom Netz (Keuchen) verschwinden) ist hier der Code:

(Beachten Sie, dass dies der Blog -Eintrag von Inchoo ist, kein Kredit für mich.)

Vielleicht möchten Sie eine Rechnung aus einem benutzerdefinierten Skript oder über Cron -Skript erstellen. Hier ist ein sehr nützliches Beispiel für Code. Zunächst müssen wir eine Bestellung über das Modell „Vertrieb/Bestellung“ laden, dies ist sehr einfach.

try {
if(!$order->canInvoice())
{
Mage::throwException(Mage::helper('core')->__('Cannot create an invoice.'));
}
$invoice = Mage::getModel('sales/service_order', $order)->prepareInvoice();
if (!$invoice->getTotalQty()) {
Mage::throwException(Mage::helper('core')->__('Cannot create an invoice without products.'));
}
$invoice->setRequestedCaptureCase(Mage_Sales_Model_Order_Invoice::CAPTURE_ONLINE);
$invoice->register();
$transactionSave = Mage::getModel('core/resource_transaction')
->addObject($invoice)
->addObject($invoice->getOrder());
$transactionSave->save();
}
catch (Mage_Core_Exception $e) {
}

Sie werden feststellen, dass wir die Option für die Online -Capture festgelegt haben. Diese Option hängt von der Zahlungsmethode ab. Einige Zahlungsmethoden unterstützen die Capture online und andere nicht. Wenn Sie Capture Offline festlegen möchten, können Sie dies mit dem nächsten Zeilencode tun:

$invoice->setRequestedCaptureCase(
Mage_Sales_Model_Order_Invoice::CAPTURE_OFFLINE
);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top