Durch die enge Verknüpfung von Magento und PayPal gibt es auch gewisse Nachteile für Shopbetreiber.
Einer davon ist, dass automatisch eine (fast) vollständige Gutschrift in Magento erstellt wird, ruft ein Kunde über PayPal sein Geld zurück. Fast daher, dass im Shop nachher nur noch ein geringer Teil (PayPal Gebühren) als nicht gutgeschrieben verbleiben. Leider -und das ist das wirklich nervige- gibt es nicht einmal eine Gutschrift in Magento, die über den automatisch ertatteten Betrag lautet.
Um diese nervige und automatische Rückmeldung von PayPal an Magent zu unterbinden, wird folgendes gemacht:
Im Ordner app/code/core/Mage/Sales/Model/Order die Datei Payment.php kopieren und in den (updatesicheren) Ordner app/code/local/Mage/Sales/Model/Order packen. Dort dann öffnen und nach Zeile
$serviceModel = Mage::getModel('sales/service_order', $order);
search (as. Line 775). Ab hier dann mit einem /** auskommentieren bis zu Zeile
$this->setCreatedCreditmemo($creditmemo);
(as. Line 811). Hinter diese Zeile dann **/ write.
Everything save and re-upload.
Nun sollte PayPal keine nachträglichen Änderungen am Shop machen. Die normalen Vorgänge wie Zahlung und Rückmeldung, ob Zahlung geklappt hat, geht aber natürlich weiterhin.
Used in Magento versions 1.4.1.1 bus 1.7.0.2.. Ask, Comments, Suggestions? Gladly!
Siehe hierzu auch: https://github.com/aligent/Magento-Paypalfixes u.a. auch ein entsprechender Fix für die oben genannte Problematik.
Should uncomment before or after “serviceModel = Mage::getModel(” begin? Before, or?
Regards,
Marcus