Search for:

Available article translations:

How to set up PayPal payment gateway to receive IPN messages from PayPal system

  • Parallels Plesk Panel 10.4 for Linux/Unix
  • Parallels Plesk Panel 10.3 for Linux/Unix
  • Parallels Plesk Panel 10.4 for Windows
  • Parallels Plesk Panel 10.3 for Windows


The PayPal payment processing system can send IPN messages only to standard HTTP (80) or HTTPS (443) ports. However the Customer & Business Manager component receives the same messages using only custom ports - 8880 for HTTP, 8443 for HTTPS. To forward PayPal notifications from standard ports to custom, you should add a proxying script to a publicly available website and specify the path to this script in the PayPal plugin settings.
We assume that you run Customer & Business Manager at and do not yet have the site. If this is the case, add a webspace and create the domain under it. If you already have the site, skip this preparatory step.


1. Open the document root of You can do so either by File Manager, FTP, SSH, or other ways.
2. In the directory, create a PHP file (i.e. paypalipn.php) with the following content:

$url = '';
$fields = $_POST;
if (count($fields) > 0) {
//url-ify the data for the POST
foreach ( $fields as $key => $value ) {
$fields_string .= $key . '=' . $value . '&';
rtrim ( $fields_string, '&' );

//open connection
$ch = curl_init ();

//set the url, number of POST vars, POST data
curl_setopt ( $ch, CURLOPT_URL, $url );
curl_setopt ( $ch, CURLOPT_POST, count ( $fields ) );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $fields_string );
curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, FALSE );

//execute post
$result = curl_exec ( $ch );
//close connection
curl_close ( $ch );
3. Make sure that this file is accessible at or
4. Open the PayPal payment gateway configuration page (All Settings > Payment Gateways > PayPal) in Customer & Business Manager and set the IPN URL to or


If the IPN messages are not received check check that PayPal site with paypalipn.php is resolved, available and executable via target URL (like and

7ba047ab67e17fa2d2ab89cebe818d10 49af2da0f2dd4c81e962790bbbd0c2b4 5fc602d72ea565f353b9320e2ef62a1b 04f1b0f9f311a40f2f06e7821a7faf9a 30b2fddafb3ec6d8d3f95576137b69ff 925cde259105f6a46124ed292a44de85 5d735c0e028ee5b991e4fb80d34fb87f 0324051e74e0392d1551a3b559b09eaa f34c301469402e4fb8cff760727ce92d 56797cefb1efc9130f7c48a7d1db0f0c

Was this article helpful?
Tell us how we may improve it.
Yes No
Desktop Virtualization
- Parallels Desktop 9 for Mac
- Parallels Transporter
- Parallels Desktop Switch to Mac Edition
- Parallels Desktop for Mac Enterprise Edition
- Parallels Management-Mac for Microsoft SCCM
Server Virtualization
- Parallels Cloud Server
- Parallels Containers for Windows 6.0 Beta
- Parallels Virtuozzo Containers
- Parallels Automation
- Parallels Automation for Cloud Infrastructure
- Parallels Business Automation Standard
- Parallels Virtual Automation
- Parallels Plesk Panel Suite
- Web Presence Builder
- Parallels Plesk Automation
- Parallels Small Business Panel
- Value-added Services for Hosters
- Parallels Partner Storefront
Services & Resources
- Cloud Acceleration Services
- Professional Services
- Support Services
- Training & Certification