11 min read • Updated 6 months ago
PayPal Express Checkout
Connect Foxy to PayPal Express Checkout for secure payments.
- Countries
Afghanistan, Åland Islands, Albania, Algeria, American Samoa, Andorra, Angola, Anguilla, Antarctica...Show more
- Features
- 3-D Secure
- Multi-Currency
FoxyCart is proud to be a PayPal Gold Partner.
Version 2.0: Note that we no longer recommend using the PayPal Express Checkout option for PayPal-hosted payment, except in very specific cases. Our PayPal Checkout option under the PayPal Commerce Platform option provides an updated version of the PayPal-hosted option.
What It Is
PayPal Express Checkout is what most people think of when they think of PayPal. Using Express Checkout the customer leaves your site and goes to PayPal.com to login and pay. If you want to allow the user to pay by credit card without leaving your site then you'll need a “real” gateway, as PayPal Express Checkout cannot process payments outside of PayPal.com. (Think about entering your PayPal password on a site that isn't PayPal.com. Big, big no-no there.)
Is Express Checkout The Same As PayPal Standard?
The short answer is, “Yes, you can use PayPal Express Checkout with your standard PayPal account.” But it's a good question. PayPal “Standard” is a type of account, where as PayPal Express Checkout is a way to use that account. So you can't get a PayPal Express Checkout account, but you can use PayPal Express Checkout with any type of PayPal account. (PayPal Standard is somewhat similar to Express Checkout, but it's standalone and does not integrate in the same way as Express Checkout.)
Setting Up PayPal Express Checkout for FoxyCart
Typically all you'll have to do is enter your email address in your FoxyCart Admin's “payment” section.
FoxyCart currently has two different integrations for PayPal Express Checkout in FoxyCart 2.0 - “PayPal Commerce Platform” and “PayPal Express Checkout (Legacy)”. Generally speaking, you will want to use the “Commerce Platform” integration for your store. The main difference between the two integrations is how subscriptions are handled - with the Commerce Platform integration providing a superior experience for customers and store administrators. For FoxyCart versions 1.1 and older, the single PayPal Express Checkout integration is the same as our “Legacy” integration in 2.0.
When using PayPal to sell subscriptions with the Commerce Platform integration, it does require enabling a feature within your PayPal account that isn't available in all countries. Review the subscriptions section below for more details on this. If you're not sure, please reach out to us and we'll be happy to help you out.
Setting Up Your Currency
Because PayPal Express Checkout (unlike most gateways) can accept a variety of currencies, it's important to set your currency in your FoxyCart admin's “settings” page, through the “store locale” option. Otherwise it may default to the USD, which may not be what you're after.
Allowing Non-PayPal Users To Pay Via Credit Card (Through PayPal)
Your customer who choose PayPal as a payment method will be taken to a screen that allows a login, but in some cases may also allow payment with a credit card without requiring the customer to create a PayPal account. This is not universally available, however. It is only available if:
The store's PayPal account is a Verified Business Account.
The customer is in a country or region that allows payment without a PayPal account. (China, for instance, does not seem to have this option.)
The customer doesn't have existing PayPal cookies that may change their options.
These criteria are controlled by PayPal, and FoxyCart has no control over whether or not a customer is allowed to pay through PayPal without creating an account. For more info please see PayPal's developer forum.
Subscriptions And Recurring Billing With PayPal Express Checkout
If you are selling subscriptions or recurring billing products through FoxyCart and are offering PayPal as a payment option, you must complete the steps here.
FoxyCart's legacy PayPal Express Checkout integration has some limitations regarding subscriptions which you should be aware of. Because of these limitations, the PayPal Express Checkout integration in FoxyCart version 1.1, and the PayPal Express Checkout (Legacy) integration in version 2.0, does not allow users to modify their carts via the sub_token
. You also can not have a subscription with a start date in the future if you're using the legacy Express Checkout integration. Beginning with 2.0, our new PayPal Commerce Platform integration does support native FoxyCart subscriptions, meaning you can use the sub_token
to work with PayPal subscriptions. Here are some additional limitations as described in PayPal's documentation:
To be able to create a recurring payments profile for the buyer, you must ensure that the buyer's PayPal account includes an active credit card.
You can increase the profile amount by only 20% in each 180-day interval after you create the profile.
For recurring payments with the Express Checkout API, PayPal does not allow certain updates, such as billing amount, within 3 days of the scheduled billing date.
There is also an additional limitation if you have subscriptions that are only intended to run once and never renew. For example, a subscription add to cart URL that looks like &sub_frequency=1m&sub_enddate=1m
, meaning the subscription will end on the same day that it is meant to next renew. In these instances, PayPal won't cancel that subscription correctly, but will instead continue to renew the subscription indefinitely. It will instead need to be cancelled manually.
PLEASE NOTE:
1. These steps require a Premier or Business account. You will not be able to complete them if you have a Personal account.
2. Again, you must complete the steps here. Failure to properly configure your IPN will cause subscriptions in FoxyCart to be out of sync with PayPal. Your customers may not be charged or if they are charged, FoxyCart won't have any record of it. Please ensure this is setup correctly before going live.
Part 1: Set up the IPN
Please note that PayPal updates their UI fairly regularly, and their own documentation often doesn't actually line up with how to access certain settings. If you have an issue with the following, please let us know so we can try to update things.
FoxyCart's integration with PayPal's recurring payments system requires the use of PayPal's Instant Payment Notification (IPN) system in order to keep our system and their system in sync after each transaction is processed (or fails to process). Follow these steps to activate your IPN:
Part 2: Set up the API Access
Part 3: Enable "Reference Transaction" Support
This step is required only for the “PayPal Commerce Platform” payment option
Reference Transactions is PayPal functionality that allows FoxyCart to create a billing agreement with your store's customers who wish to pay with PayPal, to allow us to continue to charge your subscription customers at each renewal. It's not enabled by default though for your account, and so you need to contact PayPal to ask for it to be enabled.
Our PayPal rep has let us know that the best number for FoxyCart users in the US to call to get Reference Transaction support enabled for their accounts is 1-888-221-1161. For our users outside of the US, you can reach out to your local PayPal support number - after logging into your account, select “Help & Contact” at the bottom of the page, followed by “Call Us” to see the number for your region. Let them know you'd like to have Reference Transaction support enabled for your PayPal account. If you have any trouble, please let us know and we'll help walk you through it.
Failure to have Reference Transactions enabled for your account will result in customer attempts to purchase subscriptions failing - returning the customer to the checkout with an error.
Part 4: Testing
For more details about recurring payments, please see PayPal's documentation.
PayPal Credit
Foxy v2.0 and above support PayPal Credit. It can be enabled by a simple checkbox in the PayPal settings. For more, please see our blog post about PayPal Credit.
Errors?
If you're doing subscriptions via PayPal Express or if you see the following error in your store's error logs:
Error: There was an error processing your payment: (10002 Authentication/Authorization Failed) You do not have permissions to make this API call
You'll have to follow the Setting It Up instructions for PayPal's Payments Pro, as your account has been set to block 3rd parties from making PayPal requests on your behalf.
Testing
Obtaining A Test Account
Testing PayPal Express Checkout is a little different than normal, as PayPal has a fully functional sandbox system. It's slightly cumbersome and confusing at first, but it does work very well once you figure it out.
Running Test PayPal Express Checkout Transactions
Test Card Numbers
Review the test account you created (above). All test information should be there.