PayPal IPN

Top  Previous  Next

clip10093

This shopping cart software is certified by PayPal.

 

PayPal payment integration is set in the AShop Administration Panel through Configuration > Payment.

 

To add PayPal gateway service as a payment option;

 

1.Open the Administration Panel, select Configuration, and then Payment.

 

2.Click on the drop-down Payment Gateway box, select PayPal and click Add.

 

3.Enter the Merchant ID for your PayPal account (e-mail address). PayPal Instant Payments require a verified business account. The PayPal e-mail address must also be the primary e-mail address for the PayPal account.

 

You must use your primary PayPal ID, which is case sensitive! If the PayPal account ID set within AShop is a verified business account address, but is not THE primary e-mail address for the PayPal account, PayPal will accept the payment, but the response codes from PayPal will list the primary address instead of the one that is set in AShop. As part of the product file download security, the order will not be recorded and a password is not generated unless the addresses match EXACTLY.  The PayPal IPN system is case sensitive, which means that the email address must set in AShop exactly as it is set for the PayPal account. For example: yourname@yourdomain.com is NOT the same as YourName@yourdomain.com.

 

4.The SSL URL to logo image is for the logo that is displayed within the PayPal secure payment forms and receipts. If you don't have access to SSL, leave this blank for the PayPal logo to appear at the upper left of the PayPal pages. You may enter the URL to a logo image that is not SSL, but an annoying message will appear between each PayPal page to alert your customer that there are secure and non-secure files being loaded.

 

5.Instant Payment Notification (IPN) must be turned on within your PayPal.com account settings for orders to be completed and notices to be sent by AShop after payment is received! Login to your PayPal account and select Profile, then select Instant Payment Notification Preferences. Check the box to activate IPN and enter the URL to your order.php script. For example; http://www.your_domain/ashop/order.php

 

Note: AShop resets the payment response code URL for each transaction when the PayPal payment window is first opened. This overrides the URL that is set within the PayPal account settings so that multiple installations of AShop can use the same PayPal account.

 

 

Other notes about PayPal

 

Collecting the customer's phone number when using the PayPal payment option is possible through a setting in the PayPal account. After logging in at paypal.com, click profile, click website payment preferences, select "contact telephone on (optional field)" and finally click save.
Set the language in the PayPal payment page by adding an extra field parameter in the admin/gateways/paypal.gw. Add the lc parameter as a hidden field in the section $gw_extrafields. ("lc" is abbreviation for locale.)

Example, to set American English language, add the following.

<input type=\"hidden\" name=\"lc\" value=\"US\">";

Here are a few lc values supported by PayPal:

DE = German

ES = Spanish

FR = French

IT = Italian

JP = Japanese

US = American English

The locale in the shipping address sets the language in the PayPal payment page. For example, if you sell shippable products and the customer selects Spain for the country field in the shipping information page, the language (lc value = ES) parameter will automatically be sent to PayPal to select Spanish for the payment page. This value overrides the value that is set in the paypal.gw file. If you want Spanish language in the PayPal payment page for downloadable products you will need to add an extra hidden field named: "lc" with the value: "ES" in the gateways/paypal.gw file. To override this feature and force the language to always be the same, remove the "lc" value for the $gw_country variable in the paypal.gw file. Then, the added hidden field (lc value = ES) will always will set the lc parameter to "ES" regardless of the shipping destination.

Find this line of code: $gw_country = "lc";

Remove the lc setting: $gw_country = "";

Curl with SSL - PayPal and some other payment gateways require Curl with SSL to be available. There will be an error during the payment process if Curl with SSL fails. See also: PayPal Curl Error