Hi. Please correct me if I am wrong, but the changes made to file app/code/core/Mage/Paypal/Model/Ipn.php in SUPEE-8167 do not appear to be included in the full release of 1.9.3.3. Can anyone please confirm this?
Solved! Go to Solution.
Alright... just compared 1.9.3.3 to 1.9.3.2... and the new PP API seems to be included.
NEW in 1.9.3.3, app\code\core\Mage\Paypal\Model\Config.php:
/** * Get postback endpoint URL. * * @return string */ public function getPostbackUrl() { return sprintf('https://ipnpb.%spaypal.com/cgi-bin/webscr', $this->sandboxFlag ? 'sandbox.' : ''); } /**
NEW in 1.9.3.3 magento\app\code\core\Mage\Paypal\Model\Ipn.php
$postbackUrl = $this->_config->getPostbackUrl();
OLD:
$postbackUrl = $this->_config->getPaypalUrl();
However, there could be other files involved, cause it doesn't make any sense why the patch couldn't just patch a few simple lines in both those files above, rather than introducing a bunch of different code...
@jon7day wrote:Hi. Please correct me if I am wrong, but the changes made to file app/code/core/Mage/Paypal/Model/Ipn.php in SUPEE-8167 do not appear to be included in the full release of 1.9.3.3. Can anyone please confirm this?
Only change to lpn.php in the full 1.9.3.3 release was this
$postbackUrl = $this->_config->getPaypalUrl();
Changed to :
$postbackUrl = $this->_config->getPostbackUrl();
What is missing ?
Unless the PayPal updated API changes are located in some other files, 1.9.3.3 does NOT include the latest PP API.
This definitely doesn't exist in 1.9.3.3:
/** + * Default postback endpoint URL. + * + * @var string + */ + const DEFAULT_POSTBACK_URL = 'https://ipnpb.paypal.com/cgi-bin/webscr'; + + /** + * Sandbox postback endpoint URL. + * + * @var string + */ + const SANDBOX_POSTBACK_URL = 'https://ipnpb.sandbox.paypal.com/cgi-bin/webscr'; +
Making matters worse, looks like the "Magento 1.9.3.2" (only currently available that's closest to 1.9.3.3) patch won't even fully work on 1.9.3.3:
./PATCH_SUPEE-8167_EE_1.14.1.0_1.14.3.2_v1-2017-05-08-02-42-22.sh Checking if patch can be applied/reverted successfully... ERROR: Patch can't be applied/reverted successfully. checking file app/code/core/Mage/Paypal/Model/Ipn.php Hunk #2 FAILED at 146. Hunk #3 succeeded at 191 (offset 1 line). 1 out of 3 hunks FAILED
and...
$postbackUrl, which is used in 1.9.3.3 is completely removed via the patch....
@@ -132,14 +146,15 @@ class Mage_Paypal_Model_Ipn */ protected function _postBack(Zend_Http_Client_Adapter_Interface $httpAdapter) { + $url = $this->_getPostbackUrl(); + $postbackQuery = http_build_query($this->_request) . '&cmd=_notify-validate'; - $postbackUrl = $this->_config->getPaypalUrl(); - $this->_debugData['postback_to'] = $postbackUrl; + $this->_debugData['postback_to'] = $url; $httpAdapter->setConfig(array('verifypeer' => $this->_config->verifyPeer)); $httpAdapter->write( Zend_Http_Client::POST, - $postbackUrl,
Alright... just compared 1.9.3.3 to 1.9.3.2... and the new PP API seems to be included.
NEW in 1.9.3.3, app\code\core\Mage\Paypal\Model\Config.php:
/** * Get postback endpoint URL. * * @return string */ public function getPostbackUrl() { return sprintf('https://ipnpb.%spaypal.com/cgi-bin/webscr', $this->sandboxFlag ? 'sandbox.' : ''); } /**
NEW in 1.9.3.3 magento\app\code\core\Mage\Paypal\Model\Ipn.php
$postbackUrl = $this->_config->getPostbackUrl();
OLD:
$postbackUrl = $this->_config->getPaypalUrl();
However, there could be other files involved, cause it doesn't make any sense why the patch couldn't just patch a few simple lines in both those files above, rather than introducing a bunch of different code...
Ok, here, I think, is the final verification that the latest PP API changes are INCLUDED in 1.9.3.3, as described in its release notes:
http://devdocs.magento.com/guides/m1x/ce19-ee114/ce1.9_release-notes.html
*** QUOTE: ***
Magento CE 1.9.3.3 Release Notes
...
Support for PayPal's update to its Instant Payment Notification (IPN) server URL. PayPal provides more information about this feature in IPN Verification Postback to HTTPS Microsite. This update is essential for retaining uninterrupted service after June 30.
SUPEE-8167, an older patch that also contains this fix, was added on May 8, 2017, and is available from Magento Tech Resources.
*** END / QUOTE ***
thanks duntuk.
As you say, it does seem a bit odd that the patch did not apply the same changes as the full 1.9.3.3 version.