PayPal Website Payments Pro 3.0
PayPal’s Website Payments Pro 3.0 is the original Pro package that PayPal offered. It works on the DoDirectPayment API and is being slowly deprecated since the launch of Payments Pro 2.0 that works on the PayFlow API. You need to be sure that your account is setup for this version of Pro before configuring this payment gateway or you will end up with errors when people attempt to pay you via credit card.
For more details on this, see The History of PayPal Payments Pro.
Setup Steps
1. Navigate to WooCommerce -> Settings.
WordPress Admin Panel -> WooCommerce -> Settings
2. Click on the Checkout tab.
WooCommerce Checkout Settings
3. Click the PayPal Website Payments Pro (DoDirectPayment) link to enter the settings page.
WooCommerce PayPal Pro DoDirectPayment Settings
4. Set each option according to your needs.
Enable / Disable
Check this box to enable the payment gateway. Leave unchecked to disable it.
Title
This controls the label the user will see for this payment option during checkout.
Description
This controls the description the user will see for this payment option during checkout.
WooCommerce PayPal Pro DoDirectPayment Title and Description
Invoice ID Prefix
This allows you to set a value to be used as the prefix on invoice IDs generated by WooCommerce.
- This can help to resolve duplicate invoice issues that may arise if you’re using PayPal Payments Pro on multiple websites where the same invoice IDs can get used. A prefix is required to avoid declined payments when this happens.
Card Icon
Set the image you would like to use for the credit card icons on the WooCommerce checkout page.
Error Email Notifications
Enable this to receive an email any time a PayPal Payments Pro failure occurs.
- This can help you track overall failure rate of transactions on your site, as well as diagnose issues that could potentially be fixed by adjusting settings in your PayPal account.
Test Mode
Check this box to enable test mode so that all transactions will hit PayPal’s sandbox server instead of the live server. This should only be used during development as no real transactions will occur when this is enabled.
PayPal Sandbox API Username, Password, Signature
- Sandbox API Username – This is the API username value for a sandbox account you would like to test with.
- Sandbox API Password – This is the API password value for a sandbox account you would like to test with.
- Sandbox API Signature – This is the API signature value for a sandbox account you would like to test with.
PayPal Live API Username, Password, Signature
- Live API Username – This is the API username value for your live account to process real payments with.
- Live API Password – This is the API username value for your live account to process real payments with.
- Live API Signature – This is the API username value for your live account to process real payments with.
Error Display Type
Detailed displays actual errors returned from PayPal. Generic displays general errors that do not reveal details and helps to prevent fraudulent activity on your site.
Payment Action
This allows you to adjust how the original transaction is processed.
- Sale – Captures the payment immediately and moves the money into your PayPal account when the order is placed.
- Authorization – Authorizes the funds on the buyer account, but does not fully capture or move any money.
- When ready, you may capture the funds through the WooCommerce order screen.
- NOTE:Â For more details on this see our documentation for WooCommerce PayPal Authorize and Capture.
Send Item Details
Enable this option to include line item details in the PayPal payment request. Â Doing this will include the details in the PayPal transaction details so that they show up in the PayPal account.
PayPal Payments Pro DoDirectPayment Line Items
Enable PayPal IPN
By default, if IPN is enabled in your PayPal account profile the data will be sent to the URL specified there. If you would like to override this value so that IPNs from this site are sent to a different URL then you can set that URL here.
Enable Tokenized Payments
Enable this option to give buyers the ability to save their payment method for future reference so that they can checkout more quickly. With the payment method saved, next time they buy something on your site they will be able to select the saved payment method and checkout instantly without filling in credit card details.
Fraud Management Filters
Set how you would like to handle orders that are flagged by your Fraud Management Filters in your PayPal account.
Enable Cardholder Name
Enable this option to add additional fields to the checkout page for Cardholder Name. These fields will be separate from the Billing and Shipping Name.
AVS / CVV2 Results in Admin Order Email
Enable this option to include details about Address Verification and Card Security Code results in the order email sent to the site admin.
NOTE:Â This information will not be included in the buyer’s receipt email.
Credit Card Statement Name
Set the value you would like to be displayed on your buyer’s credit card statement. This is typically your company name.
Credit Card Month Format
Set how you would like to display values for the Credit Card Month. You can choose to display full names of each month or just display the month numbers.
Credit Card Year Format
Set how you would like to display the Credit Card Year on the WooCommerce checkout form; either 2 digits or 4 digits.
Debug Log
Check this box to enable logging for DoDirectPayment API calls. These logs will be saved under /wp-content/uploads/wc-logs/.
5. Click the Save Changes button to submit your changes.
Looking for Live Help?
Schedule a live meeting with Drew Angell, PayPal Certified Developer, and get all of your questions or concerns answered.
Featured PayPal Products and Services
-
PayPal Support
$150.00 -
PayPal for WooCommerce
FREE! -
WooCommerce Multiple PayPal Accounts Plugin
FREE! -
PayPal Shipment Tracking for WooCommerce
$49.99 -
Offers for WooCommerce
$59.99 -
WordPress PayPal Invoice Plugin
$20.00 -
PayPal Webhooks for WordPress
$79.99 -
Sale!
PayPal IPN for WordPress
Original price was: $59.99.$49.99Current price is: $49.99.
Hi there,
I appreciate that you have made this plugin.
I have installed your plugin and provided the API values for this payment option. The paypal account is business type (paypal payment pro). But the payment option doesn’t display on the checkout page.
I’m not sure what I’m missing. Hope you can help.
Thank you.
Please contact me directly and provide the URL to your site so I can take a look. If you could also provide a login to your WP admin panel that would help.
I appreciate that you have made this plugin.
I have installed your plugin and provided the API values for this payment option. The paypal account is business type (paypal payment pro). But the payment option doesn’t display on the checkout page.
I’m not sure what I’m missing. Hope you can help.
My Site Url Is : http://learningandcreativity.net/bowdabra.com/
Please help Me
Thank you.
In order for the Payments Pro option to show up you need to have an SSL certificate installed on the server and enable the “Force Secure Checkout” option in WooCommerce.
Hi Andrew,
Thanks for your quick reply.
I have enable Credit Card payment pro in my local machine and its displaying correctly. In my local machine I have WO-Commerce version 2.1.11
But using the same setting in the live site admin panel its not displaying Credit Card option. In the live site I have WO-Commerce version 2.1.7
Note: SSL certificate is not installed in my live site. Only in local machine payment option is displaying.
Please help me regarding the same.
Regards,
Rocky
As I mentioned, in order for it to work (in live mode) you have to have an SSL certificate installed with Force Secure Checkout enabled in WooCommerce. It sounds like your test server is setup using the sandbox, which would not require the SSL, but as you said, your live server does not have SSL, which is why it won’t show up there. Install and SSL and enable Force Secure Checkout, and then it will show up as expected.
Hi Andrew,
Thanks for your quick reply.
Currently I Have setup as a test server or using the sandbox test.
When We Make Live Then install SSL . now I Testing in Stating server.
Thanks
Rocky
Hi,
i see the site has no SSL but work properly.
http://www.everbloomflowershop.com/
Currently I Have setup as a test server or using the sandbox test.
When We Make Live Then install SSL . now I Testing in Stating server.
Please help me .
Thanks in Advance.
Thanks
Rocky Verma
i have installed this plugin .
it is working fine in test mode..
But when i use live account details it shows below message on checkout page..
Please guide me..
Thank you in advance.
I don’t see a message..??
Below id the massage :
Sorry, it seems that there are no available payment methods for your state. Please contact us if you require assistance or wish to make alternate arrangements.
Sounds like you must be working in live mode, but you don’t have an SSL cert installed on your server, or if you do you need to make sure the “Force Secure Checkout” option is enabled in WooCommerce general settings.
I am also facing this issue.
I have selected “Enable PayPal Sandbox/TestMode”.
still show me “no available payment” when checkout.
What should I do?
I use gateway “PayPal Website Payments Pro (DoDirectPayment)”
What is the base country your WP / WC site is set to?
Hi, I installed this plugin in my test server.
After update Version 1.1.5, some codes appear in PayPal Website Payments Pro (DoDirectPayment) menu.
This is it.
enabled==”yes”) : if ( $this->testmode == “no” && get_option(‘woocommerce_force_ssl_checkout’)==’no’ && !class_exists( ‘WordPressHTTPS’ ) ) return false; // Currency check if ( ! in_array( get_woocommerce_currency(), apply_filters( ‘woocommerce_paypal_pro_allowed_currencies’, array( ‘AUD’, ‘CAD’, ‘CZK’, ‘DKK’, ‘EUR’, ‘HUF’, ‘JPY’, ‘NOK’, ‘NZD’, ‘PLN’, ‘GBP’, ‘SGD’, ‘SEK’, ‘CHF’, ‘USD’ ) ) ) ) return false; // Required fields check if (!$this->api_username || !$this->api_password || !$this->api_signature) return false; return isset($this->avaiable_card_types[WC()->countries->get_base_country()]); endif; return false; } /** * Payment form on checkout page */ function payment_fields() { $available_cards = $this->avaiable_card_types[WC()->countries->get_base_country()]; ?>
And there is nothing in select box located in Card type of Pay with your credit card menu.
also when I try to pay with this, message is came up.
What am i missing here?
Thanks,
So you’re seeing actual code come up on the settings page instead of the page rendering? Can you please post a ticket here and include a screenshot?
I am facing the same issue. I have force ssl checkout as well as SSL enabled on the site. I also uninstalled the entire plugin and reinstalled it. But the issues are the same – see actual code on the settings page and have a no cc form on the checkout page.
I think it might be an issue with PHP shortcodes. Can you check with your web host to see if your server supports PHP shortcodes?
Hi Andrew, WordPress shortcodes are working fine across the site. If you meant PHP Short tags – I enabled short codes on the server in the ini file. Unfortunately nothing seems to work. I will update you in a couple of days after I try a few other possibilities – if they work.
Hmmm…I’m pretty sure I remember somebody else having that same issue not long ago and it was the short tags. Did you reboot Apache after enabling them on your server?
Hi Andrew,
I have tried just about everything on the apache side, in the code, disabling plugins and everything else I know of from coding and server administration perspective. I still can’t get the darn thing to work.
Now I am trying various combinations of plugin load order – Hopefully that will work. Will keep you updated.
Hi There,
I have followed your instructions and set everything up. The paypal account being used is set up as a merchant. I am getting an “Error Code 10501” admin email when someone tries to pay using a credit card? It says the transaction cannot be process due to an invalid merchant configuration
Any idea what this could mean?
Thanks
Mark
Hi Mark,
That error means that Payments Pro (specifically, DoDirectPayment) is not enabled on your PayPal account. Have you applied for Payments Pro?
Web Payments Pro?
Correct. Website Payments Pro 3.0 is the full name of the product that you need to have enabled. If you have Payments Pro 2.0 then you should have access to both PayFlow and DoDirectPayment, but sometimes they need to specifically enable DDP for you.
Ok well I’ve gone through the application process for Website Payments Pro (whichever one it is) now, wasn’t aware I needed to do that, so it should be enabled in a couple of days according to them…
Thanks for your help
Tjhank you so much for this tutorial. At the very bottom of my woocommerce screen is says enable paypal IPN, but this is not mentioned in your tutorial. Do I enable it?
Are you talking about the settings page for the DoDirectPayment gateway that our plugin provides, or what is it that you are referring to exactly?
Hello,
Great plugin, BUT I have followed all directions to the best of my knowledge and after configuration , I don’t see a paypal payment option on my checkout page.
Are you running in sandbox mode or live? Do you have an SSL installed on the site? Is your site’s country set to US, UK, or CA?
Hi,
Does “PayPal Pro DoDirectPayment” the credit card name? Any information on this?
I know Intuit Payments does not, which leaves us open to fraudulent orders.
Thank you,
I meant to ask if it verifies or validates the credit card name.
The card name is passed in the PayPal request, however, banks do not typically include this in their verification. The response will include an AVS (address verification) and a CSC (card security code) response, but the address does not typically include the name. As long as the address and card code are a match, and you ship to that exact address, you won’t find yourself in a bad situation very often.