My client had a trading account from Hong Kong, and we used Pro web hosting as a payment solution, since Paypal has no funds to make payments from the site itself, except (USA, UK and Canada).
This is hard coded in magento, I did not understand why.
To set up PayPal with your account,
In the folder of your website, navigate, (version 1.7.0.2 is used here) {installation folder} / app / code / core / Mage / Paypal / Model
open the file "HostedPro.php"
Below you will find a function,
public function getNotifyUrl($storeId = null) { return $this->_getUrl('paypal/ipn', $storeId, false); }
This function sets the ipn value for hosting Pro. Similarly, you can find ipn values for other payment methods (express, standard, etc.) in this folder. Either change it to the desired value as set in your PayPal account or change it from these (magento) files. I chose the first option, and it worked. After that, your order status should be changed.
source share