Raising fattura per gli ordini manuali / telefoniche in cui il pagamento adottate al di fuori di Magento

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

Domanda

se questa sfida la logica di elaborazione degli ordini di Magento, non ho del tutto elaborati ...

Un client richiede un certo numero di ordini telefonici e prende il loro pagamento tramite un portale 3rd party o tramite un terminale palmare PDQ. Successivamente, gli ordini vengono allevati in Magento senza metodo di pagamento.

Gli ordini senza metodo di pagamento, a quanto pare, non è possibile generare fatture per ...?

Quale sarebbe l'approccio raccomandato per l'attuazione della capacità di fatture raise per questi tipi di ordini. La proroga di dal gateway di pagamento offerte utilizzate alcun modo per gestire questi tipi di ordini.

ci sarebbe alcuna possibilità nel tentativo di auto-generare la fattura per gli ordini di cui non v'è alcun metodo di pagamento scelto forse - sarebbe questo lavoro

?

O sarebbe possibile implementare un metodo che consente di creare manualmente una fattura in qualsiasi momento, a fronte di un ordine?

Grazie in anticipo.

È stato utile?

Soluzione

Quindi, se ho undertsand correttamente la tua domanda, l'ordine è creato manualmente in Magento tramite l'interfaccia di amministrazione?

Non ho fatto questo io stesso, in modo da non può dare dettagli precisi, ma penso che quello che devi fare un 'Capture Offline'

vedi questa pagina: http://www.magentocommerce.com/wiki/welcome_to_the_magento_user_s_guide/chapter_8

Dalla pagina data:

Capture Offline - Al momento della presentazione della fattura, il sistema non catturare il pagamento. Si presume che il pagamento sta per essere catturata direttamente attraverso la porta d'ingresso, e si avrà più la possibilità di catturare questo pagamento tramite Magento. Avrete la possibilità di creare una nota di credito, ma non si avrà la possibilità di invalidare la fattura (anche se l'Ordine utilizzato un pagamento online, la fattura è essenzialmente una fattura offline).

Additonally, questo post del blog dagli spettacoli Inchoo come farlo tramite il codice:

Per completezza (dal momento che i collegamenti scompaiono della rete (gasp)) qui è il loro codice:

(notare che questo è blog di Inchoo, nessun credito a me stesso)

Forse si vuole creare una fattura da parte di alcuni script personalizzato o tramite cron script. Ecco un esempio molto utile di codice. Prima di tutto, abbiamo deve caricare un po 'di ordine sopra il modello “vendite / ordine”, questo è molto facile.

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) {
}

Si noterà che abbiamo impostato l'opzione per l'acquisizione on-line. Questo opzione dipende dal metodo di pagamento. Alcuni cattura supporto metodi di pagamento on-line e alcuni non lo fanno. Se si desidera catturare set non in linea, si può fare che con la prossima linea di codice:

$invoice->setRequestedCaptureCase(
Mage_Sales_Model_Order_Invoice::CAPTURE_OFFLINE
);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top