2017-06-29 10 views
0

Ich habe ein sehr lang anhaltendes Problem mit PayPal Payments Pro in Magento. Wenn ein Kunde eine Bestellung mit PayPal Express tätigt, erhält er die Bestellungs-E-Mail nicht. Wenn ein Kunde mit Karte bezahlt, bekommen sie es ohne Probleme.Paypal Zahlung pro PayPal Express-Bestellung nicht senden Bestätigungs-E-Mail in Magento

Ich habe viel Zeit damit verbracht, dies ohne Freude zu untersuchen. Ich frage mich, ob andere Leute das gleiche Problem hatten und ob es jemand geschafft hat, es zu lösen. Ich betreibe Magento-Community 1.9.2.

Das IPN scheint ordnungsgemäß zu funktionieren, und es gibt keine Bestellungen in der E-Mail que.

Jede Hilfe würde dankbar geschätzt werden.

Antwort

0

PayPal Payment Pro nicht senden Bestätigungsmail-Funktion. Aber Sie können es erreichen, indem Sie Beobachter nach der Zahlung erhalten.

können Sie Ereignis checkout_onepage_controller_success_action verwenden. Dies kann verwendet werden, wenn Ihr Auftrag erfolgreich ist.

Es gibt ein weiteres Ereignis sales_order_payment_pay. Dies kann verwendet werden, wenn Ihr Auftrag erfolgreich ist. Es kann auch in Ihrem Fall verwendet werden.

1) Machen Sie kundenspezifische config.xml für den Anruf Beobachter Datei

Die config.xml definiert Ihr Modul und erklärt Ihren Event-Listener für ein bestimmtes Ereignis (checkout_onepage_controller_success_action wird gesendet, wenn der One-Page-Checkout-Prozess abgeschlossen ist. sales_order_payment_pay wird gesendet, wenn die Zahlung erfolgt wurde bestätigt).

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Namespace_Modulename> 
      <version>0.1.0</version> 
     </Namespace_Modulename> 
    </modules> 
    <frontend> 
     <events>    
      <sales_order_payment_pay> 
       <observers> 
        <Namespace_Modulename_Customevent> 
         <type>singleton</type> 
         <class>Namespace_Modulename_Model_Observer</class> 
         <method>customFunction</method> 
        </Namespace_Modulename_Customevent> 
       </observers> 
      </sales_order_payment_pay> 
     </events> 
    </frontend>  
</config> 

2)observer.php Datei in Ihrem Modul/Model Verzeichnis erstellen und fügen Sie diesen Code

<?php 
    class Namespace_Modulename_Model_Observer 
{ 
    public function customFunction(Varien_Event_Observer $observer) 
    { 

     $order_id = $observer->getData('order_ids'); 
     $order = Mage::getModel('sales/order')->load($order_id); 
     //your code here 


    }   

} 

hoffen, dass es hilfreich für Sie .