PayPal (IPN and custom field used by other script)

The faster, safer way to send money, make an online payment, receive money or set up a merchant account.

PayPal integrates using IPN callback even if the callback and custom field is used by another system (e.g. shopping cart). Because of this you will have to attach the cookie value to the original notification URL and later to re-send it to your Post Affiliate Pro.


Paypal button

The first step is to make sure that each paypal button has the notify_url field. You have to add this code to the notify_url field, in every button:

So the field looks like this:
<input name="notify_url" value="" id="pap_ab78y5t4a" />

<script id="pap_x2s6df8d" src="http://URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript"></script>
<script type="text/javascript">PostAffTracker.setAccountId('Account_ID');
PostAffTracker.writeCookieToCustomField('pap_ab78y5t4a', '', 'pap_custom');

This way we are sending the tracking cookie value to the processing script so we could use the value when sale is processed.


Integration with your IPN processing script

Now the IPN callback is pointed to your script. This callback has to be forwarded also to Post Affiliate Pro paypal.php script http://URL_TO_PostAffiliatePro/plugins/PayPal/paypal.php. In case your PayPal processing script is PHP, you can use the following code to accomplish that. You can place it at the beginning of your processing file or beginning of the processing function.

/* Post Affiliate Pro integration snippet */
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://URL_TO_PostAffiliatePro/plugins/PayPal/paypal.php?pap_custom=".$_GET['pap_custom']);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST);
/* /Post Affiliate Pro integration snippet */

This is it. Your PayPal is now integrated.

This is all that is required. Now whenever there's a sale, PayPal will use its IPN function to call your script and from there, the IPN data will be redirected to our sale tracking script, so the system will generate a commission for appropriate affiliate.

If you have more buttons at one page, you should only insert the id values into each button. The script tag should only be inserted once per page. It can be anywhere in body of the page.