Those who, after a seemingly successful upgrade from Magento 1.3.x to Magento 1.4.0.1, have problems with Magento acknowledging PayPal payments (changing order status from Pending Payment
to Processing
) and sending out New Order emails to their clients should do/check the following things:
In PayPal: Go to My Account -> Profiles -> More Options -> Instant Payment Notification Preferences -> Edit Settings and change instant payment notification (IPN) URL in PayPal IPN settings from:
http://www.yoursite.com/paypal/standard/ipn/
to:http://www.yoursite.com/paypal/ipn/standard/
In Magento admin panel: Go to Systems -> Configuration -> Payment Methods -> PayPal Website Payments Standard and check that
Payment Action
is set toSale
andNew Order
status toProcessing
In Magento code: In file
Ipn.php
located inapp/code/core/Mage/Paypal/Model/Ipn.php
find function:public function getIpnFormData($key = null)
comment out line://return isset($this->_ipnFormData[$key]) ? $this>_ipnFormData[$key] : null;
and add the following line immediately after it:return isset($this->_ipnFormData[$key]) ? urldecode($this->_ipnFormData[$key]) : null;
This should do it. Your order status should be changing fromPending Payment
toProcessing
and emails should work also.