LearnWebDesignOnline.com is proudly hosted by Hostmonster.com

In this tutorial, we are going to configure Zen-Cart with PayPal's Website Payments Standard payment module so that Zen-Cart eCommerce site can process credit/debit cards and Paypal purchases using the PayPal Website Payments Standard. Using Website Payment Standard is different than using Website Payment Pro as explained in this tutorial. Website Payment Standard is the easier implementation and is the implementation where the customer is re-directed to Paypal's hosted page for credit/debit card input. Your Paypal account should be in "Verified" status and account type of "business" or "premier".
The process involves configuration in both your PayPal account as well as in the Zen-Cart administrative control panel
1. Log into Zen-Cart administration.
2. Select "Modules -> Payment" from the menu and click on "PayPal IPN - Website Payments Standard" to select that.

3. Note the "Instant Payment Notification Preferences URL" as shown. It looks something like http://www.example.com/ipn_main_handler.php (where example.com would typically be the domain name of your Zen-Cart site).
4. Note the "Automatic Return URL" (for example: http://www.example.com/index.php?main_page=checkout_process)
5. Now Log into your PayPal account.
6. In PayPal, click Profile and then Instant Payment Notification Preferences. Click "Edit IPN Settings". In the Notification URL field, enter the "Instant Payment Notification Preferences URL" as noted in step 3 above. Select "Receive IPN Messages (Enabled)". And click Save button.
7. In PayPal, click Profile and then Website Payment Preference. Select Auto Return to "on". And enter the Automatic Return URL as noted in step 4 above.
8. Select Payment Data Transfer to "On" and note the Identity Token.
9. For Encrypted Website Payment, set to "Off". For PayPal Account Optional, set to On. For Contact Telephone Number, set to "Off". For Express Checkout Settings, set to "No" (unless you are using giropay). Click Save to the Website Payment Preferences page.
10. In PayPal, determine the primary email address associated with the Paypal account by going to Profile and then click Email. Write down the email address that has the status of "Primary" next to it. Make sure you note the exact capitalization of the spelling of the email address.
This primary PayPal email is the one that is used to connect ZenCart with PayPal and is typically not exposed to customers. The email address that is presented to the customers in the PayPal receipt to the customer is the "customer service email" address that you had specified in PayPal under "Profile -> Business Information -> Customer Service Email". However, if you did not specify an email address in the Customer Service Email, then PayPal will present the primary PayPal email to your customer.
11. In Paypal, review your Business information (such as your Business Name) listed in your Paypal account by going to Profile and "Business Information". Remove all tax settings, under "Profile -> Sales Tax". Turn off all shipping settings under "Profile -> Shipping Calculations" and "Profile -> Shipping Preferences".
12. Back in the Zen-Cart admin, click the "install" button for "PayPal IPN - Website Payments Standard".

13. Set the payment module to True as shown...

14. Enter the PayPal's primary email address as noted in step 10 above.
15. Enter the Identity token as noted in step 8 above.
16. Set the currency.
17. For the rest of the setting, leave the default choice as shown...

18. Make sure Debug mode is set to "Off" and click "Update" button.

19. You should see a green dot for "PayPal IPN - Website Payments Standard" as shown...

20. Your Zen-Cart should now be able to process order with funds going into your Paypal account. However, you need to test this by making a real purchase on your site. You do this by adding a test product with a small price (say $1) to your Zen-Cart site. Then create a customer account and purchase the product with a credit/debit card that is not associated with your PayPal account. Note that you can not use the same PayPal account to purchase the product because Paypal does not allow you to "pay yourself". Similarly, the credit card you use to perform this test should not be a card that is listed in your Paypal account under "Profile -> Credit/Debit Cards".
If the test purchase is successful, you should see the transaction of funds transferred to your Paypal account when you login into your Paypal account. In Paypal under "History -> IPN History", you should see a record of the transaction. And in Zen-Cart admin under "Customers -> PayPal IPN", you should also see a completed transaction. From the perspective of a customer, the customer should receive an email from PayPal saying that customer has sent funds to merchant. And Zen-Cart should have sent an "order confirmation" email to customer. From the perspective of the merchant, PayPal should have sent an email to merchant saying that merchant had received money in Paypal account. And Zen-Cart should have sent email to merchant saying that merchant had received new order.
For additional reference, see Zen-Cart Wiki on Setting up PayPal Payment module and ask the Zen-Cart forum if you run into any questions.
