WP eStore is a Simple Shopping Cart Plugin to sell digital (ebook, mp3, photos) and non digital products from your wordpress blog through PayPal or some other payment gateways. The digital goods are automatically delivered to the buyer after purchase using encrypted and time limited download links.


Integration with PayPal

Login to your FTP and navigate to your wordpress directory wp-content/plugins/wp-cart-for-digital-products/lib/gateway/ and edit file PaymentGateway.php
Find function submitPayment2() and replace whole foreach block with this code instead:

foreach ($this->fields as $name => $value) {
  $id = '';
  if ($name == 'notify_url') $id='id="pap_ab78y5t4a"';
  echo "<input type="hidden" name="$name" value="$value" $id/>";
echo '<script id="pap_x2s6df8d" src="//URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript">
<script type="text/javascript">';
echo "";
echo "PostAffTracker.writeCookieToCustomField('pap_ab78y5t4a','', 'pap_custom');

That's it. Save your work and check if the paypal buttons (forms)  in your page contain the  id="pap_x2s6df8d"  string in the notify_url field. If they do, then  continue with step 3 .

If the id="pap_x2s6df8d"  can't be found in the notify_url field, then continue with step 2 .


Integration with PayPal - alternative solution

If the instructions in step no. 1 did not work out for you, then most probably you will have to modify the following file:


and in that file you will have to locate the print_eStore_buy_now_button($id,$button='',$nggImage='') and/or print_eStore_subscribe_button_form($id) 

function and in that function replace

_$urls .= '<input type="hidden" name="notifyurl" value="'.$notify.'" />';

with this:

_$urls .= '<input id="pap_ab78y5t4a" type="hidden" name="notifyurl" value="'.$notify.'" />';

and then into the footer.php file of your WP theme add the following code:

<!--PAP Integration starts here-->
<script id="pap_x2s6df8d" src="//URL_TO_PostAffiliatePro/scripts/trackjs.js" type="text/javascript">
<script type="text/javascript">
PostAffTracker.writeCookieToCustomField('pap_ab78y5t4a', '', 'pap_custom');
<!--PAP Integration ends here-->

Now check the code of the paypal button (form) in your page and if the notify_url field contains the id="pap_ab78y5t4a" string then continue to step no. 3 .


Integration with PayPal

Final step to integrate your WPeStore with PayPal is to set IPN redirection URL. All the data will be re-sent to your Post Affiliate Pro. Find and edit file wp-content/plugins/wp-cart-for-digital-products/paypal.php and then find function _validateipn(). Insert the following code there:

/* Post Affiliate Pro integration snippet */
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $_POST);
/* /Post Affiliate Pro integration snippet */

That's it. Save your work and your paypal is integrated now. Do not forget to enable paypal plugin in your Post Affiliate Pro.

Do not forget to integrate your WordPress with the click tracking code - you can e.g. place it to your global footer file.