Configuring PayPal
- Overview
- PayPal Standard
- PayPal Payments Pro (formerly Website Payments Pro)
- PayPal PayFlow Pro
1. Overview
PayPal's native recurring billing and subscription management functionality is cumbersome and limited to put it lightly. So, first of all, let's be clear. Cheddar does not use any of PayPal's native recurring billing or subscription management API's. As a result, we are able to leverage the full power of Cheddar while simply using PayPal to run transactions. Cheddar is a welcome alternative to PayPal's subscription management or recurring billing functionality.
Using PayPal to process payments, you can be up and running and collecting cheddar in just an hour or so. PayPal Standard is the easiest way to go but has limitations. PayPal Website Payments Pro and PayPal PayFlow Pro both require a bit more effort to setup but also enable you to accept direct credit cards.
The best way we have found for getting support at PayPal is to use their Merchant Technical Support system. We recommend that you create an account there so you can log in and manage your support discussions in their system.
2. PayPal Standard
Anyone with a Business or Premier PayPal account can accept standard payments. No merchant account necessary. Go here to setup a Business or Premier account or upgrade your current account.
This can get a little confusing so we'll try to explain as best we can.
NOTE: The following assumes you have already chosen the PayPal Standard for payment processing in the Quick Setup Payment Processing page and you have a Business or Premier PayPal account.
To set up PayPal Standard payments with Cheddar, all you need to do is click through the third party permissions workflow. Then, enter your Business or Premier account email address in the Quick Setup Go Live page configuration page.
2.1 Customize PayPal Payment Page
To customize your PayPal page with your logo and design, follow these five steps:
Go to your Profile page:
Go to Custom Payment Pages from the My Selling Tools menu:
Add a new page style:
Customize the page design to match your company's look and feel:
Make your new custom theme the Primary:
WEIRDLY, you may notice that Paypal does not actually use all of the fields you customize here. This is strange, indeed, but it is a known issue. When we asked Paypal about it, here is their response:
Actually that section is mainly for other PayPal products like Express Checkout and Web Payments Standard. Adaptive Payments takes only the header image option. When you use the AP Pay API, you may add a little more customization to setup business name in the flow, but that's all.
This can be considered an enhancement to AP but not a defect.
We would definitely like the Adaptive Payments workflow to behave the same as the other Paypal workflows, and we assume you would too! Your customers would feel more comfortable if they saw your branding and color scheme during their checkout process. If you agree, feel free to ask Paypal to make this change: Paypal Merchant Technical Support
2.2 How Does It Work?
Let's be clear... Cheddar does not use any of PayPal's native recurring billing or subscription management functionality. These features are much too restrictive and clunky for the needs of most merchants.
Cheddar's integration with basic PayPal uses the Adaptive Payments Preapproval API with Third Party Permissions. Yeah, that's a mouthful. This method gives us the most flexibility and enables us to provide the best experience to your customer.
2.2.1 What's a Preapproval?
A Preapproval is a sort of billing agreement between you and the customer. A Preapproval request is a request to be given permission by the customer to automatically charge their PayPal account at-will within the parameters of the agreement. This gives Cheddar the ability to execute recurring and one-time transactions according to your specifications throughout your relationship with your customer.
2.2.2 The Process
First, Cheddar issues a Preapproval request on your behalf according to your specifications (the defaults work great). Next, the customer is redirected to PayPal so they can login and accept the Preapproval. Finally, Cheddar receives an Instant Payment Notification (IPN) message from PayPal regarding the outcome (accepted, canceled, etc). Assuming that the customer accepts the Preapproval, Cheddar activates their account and begins charging the customer according to their subscribed Cheddar pricing plan.
2.2.3 What's an Instant Payment Notification (IPN)?
Cheddar handles these for you so no need to be concerned. If you'd like to learn more, feel free to read on.
An IPN is a message sent by PayPal behind the scenes to a specific URL. The message can contain information about many actions and it's used for many purposes. For the most part, you don't need to worry about what an IPN is, what it does or what Cheddar uses it for. The important part is that IPNs are a required part of the process. PayPal sometimes auto-disables IPNs on an account for various reasons. Usually it's because the recipient of an IPN isn't handling it properly. There are two types of IPNs:
- The type generated by Cheddar. These are created behind the scenes. No need to be concerned here.
- Those set up within the PayPal merchant profile interface. These are what we call "static" IPNs. Sometimes these can interfere with Cheddar's IPNs.
If you have the 2nd type of IPN setup in your account, you must either make sure that it remains in good standing or turn it off. Sometimes a faulty recipient of a static IPN causes PayPal to disable all IPNs on the account including the ones that Cheddar needs. That's not good. If you're having trouble with this, check your IPN history under the history menu in your PayPal account. If anything is "Disabled" or otherwise not marked as "Sent" in there, you might have a problem.
You can also check the status of your IPN message delivery here: https://www.paypal.com/cgi-bin/webscr?cmd=_profile-ipn-notify. If "Message delivery" says "enabled" and the "Notification URL" is empty, you should be ok. If not, we might have problems. Your IPN settings should look like this:
2.2.3.1 Re-enabling Disabled IPNs
If your IPNs have been auto-disabled by PayPal for whatever reason, it's a little tricky turning them back on. If you have a static URL set in your IPN preferences (you can see here: https://www.paypal.com/cgi-bin/webscr?cmd=_profile-ipn-notify), it could be that this is the reason your IPNs have been disabled. First, ensure that the URL you have configured is accepting and properly processing the IPNs. If it is, simply reenable IPNs with that same URL (assuming you still need it).
Otherwise, you actually need to temporarily setup a static IPN URL in order to re-enable our dynamic IPNs. It's counter-intuitive, yes, but it is what it is. We've created a special IPN listener that we call the Null Listener. We created just so you can re-enable your IPNs. The URL is https://cheddargetter.com/service/paypal/null-ipn/productId/[your_product_id]
. Replace [your_product_id]
with the proper id. It's the UUID found in the URL bar immediately after you login to the Cheddar admin GUI. If you need help finding that, let us know.
Once you have that configured and you're convinced that everything is working properly, you can disable the Null Listener. To do that, simply turn off IPNs. I know, again, it's counter-intuitive. To do this, click the 'Turn Off IPN' button here. Your IPNs will appear to be disabled entirely but the next dynamic IPN that Cheddar requests will automatically re-enable the IPNs.
If you're not sure what this is all about, go ahead and contact us with the details and we'll help you out.
2.2.4 Changing Your PayPal Receiver Email
If you find yourself needing to change the the PayPal receiver email connected to your account there are a couple points you should know. First, all customer preapprovals are tied to the receiver email with which the preapprovals were issued. Therefore, preapprovals cannot be transferred to the new receiver email.
Second, when you change your receiver email, Cheddar automatically enters "migration mode." In this scenario, all past preapprovals remain on the former receiver email until a new preapproval is required. This typically occurs when the preapproval limit is reached. At that point, the customer will accept a new preapproval issued by the new receiver email. New signups will use the new receiver email by default.
3. PayPal Payments Pro (formerly Website Payments Pro)
If you don't already have PayPal Payments Pro enabled on your PayPal account, you'll need to do that. Go here to get PayPal Payments Pro.
NOTE: The following assumes you have already chosen the PayPal Payments Pro for payment processing in the Quick Setup Payment Processing page and you have setup PayPal Payments Pro with PayPal.
Your PayPal account must also be approved for reference transactions. To accomplish this, you will need to contact Paypal through their support system and simply ask "I would like to have my account approved for reference transactions."
To set up PayPal Payments Pro payments with Cheddar, all you need to do is click through the third party permissions workflow. Then, enter your Business or Premier account email address in the Quick Setup Go Live page configuration page.
4. PayPal PayFlow Pro
Credentials you'll need:
- Partner: This is the name of the Affiliate that you enrolled in PayFlow Pro through. In most cases, this value should be 'PayPal'
- Vendor: This your PayFlow Pro Merchant Name
- User: This is the username under which you'd like to make transactions. By default, this is the same as your Vendor account name.
- Password: Password for the user account you're using.
You can find your Partner and Vendor credential under Account Administration -> Contact Information in the PayFlow Pro management suite.
Settings you'll need to change in the PayFlow Pro management suite.
Account Administration -> Manage Security
Required: Allow Reference Transactions set to Yes
If you're getting a Cheddar error message that says:
401:2001 The configuration at the gateway is incompatible
It could be because of your Reference Transactions setting in the PayPal Manager. The error response from Payflow is:
117:Failed merchant rule check
That usually means that Reference Transactions are not enabled. See above for further information about the Reference Transactions setting.