Difference between revisions of "Draft:PayPal"

From X-Cart 4 Classic
Jump to: navigation, search
m (Enabling PayPal payment methods at your X-Cart store)
m (PayPal Payments Pro)
 
(31 intermediate revisions by the same user not shown)
Line 24: Line 24:
  
 
===== PayPal Payments Standard =====
 
===== PayPal Payments Standard =====
 +
(also known as ''Website Payments Standard'' outside the U.S.)
  
 
PayPal Payments Standard is a simple all-in-one PayPal solution that allows you to accept credit card and PayPal payments securely. Your customers shop on your website and checkout on PayPal. The process is as follows: Customers who select PayPal as a payment method are redirected to PayPal website. There they can log in to an existing PayPal account and pay using that account, or choose to pay without logging in - simply by providing the details of a credit card or a bank account. Then such customers return to your store site where they see a confirmation page. The process of checking out through PayPal Payments Standard is presented in the scheme below:
 
PayPal Payments Standard is a simple all-in-one PayPal solution that allows you to accept credit card and PayPal payments securely. Your customers shop on your website and checkout on PayPal. The process is as follows: Customers who select PayPal as a payment method are redirected to PayPal website. There they can log in to an existing PayPal account and pay using that account, or choose to pay without logging in - simply by providing the details of a credit card or a bank account. Then such customers return to your store site where they see a confirmation page. The process of checking out through PayPal Payments Standard is presented in the scheme below:
Line 29: Line 30:
 
[[Image:paypal1.png |center]]
 
[[Image:paypal1.png |center]]
  
More information about PayPal Payments Standard is available [https://www.paypal.com/webapps/mpp/referral/paypal-payments-standard?&partner_id=RDGQCFJTT6Y6A here].
+
More information about PayPal Payments Standard is available [https://www.paypal.com/webapps/mpp/paypal-payments-standard here] and [https://www.x.com/developers/paypal/products/paypal-payments-standard here].
  
 
===== PayPal Payments Advanced =====
 
===== PayPal Payments Advanced =====
 
PayPal Payments Advanced is an all-in-one PayPal solution that enables you to keep customers on your site for the entire checkout process without the full burden of protecting their financial data. With this solution you get a secure checkout template from PayPal that is integrated within your website and allows your customers to enter their payment information on PayPal without actually leaving the store website. Your customers won't even know that PayPal is processing their payment, making your business look more secure and professional. With PayPal Payments Advanced, PCI DSS compliance is made easy for you because payments are handled not by your site directly, but by PayPal.  
 
PayPal Payments Advanced is an all-in-one PayPal solution that enables you to keep customers on your site for the entire checkout process without the full burden of protecting their financial data. With this solution you get a secure checkout template from PayPal that is integrated within your website and allows your customers to enter their payment information on PayPal without actually leaving the store website. Your customers won't even know that PayPal is processing their payment, making your business look more secure and professional. With PayPal Payments Advanced, PCI DSS compliance is made easy for you because payments are handled not by your site directly, but by PayPal.  
  
More information about PayPal Payments Advanced is available [https://www.paypal.com/webapps/mpp/referral/paypal-payments-advanced?&partner_id=RDGQCFJTT6Y6A here].
+
More information about PayPal Payments Advanced is available [https://www.paypal.com/webapps/mpp/paypal-payments-advanced here] and [https://www.x.com/developers/paypal/products/paypal-payments-advanced here].
  
 
===== PayPal Payments Pro =====
 
===== PayPal Payments Pro =====
 +
(also known as ''Website Payments Pro'' outside the U.S.)
  
PayPal Payments Pro is an all-in-one solution providing two payment capabilities:  
+
PayPal Payments Pro is an all-in-one solution available in two versions:
# Credit card processing with <u>Direct Payment</u>;
+
* PayPal Payments Pro (Direct Payment)
# PayPal payment processing with <u>Express Checkout</u>.
+
* PayPal Payments Pro (Payflow Edition)
  
Both the payment capabilities are available via X-Cart (for 4.4.5 and earlier versions). Direct Payment payment capability is also available via a special PA-DSS certified application - [[X-Payments:Introduction|X-Payments]].
+
Each of the versions provides two payment capabilities:
 +
# Credit and debit card payment;
 +
# PayPal payment with Express Checkout.
  
{{Note1|'''Important:''' Since X-Cart version 4.5.0, the Direct Payment payment capability is NOT available via X-Cart; it is available only via '''[[X-Payments:Introduction|X-Payments]]''' for [[X-Cart:PCI-DSS |PCI-DSS]] compliance. Express Checkout continues to be available via X-Cart.}}
+
With PayPal Payments Pro (Direct Payment) credit and debit card processing is done via PayPal's Direct Payment API (PayPal API), with PayPal Payments Pro (Payflow Edition) - via PayPal's Payflow API.
  
Below is more information about the Direct Payment and Express Checkout payment capabilities.
+
{{Note1|'''Important''': Credit and debit card processing with PayPal Payments Pro is available via X-Cart for users of X-Cart versions 4.4.5 and earlier. It is also available via a special PA-DSS certified application - '''[[X-Payments:Introduction|X-Payments]]'''.
 +
Starting with X-Cart version 4.5.0, X-Cart no longer collects or stores cardholder data - this functionality has been moved to '''[[X-Payments:Introduction|X-Payments]]''' to ensure easier [[X-Cart:PCI-DSS |PCI-DSS]] compliance for our clients. This means that, since X-Cart version 4.5.0, credit and debit card payments with PayPal Payments Pro are NOT available via X-Cart; they are available only via '''[[X-Payments:Introduction|X-Payments]]'''. Using Express Checkout does not involve collecting cardholder data, so PayPal payments via Express Checkout continue to be available via X-Cart.}}
  
<u>Direct Payment</u> is a method that allows your customers to pay you with a credit card without leaving your store's website. Customers enter their credit card information on your website, and the payment is processed in the background with PayPal's Direct Payment API. This way customers stay on your website throughout the entire process of checkout.
+
Below is more information about the PayPal Payments Pro payment capabilities:
 +
 
 +
With PayPal Payments Pro, customers can pay you with a credit or debit card without leaving your store's website. Customers enter their payment information on your website, and the payment is processed in the background with PayPal. This way customers stay on your website throughout the entire process of checkout.
  
 
You must understand that using Direct Payment involves your X-Cart store in handling and transferring credit card data to the payment gateway (PayPal). As per PCI-DSS requirements, this can be done only by a PA-DSS validated application. Unfortunately, X-Cart is not such an application. To enable you to meet PCI-DSS requirements, we offer a special PA-DSS validated application - X-Payments. It is a kind of "bridge" between your X-Cart store and the payment gateway (PayPal), which handles all credit card data supplied by the buyer, and transfers the sensitive data securely to the payment gateway (PayPal).
 
You must understand that using Direct Payment involves your X-Cart store in handling and transferring credit card data to the payment gateway (PayPal). As per PCI-DSS requirements, this can be done only by a PA-DSS validated application. Unfortunately, X-Cart is not such an application. To enable you to meet PCI-DSS requirements, we offer a special PA-DSS validated application - X-Payments. It is a kind of "bridge" between your X-Cart store and the payment gateway (PayPal), which handles all credit card data supplied by the buyer, and transfers the sensitive data securely to the payment gateway (PayPal).
  
<u>Express Checkout</u> is a fast and convenient method offering a "wallet" capability: your customers use the billing information stored in their PayPal accounts and do not have to enter their payment details or shipping information on your site. Because all the information required for order placement is pulled from PayPal, your customers may freely skip the step of logging in/getting registered at your store and complete the checkout process anonymously.  
+
Express Checkout is a fast and convenient method offering a "wallet" capability: your customers use the billing information stored in their PayPal accounts and do not have to enter their payment details or shipping information on your site. Because all the information required for order placement is pulled from PayPal, your customers may freely skip the step of logging in/getting registered at your store and complete the checkout process anonymously.  
  
 
When using Express Checkout, customers are redirected to PayPal website. There they can choose one of the two options:
 
When using Express Checkout, customers are redirected to PayPal website. There they can choose one of the two options:
 
# Log in and pay using their existing PayPal account info.
 
# Log in and pay using their existing PayPal account info.
 
# Pay with their debit or credit card as a PayPal guest, entering the payment info directly at PayPal side.
 
# Pay with their debit or credit card as a PayPal guest, entering the payment info directly at PayPal side.
 
Customers using the latter option can choose to save the payment info they entered to a new PayPal account, so they don't have to enter it each time they place an order.
 
  
 
Customer information is then passed from PayPal to the store and is used to complete the checkout process.
 
Customer information is then passed from PayPal to the store and is used to complete the checkout process.
  
With Express Checkout, all card-holder data processing is outsourced to and handled by PayPal, so from the viewpoint of handling and transferring credit card data your X-Cart store is PCI-DSS compliant.
+
With Express Checkout, all cardholder data processing is outsourced to and handled by PayPal, so from the viewpoint of handling and transferring credit card data your X-Cart store is PCI-DSS compliant.
  
The scheme below demonstrates how checkout works with Direct Payment and Express Checkout methods:
+
The graphic scheme below demonstrates how credit/debit card payments and PayPal payments via Express Checkout are processed with PayPal Payments Pro:
  
 +
[[Image:paypal2.png|center]]
  
[[Image:paypal2.png|center]]
+
More information about PayPal Payments Pro is available [https://www.paypal.com/webapps/mpp/paypal-payments-pro here] and [https://www.x.com/developers/paypal/products/paypal-payments-pro here].
  
More information about PayPal Payments Pro is available [https://www.paypal.com/webapps/mpp/referral/paypal-payments-pro?&partner_id=RDGQCFJTT6Y6A here].
+
A comparison chart for PayPal's All-in-One solutions (Standard/Advanced/Pro) is available [https://www.paypal.com/webapps/mpp/compare-business-products here].
  
 
===PayPal Payment Gateways===
 
===PayPal Payment Gateways===
Line 76: Line 82:
  
 
=====Payflow Link=====
 
=====Payflow Link=====
Payflow Link payment gateway allows you to accept payments from your customers using a secure, PCI-compliant form hosted by PayPal. At checkout, your customers are redirected to PayPal website where they enter their payment information. As your own store does not have anything to do with accepting, capturing, storing, transmitting or processing cardholder data in this case, you do not have to worry about PCI DSS compliance.
+
Payflow Link payment gateway allows you to accept payments from your customers using secure, PCI-compliant hosted payment pages. This solution is technically identical to PayPal Payments Advanced, except that it integrates with merchant accounts from other financial institutions. With Payflow Link, you do not have to collect cardholder data, as PayPal does that on your behalf; so you do not have to deal with the PCI compliance burden for PayPal transactions.
 
 
More information about Payflow Link is available [https://www.paypal.com/webapps/mpp/referral/paypal-payflow-link?&partner_id=RDGQCFJTT6Y6A here].
 
  
 
=====Payflow Pro=====
 
=====Payflow Pro=====
Line 85: Line 89:
 
{{Note1|'''Important:''' Since X-Cart version 4.5.0, Payflow Pro is available in X-Cart only via '''[[X-Payments:Introduction|X-Payments]]''' for [[X-Cart:PCI-DSS |PCI-DSS]] compliance.}}  
 
{{Note1|'''Important:''' Since X-Cart version 4.5.0, Payflow Pro is available in X-Cart only via '''[[X-Payments:Introduction|X-Payments]]''' for [[X-Cart:PCI-DSS |PCI-DSS]] compliance.}}  
  
More information about Payflow Pro is available [https://www.paypal.com/webapps/mpp/referral/paypal-payflow-pro?&partner_id=RDGQCFJTT6Y6A here].
+
More information about PayPal's Payflow payment gateway is available [https://www.paypal.com/webapps/mpp/payflow-payment-gateway here] and [https://www.x.com/developers/paypal/products/payflow-gateway here].
  
 
===Alternative Methods of Payment===
 
===Alternative Methods of Payment===
Line 91: Line 95:
 
===== PayPal Express Checkout =====
 
===== PayPal Express Checkout =====
  
This is Express Checkout used separately, without Direct Payment. We refer to this option as 'Express Checkout as an additional payment option', or, simply, 'Express Checkout standalone'. Online shoppers appreciate the convenience and security of PayPal, where they can pay with their PayPal balance, bank account, or credit card. To use Express Checkout as an additional payment option in your X-Cart based store, select the option '[[X-Cart:Adjusting_PayPal_Configuration_Settings_in_X-Cart#Adjusting_Express_Checkout_settings | Express Checkout]]' on the PayPal configuration page.
+
We refer to this option as 'Express Checkout as an additional payment option', or, simply, 'Express Checkout standalone'. It allows you to minimize the number of steps customers must complete when they checkout. Customers using Express Checkout pay on PayPal’s secure site and return to your store site to complete the transaction. This solution is designed for merchants who do not have an Internet Merchant Account for processing credit and debit card payments.
  
More information about PayPal Express Checkout is available [https://www.paypal.com/webapps/mpp/referral/paypal-express-checkout?&partner_id=RDGQCFJTT6Y6A here].
+
More information about PayPal Express Checkout is available [https://www.paypal.com/webapps/mpp/express-checkout here] and [https://www.x.com/developers/paypal/products/express-checkout here].
  
 
== Enabling PayPal payment methods at your X-Cart store ==
 
== Enabling PayPal payment methods at your X-Cart store ==
Line 99: Line 103:
 
To enable your customers to pay you using PayPal, follow these steps:
 
To enable your customers to pay you using PayPal, follow these steps:
 
# '''Sign up for the PayPal solution you require'''.
 
# '''Sign up for the PayPal solution you require'''.
#: Begin the sign up process by using the appropriate sign up link:<br /><br />PayPal Payments Standard: [https://www.paypal.com/webapps/mpp/referral/paypal-payments-standard?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />PayPal Payments Advanced:  [https://www.paypal.com/webapps/mpp/referral/paypal-payments-advanced?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />PayPal Payments Pro: [https://www.paypal.com/webapps/mpp/referral/paypal-payments-pro?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Payflow Link: [https://www.paypal.com/webapps/mpp/referral/paypal-payflow-link?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Payflow Pro:  [https://www.paypal.com/webapps/mpp/referral/paypal-payflow-pro?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Express Checkout:  [https://www.paypal.com/webapps/mpp/referral/paypal-express-checkout?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br /><br />From this link you will be redirected to the specific product's signup flow on PayPal.com.<br /><br />To complete the signup process for PayPal Payments Standard, PayPal Payments Advanced, PayPal Payments Pro or PayPal Express Checkout (Express Checkout standalone), you will need a verified PayPal Business account. After you click the '''Sign Up Now''' button, you will need to either create a new Business account or to log in to your existing account and upgrade it to Business.<br /><br />For PayPal Payments Advanced, Paypal Payments Pro, Payflow Link or Payflow Pro, you will set up your credentials for access to Payflow API (The same credentials will be used as your manager.paypal.com login information):
+
#: Begin the sign up process by using the appropriate sign up link:<br /><br />''U.S. account:''<br />PayPal Payments Standard: [https://www.paypal.com/webapps/mpp/referral/paypal-payments-standard?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />PayPal Payments Advanced:  [https://www.paypal.com/webapps/mpp/referral/paypal-payments-advanced?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />PayPal Payments Pro: [https://www.paypal.com/webapps/mpp/referral/paypal-payments-pro?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Payflow Link: [https://www.paypal.com/webapps/mpp/referral/paypal-payflow-link?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Payflow Pro:  [https://www.paypal.com/webapps/mpp/referral/paypal-payflow-pro?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Express Checkout:  [https://www.paypal.com/webapps/mpp/referral/paypal-express-checkout?&partner_id=RDGQCFJTT6Y6A Sign up >>]<br /><br />''Canadian account:''<br  />Website Payments Standard: [https://www.paypal.com/ca/webapps/mpp/referral/website-payments-standard?partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Website Payments Pro: [https://www.paypal.com/ca/webapps/mpp/referral/website-payments-pro?partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Payflow Link: [https://www.paypal.com/ca/webapps/mpp/referral/paypal-payflow-link?partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Payflow Pro: [https://www.paypal.com/ca/webapps/mpp/referral/paypal-payflow-pro?partner_id=RDGQCFJTT6Y6A Sign up >>]<br />Express Checkout: [https://www.paypal.com/ca/webapps/mpp/referral/paypal-express-checkout?partner_id=RDGQCFJTT6Y6A Sign up >>]<br /><br />From this link you will be redirected to the specific product's signup flow on PayPal.com.<br /><br />To complete the signup process for PayPal Payments Standard, PayPal Payments Advanced, PayPal Payments Pro or PayPal Express Checkout (Express Checkout standalone), you will need a verified PayPal Business account. After you click the '''Sign Up Now''' button, you will need to either create a new Business account or to log in to your existing account and upgrade it to Business.<br /><br />For PayPal Payments Advanced, Paypal Payments Pro, Payflow Link or Payflow Pro, you will set up your credentials for access to Payflow API (The same credentials will be used as your manager.paypal.com login information):
 
#:* Partner,
 
#:* Partner,
 
#:* Merchant login,
 
#:* Merchant login,
Line 109: Line 113:
 
#:* API signature or API certificate.
 
#:* API signature or API certificate.
 
#: Once you are done signing up, you will be able to retrieve the said credentials in your PayPal account profile. Help on retrieving API access credentials for PayPal Payments Standard and PayPal Express Checkout (Express Checkout standalone) is available here: [http://qwyx.co/apihowto http://qwyx.co/apihowto].<br /><br />After completing the signup process, you can just close the window and go back to X-Cart to continue configuring PayPal payment methods.<br /><br />Note that there will be a 3-5 day approval process before you have full functionality for PayPal Payments Advanced or PayPal Payments Pro.<br />
 
#: Once you are done signing up, you will be able to retrieve the said credentials in your PayPal account profile. Help on retrieving API access credentials for PayPal Payments Standard and PayPal Express Checkout (Express Checkout standalone) is available here: [http://qwyx.co/apihowto http://qwyx.co/apihowto].<br /><br />After completing the signup process, you can just close the window and go back to X-Cart to continue configuring PayPal payment methods.<br /><br />Note that there will be a 3-5 day approval process before you have full functionality for PayPal Payments Advanced or PayPal Payments Pro.<br />
# ''(This step is required only if you are going to use PayPal Payments Pro or Payflow Pro via X-Payments):'' In X-Payments, configure the PayPal payment method you require, then import it from X-Payments to X-Cart:
+
# ''(This step is required only if you are going to use PayPal Payments Pro or Payflow Pro via [[X-Payments:Getting_started|X-Payments]]):'' '''In X-Payments, configure the PayPal payment method you require, then import it from X-Payments to X-Cart''':
## Go to the 'Payment Configurations' section of the X-Payments back-end (Settings menu->Payment Configurations) and add a payment configuration for the PayPal payment method you want to use:
+
## If you haven't yet done so, install X-Payments (See [[X-Payments:Installation|X-Payments:Installation]])and log in to its back-end.
##* To use PayPal's Payflow Pro solution, choose the &&&&& ''Payflow Pro'' payment module.<br />See [[link]].  
+
## In the X-Payments back-end (Settings menu->Payment Configurations), go to the 'Payment Configurations' section and [[X-Payments:User_manual#Payment_Configurations | add a payment configuration]] for the PayPal payment method you want to use:
##* To use PayPal Payments Pro, choose either the ''PayPal Payments Pro (Payflow API)'' or the ''PayPal Payments Pro (PayPal API)'' module. Your choice of the payment module for PayPal Payments Pro should be determined by the type of API access credentials you got from PayPal.<br />See [[X-Payments:PayPal#Configuring_PayPal_Payments_Pro_.28Payflow_API.29 | Configuring PayPal Payments Pro (Payflow API)]] or [[X-Payments:PayPal#Configuring_PayPal_Payments_Pro_.28PayPal_API.29 | Configuring PayPal Payments Pro (PayPal API)]].
+
##* To use PayPal's Payflow Pro solution, choose the ''Payflow Pro'' payment module.<br />See [[X-Payments:Configuring_PayPal_payment_modules_in_X-Payments#Payflow_Pro_configuration_settings | Payflow Pro configuration settings]].  
 +
##* To use PayPal Payments Pro, choose either the ''PayPal Payments Pro (Payflow API)'' or the ''PayPal Payments Pro (PayPal API)'' module. Your choice of the payment module for PayPal Payments Pro should be determined by the type of API access credentials you got from PayPal:<br />- With the Partner / Merchant login / User / Password type of credentials, choose PayPal Payments Pro (Payflow API).<br />- With the API access username / API access password / API signature or API certificate type of credentials, choose PayPal Payments Pro (PayPal API).<br />See [[X-Payments:Configuring_PayPal_payment_modules_in_X-Payments#Configuring_PayPal_Payments_Pro_.28Payflow_API.29_configuration_settings | PayPal Payments Pro (Payflow API) configuration settings]] or [[X-Payments:Configuring_PayPal_payment_modules_in_X-Payments#PayPal_Payments_Pro_.28PayPal_API.29_configuration_settings | PayPal Payments Pro (PayPal API) configuration settings ]].
 
## Make sure the PayPal configuration you have added is enabled.
 
## Make sure the PayPal configuration you have added is enabled.
 
## If you haven't yet done so, go to the 'Online Stores' section of the X-Payments back-end (Settings->Online Stores), add your X-Cart store to the list of online stores working with X-Payments and configure how X-Payments will connect to it. In the store details, enable the PayPal configuration you have added. See [[X-Payments:Managing_store_connections | X-Payments:Managing store connections]]
 
## If you haven't yet done so, go to the 'Online Stores' section of the X-Payments back-end (Settings->Online Stores), add your X-Cart store to the list of online stores working with X-Payments and configure how X-Payments will connect to it. In the store details, enable the PayPal configuration you have added. See [[X-Payments:Managing_store_connections | X-Payments:Managing store connections]]
 
## If you haven't yet done so, configure X-Payments Connector module in your X-Cart store. See [[X-Payments:X-Payments_Connector#Configuring_X-Payments_Connector | Configuring X-Payments Connector]].
 
## If you haven't yet done so, configure X-Payments Connector module in your X-Cart store. See [[X-Payments:X-Payments_Connector#Configuring_X-Payments_Connector | Configuring X-Payments Connector]].
## Import the PayPal payment method you have configured from X-Payments to X-Cart. See [[X-Payments:X-Payments_Connector#Importing_X-Payments_payment_methods_into_X-Cart | Importing X-Payments payment methods into X-Cart]].
+
## Import payment methods (including the PayPal payment method you have configured) from X-Payments to X-Cart. See [[X-Payments:X-Payments_Connector#Importing_X-Payments_payment_methods_into_X-Cart | Importing X-Payments payment methods into X-Cart]].
# Add PayPal to the list of your store's active payment methods.<br /><br />''PayPal Payments Standard, PayPal Payments Advanced, Payflow Link or PayPal Express Checkout (Express Checkout standalone):''<br />Use the following instructions: ''See '[[X-Cart:Adding PayPal to the List of Your Store's Active Payment Methods | Adding PayPal to the List of Your Store's Active Payment Methods]]'.''
+
## PayPal Payments Pro & Payflow Pro: If you haven't yet done so, [[X-Payments:3D-Secure_Settings | configure CardinalCommerce module]] (Settings menu->3D-Secure Settings) and enable 3D-Secure payer authentication service.
<br />''PayPal Payments Pro or Payflow Pro:''<br />(via X-Payments)
+
## Check the [[X-Payments:General_settings | general settings]] in X-Payments (Settings menu->General Settings) and make sure all is correct.
(The respective payment method is called ''PayPal Payments Pro (PayPal API)'' in X-Payments and ''PayPal Payments Pro'' in X-Cart)
+
## Generate X-Payments [[X-Payments:Encryption_keys | encryption keys]] (Maintenance menu->Encryption keys).
#: ''See '[[X-Cart:Adding PayPal to the List of Your Store's Active Payment Methods | Adding PayPal to the List of Your Store's Active Payment Methods]]'.''
+
# '''In X-Cart, add your chosen PayPal method to the list of your store's active payment methods, then configure and enable it.'''
# Adjust PayPal configuration settings on the PayPal configuration page in X-Cart.<br />{{Note1|Important: Please note that to be able to use an API SSL client-side certificate as your credential, you need to be able to install the certificate on the web server in the directory <u><xcart_dir>/payment/certs/</u>, where <u><xcart_dir></u> is the directory where your X-Cart is installed.}}
+
#* ''Payflow Pro:''<br />Use the following instructions: [[X-Payments:X-Payments_Connector#Adding_and_enabling_X-Payments_payment_methods_in_X-Cart | Adding and enabling X-Payments payment methods in X-Cart]]. The method that you should choose from the list in the '''Payment gateways''' selector is titled 'PayFlow - Pro (via X-Payments)'; it can be found under the ''X-Payments payment methods'' section of the list.<br />
#: ''See '[[X-Cart:Adjusting PayPal Configuration Settings in X-Cart | Adjusting PayPal Configuration Settings in X-Cart]]'.''
+
#* ''Other PayPal solutions:''<br />Use the following instructions: [[X-Cart:Adding_and_enabling_PayPal_payment_methods_in_X-Cart | Adding and enabling PayPal payment methods in X-Cart]].
# Rec 2.38 - Enable IPN (Instant Payment Notification) in your PayPal account settings (to make PayPal notify your X-cart store of events related to PayPal transactions):
+
# '''Enable Instant Payment Notification (IPN) in your PayPal account settings''' (This is needed so PayPal will notify your X-Сart store of events related to PayPal transactions):
 
## Login to your PayPal account.
 
## Login to your PayPal account.
 
## Click '''Profile''' on the My Account tab.
 
## Click '''Profile''' on the My Account tab.
 
## Click '''Instant Payment Notification Preferences''' in the Selling Preferences column.
 
## Click '''Instant Payment Notification Preferences''' in the Selling Preferences column.
 
## Click '''Edit IPN Settings''' to specify your listener’s URL and activate the listener.
 
## Click '''Edit IPN Settings''' to specify your listener’s URL and activate the listener.
## Specify the URL for your listener in the <u>Notification URL</u> field, for example: http://xcart-demo.qtmsoft.com/demo/payment/ps_paypal.php
+
## Specify the URL for your listener in the <u>Notification URL</u> field. For example, if your X-Cart store is located at the address <u>http://yourstore.com/xcart/</u>, you should specify your Notification URL as <u>http://yourstore.com/xcart/payment/ps_paypal.php</u>.
 
## Click '''Receive IPN messages (Enabled''') to enable your listener.
 
## Click '''Receive IPN messages (Enabled''') to enable your listener.
 
## Click '''Save'''.
 
## Click '''Save'''.
## You have successfully activated IPN.<br />{{Note1 | NOTE: The above URL is an example only, so make sure you replace "http://xcart-demo.qtmsoft.com/demo/" with your actual X-Cart store URL.}}
+
# ''(This step is required only for PayPal Payments Standard):'' '''If you want your buyers to be redirected back to your X-Cart store immediately after clicking the Pay button on the Payment Confirmation page, set up Auto Return option in your PayPal account settings''':
# ''(This step is required only for PayPal Payments Standard):'' Rec 2.38 - If you want your buyers to be redirected back to your X-Cart store immediately after clicking the Pay button on the Payment Confirmation page, set up Auto Return option in your PayPal account settings:
 
 
## Login to your PayPal account.
 
## Login to your PayPal account.
 
## Click the '''Profile''' subtab under My Account.
 
## Click the '''Profile''' subtab under My Account.
 
## Click the '''Website Payment Preferences''' link under Selling Preferences.
 
## Click the '''Website Payment Preferences''' link under Selling Preferences.
 
## Click the '''On''' radio button to enable Auto Return.
 
## Click the '''On''' radio button to enable Auto Return.
## Enter the Return URL, for example: http://xcart-demo.qtmsoft.com/demo/payment/ps_paypal.php <br />Learn more about [https://www.paypal.com/cgi-bin/webscr?cmd=p/mer/express_return_summary-outside Auto Return option].<br />{{Note1 | NOTE: The above URL is an example only, so make sure you replace "http://xcart-demo.qtmsoft.com/demo/" with your actual X-Cart store URL.}}
+
## Enter the Return URL. For example, if your X-Cart store is located at the address <u>http://yourstore.com/xcart/</u>, you should specify your Return URL as <u>http://yourstore.com/xcart/payment/ps_paypal.php</u> <br />Learn more about [https://www.paypal.com/cgi-bin/webscr?cmd=p/mer/express_return_summary-outside Auto Return option].<br />
  
 
If, after trying one PayPal solution, you decide to switch to a different one, you can readjust your PayPal configuration.
 
If, after trying one PayPal solution, you decide to switch to a different one, you can readjust your PayPal configuration.
Line 196: Line 200:
 
* More information about the Sandbox is available in the PayPal's Sandbox User Guide ([https://developer.paypal.com/en_US/pdf/PP_Sandbox_UserGuide.pdf https://developer.paypal.com/en_US/pdf/PP_Sandbox_UserGuide.pdf]).
 
* More information about the Sandbox is available in the PayPal's Sandbox User Guide ([https://developer.paypal.com/en_US/pdf/PP_Sandbox_UserGuide.pdf https://developer.paypal.com/en_US/pdf/PP_Sandbox_UserGuide.pdf]).
  
Testing of PayPal's '''Website Payments Pro Payflow Edition''' solution is performed using the PayPal Manager - the same administration interface that you should use for live transactions, [https://manager.paypal.com https://manager.paypal.com]. You will be able to access this interface as soon as you set up your production merchant account.
+
Testing of '''Website Payments Pro Payflow Edition''' is performed using the PayPal Manager - the same administration interface that you should use for live transactions, [https://manager.paypal.com https://manager.paypal.com]. You will be able to access this interface as soon as you set up your production merchant account.
  
 
=== Setting Your Store's PayPal Integration to Work in Test Mode ===
 
=== Setting Your Store's PayPal Integration to Work in Test Mode ===

Latest revision as of 18:38, 20 December 2012

About PayPal

PayPal is one of the most popular online payment options worldwide, and it is also the most popular payment method among X-Cart's customers.

X-Cart software is pre-integrated with PayPal, so any X-Cart store can be easily set up to accept payments through PayPal. More information on the PayPal solutions supported by X-Cart is available in the section PayPal Integration Overview.

Instructions on how to begin using PayPal as a payment method in an X-Cart store are available in the section Enabling PayPal at your X-Cart store.

The basics of PayPal integration testing are provided in the section Testing PayPal Integration.

Information about using the Order details page of orders paid through PayPal is available in the section Working with Orders Paid through PayPal.

PayPal Integration Overview

X-Cart integrates with three types of payment solutions by PayPal:

  • All-in-One Payment Solutions (PayPal Payments Standard, PayPal Payments Advanced, PayPal Payments Pro)
  • Payment gateways (Payflow Link, Payflow Pro)
  • Alternative Methods of Payment (PayPal Express Checkout)

For more information on each type of payment solutions, see Understanding Online Payments.

All-in-One Payment Solutions

The following are PayPal solutions that give you an Internet merchant account and payment gateway in one solution.

PayPal Payments Standard

(also known as Website Payments Standard outside the U.S.)

PayPal Payments Standard is a simple all-in-one PayPal solution that allows you to accept credit card and PayPal payments securely. Your customers shop on your website and checkout on PayPal. The process is as follows: Customers who select PayPal as a payment method are redirected to PayPal website. There they can log in to an existing PayPal account and pay using that account, or choose to pay without logging in - simply by providing the details of a credit card or a bank account. Then such customers return to your store site where they see a confirmation page. The process of checking out through PayPal Payments Standard is presented in the scheme below:

Paypal1.png

More information about PayPal Payments Standard is available here and here.

PayPal Payments Advanced

PayPal Payments Advanced is an all-in-one PayPal solution that enables you to keep customers on your site for the entire checkout process without the full burden of protecting their financial data. With this solution you get a secure checkout template from PayPal that is integrated within your website and allows your customers to enter their payment information on PayPal without actually leaving the store website. Your customers won't even know that PayPal is processing their payment, making your business look more secure and professional. With PayPal Payments Advanced, PCI DSS compliance is made easy for you because payments are handled not by your site directly, but by PayPal.

More information about PayPal Payments Advanced is available here and here.

PayPal Payments Pro

(also known as Website Payments Pro outside the U.S.)

PayPal Payments Pro is an all-in-one solution available in two versions:

  • PayPal Payments Pro (Direct Payment)
  • PayPal Payments Pro (Payflow Edition)

Each of the versions provides two payment capabilities:

  1. Credit and debit card payment;
  2. PayPal payment with Express Checkout.

With PayPal Payments Pro (Direct Payment) credit and debit card processing is done via PayPal's Direct Payment API (PayPal API), with PayPal Payments Pro (Payflow Edition) - via PayPal's Payflow API.

Important: Credit and debit card processing with PayPal Payments Pro is available via X-Cart for users of X-Cart versions 4.4.5 and earlier. It is also available via a special PA-DSS certified application - X-Payments. Starting with X-Cart version 4.5.0, X-Cart no longer collects or stores cardholder data - this functionality has been moved to X-Payments to ensure easier PCI-DSS compliance for our clients. This means that, since X-Cart version 4.5.0, credit and debit card payments with PayPal Payments Pro are NOT available via X-Cart; they are available only via X-Payments. Using Express Checkout does not involve collecting cardholder data, so PayPal payments via Express Checkout continue to be available via X-Cart.

Below is more information about the PayPal Payments Pro payment capabilities:

With PayPal Payments Pro, customers can pay you with a credit or debit card without leaving your store's website. Customers enter their payment information on your website, and the payment is processed in the background with PayPal. This way customers stay on your website throughout the entire process of checkout.

You must understand that using Direct Payment involves your X-Cart store in handling and transferring credit card data to the payment gateway (PayPal). As per PCI-DSS requirements, this can be done only by a PA-DSS validated application. Unfortunately, X-Cart is not such an application. To enable you to meet PCI-DSS requirements, we offer a special PA-DSS validated application - X-Payments. It is a kind of "bridge" between your X-Cart store and the payment gateway (PayPal), which handles all credit card data supplied by the buyer, and transfers the sensitive data securely to the payment gateway (PayPal).

Express Checkout is a fast and convenient method offering a "wallet" capability: your customers use the billing information stored in their PayPal accounts and do not have to enter their payment details or shipping information on your site. Because all the information required for order placement is pulled from PayPal, your customers may freely skip the step of logging in/getting registered at your store and complete the checkout process anonymously.

When using Express Checkout, customers are redirected to PayPal website. There they can choose one of the two options:

  1. Log in and pay using their existing PayPal account info.
  2. Pay with their debit or credit card as a PayPal guest, entering the payment info directly at PayPal side.

Customer information is then passed from PayPal to the store and is used to complete the checkout process.

With Express Checkout, all cardholder data processing is outsourced to and handled by PayPal, so from the viewpoint of handling and transferring credit card data your X-Cart store is PCI-DSS compliant.

The graphic scheme below demonstrates how credit/debit card payments and PayPal payments via Express Checkout are processed with PayPal Payments Pro:

Paypal2.png

More information about PayPal Payments Pro is available here and here.

A comparison chart for PayPal's All-in-One solutions (Standard/Advanced/Pro) is available here.

PayPal Payment Gateways

The following are PayPal solutions for merchants who wish to accept payments using their existing payment processor and Internet Merchant Account:

Payflow Link

Payflow Link payment gateway allows you to accept payments from your customers using secure, PCI-compliant hosted payment pages. This solution is technically identical to PayPal Payments Advanced, except that it integrates with merchant accounts from other financial institutions. With Payflow Link, you do not have to collect cardholder data, as PayPal does that on your behalf; so you do not have to deal with the PCI compliance burden for PayPal transactions.

Payflow Pro

Payflow Pro provides a lot more flexibility allowing you to build a checkout experience as unique as your own business. With this solution, the payment form for your customers is located on your store website, which means you handle credit card payments and transmit cardholder data to the payment gateway. This, of course, imposes more stringent requirments on your environment in terms of PCI DSS compliance.

Important: Since X-Cart version 4.5.0, Payflow Pro is available in X-Cart only via X-Payments for PCI-DSS compliance.

More information about PayPal's Payflow payment gateway is available here and here.

Alternative Methods of Payment

The following is a PayPal solution for merchants who do not wish to process credit cards through PayPal, but would still like to make PayPal available to their customers as a payment option.

PayPal Express Checkout

We refer to this option as 'Express Checkout as an additional payment option', or, simply, 'Express Checkout standalone'. It allows you to minimize the number of steps customers must complete when they checkout. Customers using Express Checkout pay on PayPal’s secure site and return to your store site to complete the transaction. This solution is designed for merchants who do not have an Internet Merchant Account for processing credit and debit card payments.

More information about PayPal Express Checkout is available here and here.

Enabling PayPal payment methods at your X-Cart store

To enable your customers to pay you using PayPal, follow these steps:

  1. Sign up for the PayPal solution you require.
    Begin the sign up process by using the appropriate sign up link:

    U.S. account:
    PayPal Payments Standard: Sign up >>
    PayPal Payments Advanced: Sign up >>
    PayPal Payments Pro: Sign up >>
    Payflow Link: Sign up >>
    Payflow Pro: Sign up >>
    Express Checkout: Sign up >>

    Canadian account:
    Website Payments Standard: Sign up >>
    Website Payments Pro: Sign up >>
    Payflow Link: Sign up >>
    Payflow Pro: Sign up >>
    Express Checkout: Sign up >>

    From this link you will be redirected to the specific product's signup flow on PayPal.com.

    To complete the signup process for PayPal Payments Standard, PayPal Payments Advanced, PayPal Payments Pro or PayPal Express Checkout (Express Checkout standalone), you will need a verified PayPal Business account. After you click the Sign Up Now button, you will need to either create a new Business account or to log in to your existing account and upgrade it to Business.

    For PayPal Payments Advanced, Paypal Payments Pro, Payflow Link or Payflow Pro, you will set up your credentials for access to Payflow API (The same credentials will be used as your manager.paypal.com login information):
    • Partner,
    • Merchant login,
    • User,
    • Password.
    Take note of these credentials as you will need them to configure your chosen PayPal payment method(s) in X-Cart/X-Payments.
    Important: Owners of older PayPal accounts approved for PayPal Payments Pro who only have a PayPal account but do not have an account at manager.paypal.com can use their existing API access credentials (API access username-API access password-API signature/API certificate) to set up PayPal Payments Pro working through PayPal API (Note: This is different from Payflow API). Help on retrieving API access credentials for PayPal Payments Pro working via PayPal API is available here: http://qwyx.co/apihowto.

    For PayPal Payments Standard or PayPal Express Checkout (Express Checkout standalone), you will be provided with access to PayPal API. Using PayPal API requires a different set of credentials:
    • API access username,
    • API access password,
    • API signature or API certificate.
    Once you are done signing up, you will be able to retrieve the said credentials in your PayPal account profile. Help on retrieving API access credentials for PayPal Payments Standard and PayPal Express Checkout (Express Checkout standalone) is available here: http://qwyx.co/apihowto.

    After completing the signup process, you can just close the window and go back to X-Cart to continue configuring PayPal payment methods.

    Note that there will be a 3-5 day approval process before you have full functionality for PayPal Payments Advanced or PayPal Payments Pro.
  2. (This step is required only if you are going to use PayPal Payments Pro or Payflow Pro via X-Payments): In X-Payments, configure the PayPal payment method you require, then import it from X-Payments to X-Cart:
    1. If you haven't yet done so, install X-Payments (See X-Payments:Installation)and log in to its back-end.
    2. In the X-Payments back-end (Settings menu->Payment Configurations), go to the 'Payment Configurations' section and add a payment configuration for the PayPal payment method you want to use:
      • To use PayPal's Payflow Pro solution, choose the Payflow Pro payment module.
        See Payflow Pro configuration settings.
      • To use PayPal Payments Pro, choose either the PayPal Payments Pro (Payflow API) or the PayPal Payments Pro (PayPal API) module. Your choice of the payment module for PayPal Payments Pro should be determined by the type of API access credentials you got from PayPal:
        - With the Partner / Merchant login / User / Password type of credentials, choose PayPal Payments Pro (Payflow API).
        - With the API access username / API access password / API signature or API certificate type of credentials, choose PayPal Payments Pro (PayPal API).
        See PayPal Payments Pro (Payflow API) configuration settings or PayPal Payments Pro (PayPal API) configuration settings .
    3. Make sure the PayPal configuration you have added is enabled.
    4. If you haven't yet done so, go to the 'Online Stores' section of the X-Payments back-end (Settings->Online Stores), add your X-Cart store to the list of online stores working with X-Payments and configure how X-Payments will connect to it. In the store details, enable the PayPal configuration you have added. See X-Payments:Managing store connections
    5. If you haven't yet done so, configure X-Payments Connector module in your X-Cart store. See Configuring X-Payments Connector.
    6. Import payment methods (including the PayPal payment method you have configured) from X-Payments to X-Cart. See Importing X-Payments payment methods into X-Cart.
    7. PayPal Payments Pro & Payflow Pro: If you haven't yet done so, configure CardinalCommerce module (Settings menu->3D-Secure Settings) and enable 3D-Secure payer authentication service.
    8. Check the general settings in X-Payments (Settings menu->General Settings) and make sure all is correct.
    9. Generate X-Payments encryption keys (Maintenance menu->Encryption keys).
  3. In X-Cart, add your chosen PayPal method to the list of your store's active payment methods, then configure and enable it.
  4. Enable Instant Payment Notification (IPN) in your PayPal account settings (This is needed so PayPal will notify your X-Сart store of events related to PayPal transactions):
    1. Login to your PayPal account.
    2. Click Profile on the My Account tab.
    3. Click Instant Payment Notification Preferences in the Selling Preferences column.
    4. Click Edit IPN Settings to specify your listener’s URL and activate the listener.
    5. Specify the URL for your listener in the Notification URL field. For example, if your X-Cart store is located at the address http://yourstore.com/xcart/, you should specify your Notification URL as http://yourstore.com/xcart/payment/ps_paypal.php.
    6. Click Receive IPN messages (Enabled) to enable your listener.
    7. Click Save.
  5. (This step is required only for PayPal Payments Standard): If you want your buyers to be redirected back to your X-Cart store immediately after clicking the Pay button on the Payment Confirmation page, set up Auto Return option in your PayPal account settings:
    1. Login to your PayPal account.
    2. Click the Profile subtab under My Account.
    3. Click the Website Payment Preferences link under Selling Preferences.
    4. Click the On radio button to enable Auto Return.
    5. Enter the Return URL. For example, if your X-Cart store is located at the address http://yourstore.com/xcart/, you should specify your Return URL as http://yourstore.com/xcart/payment/ps_paypal.php
      Learn more about Auto Return option.

If, after trying one PayPal solution, you decide to switch to a different one, you can readjust your PayPal configuration.

See ' Switching to a Different PayPal Solution'.

If, after enabling PayPal payment method at your store, you decide not to use it, you can delete it.

See ' Deleting PayPal from the List of Your Store's Payment Methods'.

Testing PayPal Integration

Before you make PayPal publicly available as a payment method on your store website, you may want to run some PayPal transactions in test mode to familiarize yourself with PayPal and to ensure that everything works correctly.

Follow these steps:

  1. Obtain an account for testing.
  2. Set your store's PayPal integration to work in test mode.
  3. Conduct test PayPal transactions.

Obtaining an account for testing

Testing of PayPal's PayPal Payments Standard, PayPal Payments Pro and Express Checkout solutions is performed using the PayPal Sandbox - a self-contained testing environment for PayPal applications. The Sandbox is a mirror of the real PayPal site except that real financial transactions are not made. To be able to access the PayPal Sandbox, you need to have an account at Developer Central. You do not need an existing live PayPal account in order to sign up for Developer Central. After becoming a member of Developer Central, you will be able to access the Sandbox either directly or by launching it after you log in to Developer Central.

To sign up for a Developer Central account:

  1. Go to https://developer.paypal.com.
  2. Click 'Sign Up Now'.
  3. Follow the on-screen instructions.

After you submit the required information to PayPal, PayPal sends login instructions to the email address you used to sign up. Follow the instructions provided to you in the email message to log in to Developer Central. Now you can create the accounts required for testing.

Basically, you need accounts of two types: Business and Personal. A Personal Sandbox account is needed to make test payments via PayPal, a Business Sandbox account - to accept these payments.

Creating a test account in the Sandbox is easy:

  1. After logging in to Developer Central, click 'Sandbox'.
  2. Click the link 'Create account'.
  3. Select the type of account that you wish to create (Business or Personal).
  4. Follow the on-screen instructions to create the account.

After creating the necessary Sandbox accounts, you will be able to log in to the Sandbox as a test user of the necessary type.

To log in to the Sandbox using a specific test account:

  1. Log in to Developer Central.
  2. Click the 'Sandbox' tab.
  3. Select the test user that represents the feature you want to test.
  4. Click 'Launch Sandbox'.

Please note the following:

  • Sandbox accounts are not in any way tied to your PayPal account on www.paypal.com.
  • When creating a Sandbox account, your email address attached to that account does not need to be real. It can be any email address, as long as the email address does not already exist on the Sandbox.
  • Email from the Sandbox will never be delivered to the email address you enter. All email generated by the Sandbox is captured and displayed by the Developer Central email client.
  • After creating a Sandbox account, you may want to confirm the email address for the sandbox user. Check the email client on Developer Central to confirm your email address.
  • After creating a Sandbox account, you can also attach a test credit card and bank account for testing.
  • More information about the Sandbox is available in the PayPal's Sandbox User Guide (https://developer.paypal.com/en_US/pdf/PP_Sandbox_UserGuide.pdf).

Testing of Website Payments Pro Payflow Edition is performed using the PayPal Manager - the same administration interface that you should use for live transactions, https://manager.paypal.com. You will be able to access this interface as soon as you set up your production merchant account.

Setting Your Store's PayPal Integration to Work in Test Mode

Your store's PayPal integration can be set to work in test mode as follows:

PayPal Payments Standard:

  1. Go to the PayPal configuration page in your store's Admin area.
  2. From the 'Settings' dialog box, select the desired option ('PayPal Payments Standard').
  3. Adjust the configuration fields for the selected option:
    • Specify your Sandbox Business account.
    • Configure the fields 'Payment for', 'Currency', 'Order prefix' as desired.
    • Set PayPal operating mode to 'Test'.
  4. Click the Update button to save the changes.

PayPal Payments Pro and Express Checkout used as an additional payment option:

  1. Log in to your Sandbox Business account to obtain API credentials for the test mode (The Sandbox Business account backoffice is organized similarly to the backoffice of your production PayPal Business account, so API credentials for the test mode can be obtained the same way as described in the section ' Setting up Your API Access', with the difference that the Business account in the Sandbox should be used instead of the production account).
  2. Go to the PayPal configuration page in your store's Admin area.
  3. From the 'Settings' dialog box, select the desired option ('PayPal Payments Pro' or 'Express Checkout').
  4. Adjust the configuration fields for the selected option:
    • Specify the API access credentials as provided by your Sandbox Business account.
    • Configure the fields 'Currency' and 'Order prefix' as desired.
    • Set PayPal operating mode to 'Test'.
  5. Click the Update button to save the changes.

Website Payments Pro Payflow Edition:

  1. Go to the PayPal configuration page in your store's Admin area.
  2. From the 'Settings' dialog box, select the desired option ('Website Payments Pro Payflow Edition').
  3. Adjust the configuration fields for the selected option:
    • Configure the fields 'Vendor', 'Partner', 'User' and 'Password'.
    • Configure the fields 'Currency' and 'Order prefix' as desired.
    • Set PayPal operating mode to 'Test'.
  4. Click the Update button to save the changes.

When you return to the list of your store's payment methods after setting PayPal to work in test mode as described above, there should be a warning message below the 'PayPal' entry:

Paypal testmode.gif

This is normal when X-Cart's PayPal integration is in test mode. Now you can perform test PayPal transactions.

Conducting test PayPal transactions

PayPal Payments Standard, PayPal Payments Pro and Express Checkout solutions:

The test accounts that you set up in the PayPal Sandbox allow you to explore how PayPal works for merchants and customers. To find out about the merchant's side of the matter, you need to log in to the Sandbox as a user of the 'Business' type. To make test PayPal payments and to learn about the customer's side of the matter, you need to log in to the Sandbox using a 'Personal' account.

Important: In the test mode, to pay for an order using a PayPal payment method, you need to be logged in to Developer Central. Developer Central sessions time out quickly, so it is recommended you log in to Developer Central shortly before going to checkout. The recommended method for logging in to Developer Central is to open a new window in the web browser being used for viewing the store directly before you click the Checkout button on the Shopping cart page and to use that window for logging in to Developer Central. Please note that, if you happen to go to checkout without previously logging in to Developer Central, or if your Developer Central session expires by the time you begin checking out, you will be able to complete checkout, but the process will be a little less streamlined (After selecting PayPal as a payment method and clicking the Submit order button, you will be offered to log in to Developer Central. After logging in, you will be required to click the Back button of your web browser several times to return to the store's 'Place order' page. There you will need to click the Submit order button again to resume the checkout process.)

Website Payments Pro Payflow Edition solution:

The first time you log in to PayPal Manager, you are in Test status (the Home page of PayPal Manager indicates this). This means that you can run mock or test transactions to familiarize yourself with PayPal Manager and make sure your account is set up correctly. These test transactions are not sent to financial institutions for processing, and no money trades hands.

When you are ready to run actual transactions, you will change to Active, or Live status. To change to Active status or see which status you are in, go to the Home page of PayPal Manager and look at the 'Your Account Status' section on the right side. Even after your account is active, you can still perform test transactions if necessary.

At any time, you can activate your account (change to Live status) by clicking the Activate Your Account button on the Home page.

Make sure you have an internet merchant account before you activate your PayPal services account. Otherwise, your live transactions will fail.

Working with Orders Placed through PayPal

Obtaining information about orders placed through PayPal

Orders that your customers place selecting PayPal as a payment method are accumulated in the 'Orders Management' section of your store, along with all other orders.

The current status of an order placed through PayPal appears in the 'STATUS' box pertaining to that order - the same way as for orders paid by other methods.

Detailed information is available on the 'Order details' page. Information about the payment transaction(s) pertaining to the order appears on the 'Order details' page as follows:

  • 'Order info' section of the 'Order details' dialog box: Name of the payment method used, order amount.


Pp order info.gif


  • 'Order details (not visible to customer and provider)' section of the 'Order details' dialog box: Advanced info about the transaction by which the customer paid for the order (as received from PayPal and interpreted by X-Cart's PayPal payment module).


Pp order details.gif


  • 'PayPal transactions' dialog box (not available for orders paid using PayPal Payments Standard):

'Original transaction' section - Comprehensive information about the transaction by which the customer paid for the order.

'Refund transactions' section - Information about the refund transaction (or a series of partial refund transactions) by which the original payment was refunded. Is displayed only if the original transaction was refunded by the store administrator.


Pp transactions.gif

Understanding the statuses of orders placed through PayPal

As orders placed through PayPal are processed, they receive statuses according to the scheme used by X-Cart (see X-Cart:Orders#Order_Statuses article). The statuses that you can see in the 'STATUS' boxes of PayPal orders are Not finished, Queued, Pre-Authorized, Processed and Failed. These statuses are assigned to orders automatically based on the statuses of the respective payment transactions on PayPal:

When a customer places an order using PayPal as a payment method, the order is created with the status Not finished.

Sometimes it happens that a transaction cannot be processed by PayPal immediately; in this case, PayPal temporarily sets the status of the order to 'Pending'. In X-Cart, PayPal's 'Pending' status corresponds to Queued.

If your store is configured to use PayPal in 'Auth and Capture' mode, the status that follows Not finished or Queued is either Processed or Failed. The status Processed corresponds to the state 'The payment has been successfully processed by PayPal; the customer's card has been charged'. The status Failed corresponds to the state 'The transaction has been declined by PayPal'.

If your store is configured to use PayPal in 'Auth only' mode, the status that follows Not finished or Queued is either Pre-Authorized or Failed. The status Pre-Authorized corresponds to the state 'The payment has been successfully authorized'. The status Failed corresponds to the state 'The payment has been declined by PayPal'.

After the order's status is set to Pre-Authorized, you can either capture the authorized amount or void the transaction. If you choose to perform the 'capture' operation, you use the Capture button; after the authorized amount is captured, the status of the order is set to Processed. If you choose to perform the 'void' operation, you use the Decline button; after the authorization is voided, the status of the order changes to Declined.

Assigning any other statuses to PayPal orders has to be done manually by re-adjusting the value of the 'STATUS' box. For example, if an order successfully processed by PayPal and completed by the store needs to be marked as such, you will have to select Complete from the 'STATUS' box of the respective order and update the status.

Updating information about the transaction by which the customer paid for the order

For orders paid through PayPal Payments Pro, Website Payments Pro Payflow Edition or Express Checkout, detailed information about the transaction by which the customer paid for the order is displayed in the 'Paypal transactions' dialog box in the 'Orders Management' section (See the 'Original transaction' subsection). You can obtain the latest available information about this transaction at any time: simply click the Update button in the 'Original transaction' section. X-Cart will submit your request to PayPal server and the information in the 'Original transaction' section will be updated.

Issuing refunds

X-Cart allows you to issue refunds for orders paid through PayPal Payments Pro, Website Payments Pro Payflow Edition and Express Checkout.

Orders paid for using PayPal Payments Pro or Express Checkout can be refunded either at once (by issuing a single refund transaction for the entire sum of the original transaction) or in portions (by issuing several partial refund transactions one after another). If you choose to do a refund as a series of partial refund transactions, you will have to specify the amount for each of the partial refund transactions separately.

Orders paid for using Website Payments Pro Payflow Edition can be refunded only by issuing a refund for the entire sum of the original transaction at once.

To issue a refund:

  1. Open the 'Order details' page of the order that needs to be refunded.
  2. Scroll down to the 'PayPal transactions' dialog box.
  3. Use the 'Issue refund' section of the 'PayPal transactions' dialog box to create a refund:
    • In the 'Amount' field, enter the amount to be refunded (Available only for PayPal Payments Pro. For Website Payments Pro Payflow Edition, the refund amount is already specified, and it equals the order amount).
    • In the 'Note' field, provide a note stating the reason of the refund.
    • Click the Create button.

As soon as the refund request is successfully received and processed by PayPal, the refund transaction appears in the 'Refund transactions' section of the 'PayPal transactions' dialog box. For each refund transaction, the following information is available:

  • TRANSACTION ID - Transaction ID;
  • AMOUNT - Refund amount;
  • DATE - Date when the transaction was performed;
  • NOTE - Note with which the refund was issued.

Troubleshooting

X-Cart 4.3or above

Unable to process payment. Please contact the merchant as the shipping address provided by the merchant is invalid, and the merchant has requested that your order must be shipped to that address

Such error message appears on the PayPal checkout page when customer's address does not pass PayPal's validation.

Note: This error is relevant to PayPal Payments Standard only

A valid address is specified by customer when checking out using X-Cart. The address is used for the calculation of shipping and tax charges before customer proceeds to PayPal's payment page. When customer submits an order to be paid with PayPal, the customer's address is passed from X-Cart to PayPal along with the other payment details.

If the customer's address submitted to the server does not pass PayPal's validation, the server returns the error specified in the question title. To fix it and continue with the payment, the customer should go back to the store, correct the address and submit the order again.

Please note that the customer's address submitted from X-Cart to PayPal overrides the PayPal member's stored address. The customer can see the submitted address but cannot edit it.

There is also another way to eliminate the error. You can allow your customers to edit the submitted address or select a different address that the customer has on his or her PayPal account. To do so, please make the following changes in <xcart-dir>/payment/ps_paypal.php:

Find the line:

"address_override" => 1,

and replace it with this one:

"address_override" => 0,
Note: Changing this option may lead to a situation when the address specified by the customer during checkout in X-Cart and saved in the X-Cart order details differs from the address in the relevant PayPal transaction details. This can cause confusion as to which address the order should be shipped to. Besides the pre-calculated shipping and tax costs may not correspond to the address specified in the relevant PayPal transaction details.


Note: There is a special option intruduced in version 4.4.0 - "Address override", it is available on the PayPal configuration page in the X-Cart admin back-end

We cannot process this transaction because there is a problem with the PayPal email address supplied by the seller

The most probable cause of the problem is invalid data that you might have entered in the Account field on the Paypal settings page in the X-Cart admin area. For the 'PayPal Payments Standard' method, this field should contain your PayPal account's email address.

Please correct the Paypal settings according to this article:

http://help.qtmsoft.com/index.php?title=X-Cart:Adjusting_PayPal_Configuration_Settings_in_X-Cart

If this does not help to resolve the problem, feel free to contact the X-Cart support team.

Telephone number not showing with Paypal Express

PayPal has a setting that will display and validate a customer contact phone number field on the payment page. PayPal recommends leaving this feature "Off" because customers value their privacy. Thus this option is off by default.

You can set up your PayPal account's preferences to require the phone number to be supplied when customers are making a purchase. In your PayPal account, click on Profile, then Website Payment Preferences, then enable the option under Contact telephone number.

For more information please refer to: PayPal Integration Center: Getting Contact Telephone Numbers

This invoice has already been paid. For more information, please contact the merchant

Problem description:

When our client checkout to pay us at PayPal this message came up after they press on submit order:

This invoice has already been paid. For more information, please contact the merchant.

Solution:

Usually such error occurs when the same PayPal account is used for more than one on-line stores.

To get rid of the error, change the "Order prefix" value on the PayPal configuration page for all your X-Cart stores. Make sure the order prefix value is unique for each on-line store.

The same solution should be applied when using PayPal Pro and getting this error:

Reason: Declined Status: Error: Payment has already been made for this InvoiceID. (Code: 10412, Severity: )