Braintree For WooCommerce


Accept Credit Cards, PayPal, PayPal Credit, Google Pay, & ApplePay all in one plugin for free!

Official Partner Of Braintree

Payment Plugins is an official partner of Braintree & PayPal and has worked closely with them to develop this solution.


  • Google Pay
  • Apple Pay
  • PayPal & PayPal Credit
  • Credit Cards
  • 3D-Secure
  • Advanced Fraud Tools
  • Custom fees
  • SAQ A PCI Compliant
  • Beautifully designed forms
  • Create your own custom form
  • Integrates with Woocommerce
  • Integrates with Woocommerce Subscriptions 2.0.0+
  • Offer subscriptions without the WooCommerce Subscription plugin
  • Integrations with WooCommerce currency switchers
  • Donations
  • Void transactions
  • Automatic settlement or authorize transactions
  • Issue refunds
  • Dynamic descriptors

Custom Form Demos

Click HERE to see live demos of the custom payment forms.


For more information or questions, please email or read through our detailed documentation.


  • Google material form
  • Simple card form
  • API settings for communicating with Braintree.
  • WooCommerce Settings
  • Additional WooCommerce Settings.
  • Donation Settings
  • Debug Log
  • Customize messages
  • Select a custom form design
  • Manage donations
  • Build in subscription functionality


How can I found out more?

Please read our documentation which covers all the plugin functionality.

Do I have to have the WooCommerce Plugin?

While we suggest that you use WooCommerce when selling products for tracking and report purposes, it is not required. You can use the donation functionality to sell products as well.
All you need to do is customize the donation form to your liking via the plugin settings page and add the shortcode [braintree_donations] to the page that you wish to sell an item. If you want
the form to contain a list of payment amounts, simply add the following shortcode and include the index and amount. [braintree_donations 1=”1″ 2=”2″ 3=”3″ 4=”5″ 5=”10″]. If you only want one price to be allowed, only inlcude one index [braintree_donations 1=”55″].

Where can I access my public and private keys?

Login to your Braintree account and select Account->My User->View Authorizations

What is a Merchant Account ID?

The Merchant Account ID determines the currecency that your transactions are settled in. You can have multiple Merchant Account ID’s if your Braintree account has been
configured for multiple currencies.

How do I test this plugin?

All of the plugin functionality can be tested in sandbox mode. If you haven’t already, sign up for a Braintree Sandbox Account
and download this plugin. Set the mode to Sandbox and configure your API keys by following the tutorial located within the plugin. You can use Test Cards for all of your sandbox transcations.

Can I customize the look of the plugin?

Yes, you can select between several options when customizing the look and feel. In addition, you can create your own custom payment forms.

Who can I contact for information on this plugin?

Please email

Do I have to have the WooCommerce Subscriptions Plugin?

No, this plugin allows you to convert a regular WooCommerce product into a subscription.

I don’t know where to start, what should I do?

Once you install and activate the plugin, there are detailed instructions contianed within the plugin to help guide you.


Best Braintree Plugin / Quick Support!

This is a really good plugin for accepting Single and Recurring Donations on WordPress. I got a quick reply from Clayton from Payment Plugins with 2 issues I was having on my end which turned out to be a simple fix. The plugin gives you options for the look of the forms and also has good documentation on building custom forms as well as documentation on implementation. The Braintree website is super user-friendly and works hand in hand with this plugin. I would use this plugin again and would recommend this plugin to anyone building a WP site involving Donations.

Excellent E-commerce plugin

Really happy since I installed the braintree for woocommerce plugin.

Works flawlessly for credit card transactions coming from all over World. A perfect alternative for customers who don’t use PayPal.

All payments are transferred directly to your bank account in less than a day.

Definitely a MUST for e-commerce wordpress users who are looking to increase their sales

Christian –

Great plugin! Many customisations available

As the standard Braintree plugin made checkout page very slow and had limited customisations, I started looking for a better plugin.

I found it!

Works really well, fast and easy to make customisations to make the form look exactly the way you want it.

Great plug in for WooCommerce and outstanding customer support

We are a high volume customer and were having some issues with the integration between Braintree/Kount and our WordPress website that no one was able to help me with. Then I was referred to Customer Support went above and beyond any expected service to help us get things running smoothly, even answering messages during Thanksgiving break. It was one of our most busy/critical times and I really appreciated all that was done to research our issues and look for solutions that weren’t obvious. They were patient with my lack of technical knowledge and walked me through some issues I wouldn’t have been able to work out on my own. I definitely would recommend them due to their excellent customer service and advanced Kount integration.

Read all 65 reviews

Contributors & Developers

“Braintree For WooCommerce” is open source software. The following people have contributed to this plugin.



  • Updated – Out of the box subscription functionality. Subscription price is now reflected in order total if subscription does not have a trial.
  • Updated – CSS for Google payment form
  • Added – WC 3.5.0


  • Fixed – Place Order button not showing after selecting PayPal or GooglePay then another gateway not provided by plugin.


  • Updated – PayPal Smartbutton flow. PayPal Smart button now replaced Place Order button when gateway is selected.
  • Updated – Google Pay flow. Google Pay button replaces Place Order buton when gateway is selected.


  • Updated – WC version 3.4.5
  • Added – Mailing list signup


  • Updated – WC version 3.4.4
  • Updated – All features included in free version now.
  • Added – PayPal Smart Button integration
  • Added – PayPal credit support for subscriptions
  • Added – PayPal Insights and Promotions integration


  • Updated – WC version 3.3.3
  • Added – Google Pay
  • Fixed – PayPal address ID error


  • Updated – JS V3 version update
  • Added – Option to control order processing email when Kount Review status assigned
  • Added – Billing phone donation field


  • Fixed – 3DS integration with currency switcher ajax requests
  • Added – Change default payment method on Payment Methods page


  • Fixed – WCS change to admin edit subscription payment_method meta names
  • Added – WC tested up to 3.2.5


  • Added – Kount API authorization
  • Added – Kount decline actions.
  • Added – Hosted fields streetAddress when 3DS enabled.
  • Added – Bulk capture and void actions.


  • Fixed – payment method not showing in order complete email for WC 3.0+
  • Added – tested to WC 3.2.3
  • Removed – Retry option for WCS. WCS 2.1+ has a retry system so no other functionality is needed


  • Added – Terms and conditions check added client side for user experience
  • Added – Integration with Kount Event Notification System (ENS)
  • Added – WC 3.2.1 compatibility check added
  • Updated – Javascript V3 version changed to 3.24.1


  • Added – Filter for script enqueuement.
  • Added – Filter after donation success.
  • Fixed – Custom fields on donation page.


  • Added – Card type display
  • Added – Access to hosted fields instance
  • Cardholder name added to guest checkout.
  • Fixed – Incorrect coupon application of Braintree Subscription
  • Fixed – Recurring payment error fixed.


  • Skipped


  • Fixed – JS error on admin settings page if merchant accounts not configured.


  • Added – Place order button now initializes PayPal and PayPal Credit in addition to the PayPal buttons.


  • Fixed – Safari js error when sending shipping address.
  • Added – Catch malforned database entries for customer ID.


  • Fixed – custom form donation page.


  • Added – Fees can be taxed.
  • Updated – Merchant account settings UX.
  • Fixed – PayPal buttons can be customized.
  • Fixed – 3DS cart total if shipping updates change total.


  • Updated – Update of vaulted customer now hooked into standard WordPress actions instead of WooCommerce.
  • Updated – Update to user profile within admin updates vaulted customer.
  • Updated – Save payment method requests on checkout page incorporated into transaction object for improved performance.
  • Updated – Dropin V3 supports locale option now for displaying translated text.
  • Added – Billing agreement description for PayPal.
  • Added – Dynamic text translation for WooCommerce WPML.
  • Added – Card image on payment methods list.
  • Added – Payment method icon select.
  • Added – Payment method icons on payment methods page.
  • Added – Customer update during checkout if customer attributes have changed.
  • Added – 3D Secure actions based on verification response.
  • Added – User payment method management from Admin Panel in WordPress.
  • Added – Ability to add a fee to the checkout.


  • Fixed – (WC 3.0.0+) Braintree Variable Subscription displaying length on product page.
  • Fixed – (WC 3.0.0+) One time shipping for Braintree subscriptions.


  • Fixed – Tax rounding on WC Subscription recurring payment added for WooCommerce 3.0.0 or greater
  • Added – Ability for admin’s to change the WC Subscription payment method.
  • Added – WC 3.0.0 compatibility for WC_Product dynamic variable calls.


  • Fixed – WC subscription defaulting to month.
  • Added – Option to enable My Account Subscriptions link.


  • Added – Force account creation for subscriptions in WC 3.0.0+
  • Fixed – Device data when saving a payment method.


  • Added – Compatability with WC 3.0.0


  • Added – Recurring donation start date option
  • Added – PayPal shipping address during checkout.
  • Fixed – compatability for WC version 2.6.0 and lower for Gateways.


  • Fixed – subscription fields not present on variable product.
  • Added – PayPal Credit as separate gateway.
  • Added – Donation gateways.
  • Added – checkout page refresh option.
  • Added – WPML integration
  • Changed – subscription text from every 2nd month to every 2 months etc.
  • Improved – device data
  • Improved – WCS wehooks send message if subscription not found.


  • Fixed – determination of subscription end date for last day of month.
  • Added – PayPal credit
  • Added – conditional statements
  • Fixed – donation modal and inline rendering at beggining of page.


  • Added – Improved admin subscription creation.
  • Fixed – Currency display for subscription.


  • Fixed – donation payment method not recognized.
  • Fixed – Status correctly set for subscription cancelled webhook.


  • Fixed – payment fields display on checkout page for subscriptons with free trial (plugin subscriptions only).
  • Added – Check to see if checkout is processing when webhook is called for subscription charged successfully hook.


  • WordPress 4.7.2


  • 2.5.3 considered beta. All changes covered in 2.5.3


  • Added – Apple Pay
  • Added – Improved functionality for plugin subscriptions.
  • Added – Admin’s can configure how payment methods are displayed.
  • Added – Payment methods with active subscriptions cannot be deleted.


  • Fixed – When a subscription is cancelled, a pending-cancellation status is given.
  • Added – TLS 1.2 connection test for admin.


  • Fixed – Checkout page scrolling issue when free product was in cart or subscriptions were being upgraded resolved.
  • Added – Tokenzation errors displayed on checkout page now.


  • Added – Improvements to the WooCommerce Subscription recurring payment functionality. Any order that fails payment goes to a ‘failed’ status.
  • Added – Class loader prevents null values now.


  • Added – Additional checks to ensure that the custom form fields load.
  • Added – Payment icons can now be displayed on the outside of the payment form.
  • Added – Donations can now be set as tax exempt.


  • Fixed – iFrame already exists resolved. Occured with some themes that have heavy ajax use.
  • Added – Recurring donations available now.
  • Removed – Order status settings. WooCommerce determines order status.
  • Added – filters for process_payment call on Gateway.


  • Fixed – PayPal using dropin form and 3DS.
  • Added – Custom form loader for checkout.


  • Fixed – Non braintree related orders were not rendering in admin panel.


  • Added – Merchants can now select between PayPal checkout or vault flow.
  • Added – Transactions can be authorized or settled automatically.
  • Added – Transactions can now be voided.


  • Added – Simple form added.
  • Improved – Theme support for custom forms.
  • Improved – PayPal gateway user experience.


  • Added – Support for hosted forms now available. Merchants can create their own custom forms or customize the provided form designs.
  • Added – PayPal can now be setup as a separate gateway.


  • Added – Call to payment_complete() of WC_Order after transaction success in order for stock to be reduced.


  • Added – Customer’s can add and delete payment methods from the my acount page.


  • Added – Tax amount now reported on transactions.
  • Fixed – Merchant account associated with Braintree Subscription.
  • Added – $0 amount transactions for synchronized subscriptions.


  • Added – Improved subscription logic for WooCommerce Subscriptions. A new order is created now when a subscription payment is processed.


  • Changed – font size for admin notices so they are more visible.
  • Changed – API keys now save during connection test to prevent confusion.
  • Fixed – Some themes caused multiple dropin forms to show on checkout page.
  • Added – Default method selected on checkout page for users with saved payment methods.


  • Fixed – Webhooks now send response code 200 to Braintree.
  • Added – Improved admin notifications.
  • Added – Pretty url for webhook service added. Old url is still accepted.


  • Added – Improvements made to payment method save functionality.


  • Added – Shipping address has been added to sale transactions.
  • Added – Dynamic descriptors
  • Added – Merchant account validations


  • Fixed – Order prefix was showing up as suffix in versions after 2.3.0.
  • Added – Validation to compare merchant account Id with merchant Id. This prevents customer’s from confusing the two values.
  • Added – Connection test for API keys.


  • Added – Transactions now capture the billing state for tax purposes. Donation form can now be used to sell products.
  • Fixed – Data update for recurring payments using Paypal.


  • Fixed – Refunds were displaying unsuccessful message when refunds were processing correctly.


  • Added – Fail on duplicate payment method option.
  • Fixed – Pay for order screen.
  • Fixed – JQuery issue with certain themes and plugins.


  • Fixed – Issues with standard PayPal plugin.
  • Added – Webhooks for Subscriptions.
  • Added – New admin ui for configurations.


  • Added


  • Fixed – Dropin UI showed error message cannot use paymentmethodnonce more than once when incorrect card data was entered.


  • Change – License activation url updated.


  • Fixed – Donations error.


  • Fixed – Dependency on WooCommerce within Donation page.


  • Fized – During checkout, if country was changed, states were not updating properly. Resolved.


  • Added – Support added for custom orders.


  • Added – Support for Woocommerce Currency Switcher. Merchants can now configure as many Merchant Account Id’s as they want.


  • Fixed – Warning messages on the donation page when WP_DEBUG set to true.


  • Fixed – When deleting multiple subscriptions, exception was thrown due to a null object. Deprecated methods replaced for Woocommerce Subscriptions.


  • Resolved – PHP version 5.5 and lower displayed warning messages in teh admin panel when WP_DEBUG set to true. Issue has been resolved now.


  • Deprecated – Form 2 has been deprecated in favor of form 0 and 1.
  • Changed – Paypal only checkout no longer auto submits after Paypal login. For user experience improvement, customer must
    click “Place Order” to process the payment.


  • Added – site url and admin email sent to during plugin activation in order to help with technical issues and trouble shooting questions.


  • Fixed – Deprecated calls to checkout.js file updated.


  • Fixed – Duplicate dropin forms resolved when ajax refresh triggerd by Woocommerce.


  • Fixed – Token for subscription payment method added to subscription meta.


  • Added – The donation form can now be configured to be inline or modal and the donatin button text can be customized.
  • Added – Improved log messages for failed payments.


  • Update – Website changed from to for trademark reasons.


  • Fixed – Transaction log was overwritten during upgrades. Transaction log is now saved in a new folder located in wp-content to avoid this issue.


  • Fixed – Fatal Error resolved for class Braintree_For_Woocommerce


  • Fixed – If Woocommerce was not enabled, the plugin would error out. Now, Woocommerec is not necessary to run the plugin for donation payments.


  • Added – Admins now have the ability to select payment method images to display on the checkout page.
  • Fixed – Potential error if exception thrown during subscription creation.
  • Added – Additional transaction log message for enhanced tracking implemented.


  • Added – Transaction log that records all transactions related to orders, subscriptions, and donations. The transaction log can be used to trouble shoot payment errors or verify processed payments.
  • Added – Support for Woocommerce Subscriptions Version 2.0.0+. Integration with Braintree monthly subscriptions or Woocommerce Subscription’s automatic billing.
  • Added – Support for multiple subscriptions in shopping cart.
  • Added – Support for mixed shopping cart.
  • Added – Customer can now change payment method on subscriptions.
  • Added – Admins can change the recurring payment method on a subscription.
  • Added – Ability to validation of postal code and billing address for orders and subscriptions.
  • Added – Ability to validation of postal code and billing address for donations.
  • Fixed – Transactions now pass the countryCode for validation within Braintree.
  • Fixed – Ajax integration with checkout page to ensure nonce is not replaced during Woocommerce ajax calls on checkout page.


  • Fixed – Use of saved payment methods was failing due to false positive check on credit card token.


  • Fixed – Fixed issue Cannot use object of type WP_Error as array.
  • Fixed – Correct payment type used now displayed on order review page and in Admin order page.


  • Added – Enhanced Paypal checkout. Admins can now select if they want to only display Paypal as a checkout payment option.


  • Added – Admins can now see when their license will expire by navigating to the “Activate License” page.
  • Added – Improved UX and UI for donation screen.
  • Added – Custom forms can now be used to validate AVS settings for woocommerce checkout and donations.


  • Added – Non logged in users can now make donations.


  • Fixed – Error message added on donations form indicating failed transaction.


  • Changed – On the Woocommerce Order Admin page, Admins can now see the Payment type and Masked credit card number that was used for the order. Example. Visa – 401288******1881; Paypal –
    This is compliant with PCI standards.


  • Fixed – Woocommerce was not detected if plugin loaded before Braintree for Woocommerce. Plugin is now detected regardless of plugin loading order.


  • Fixed – Updated the payment method title to show “Credit Card” instead of Braintree For Woocommerce. Included check for Woocommerce_Subscriptions activation to prevent any conflicts.


  • Fixed – Conflict with folder capitilaization. WordPress issues fatal error during plugin activation when folders from previous version are lowercase. If you
    receive an error message that Currencies.php and Braintree_Donations.php cannot be found, simply delete the plugin folder and files and reinstall version 2.0.7.


  • Fixed – Possible issues with checkout if Woocommerce Subscriptions was not activated fixed.


  • Added – Integration with Woocommerce Subscriptions. Merchants can now charge for subscription products and services using their Braintree and Woocommerce Subscriptions install.


  • Added – Additional security checks added for transactions when customers using payment method tokens.


  • Fix – Bug found in checkout.js. There is the possibility that the response object from braintree does not indicate the payment type. Because of this, additional checks have to be
    made to determine of the payment type is CreditCard or Paypal.


  • Some themes might of had a conflict with the function “load_admin_scripts” so it was renamed to prevent any future clashes.


  • Additional setting made in the Woocommerce Payments settings page. Merchants can now control the status that is assigned to orders
    when a payment is succesfully processed.


  • Major update.
  • This plugin is now a paid plugin. For those that have already downloaded the plugin, please email
    to receive a free 20 activation license in order to keep processing payments. The 20 day license should provide merchants with enought time
    to evaluate the new functionality and either pay for a full year, or find a suitable replacement. Please email the developer if you need more than 20 days to either
    find a replacement plugin or evaluate this plugin.
  • Fix – when customers opt to save payment data, a random id is generated in the Braintree vault
    and saved in the merchants wordpress database as user meta. This ensures that no two customers can ever have
    the same id, even across different domains that share a Braintree gateway.
  • Fix – woocommerce status is changed to complete upon succesful payment transaction.
  • Added – Seperate config screen where merchants can maintain all of their API keys & UX settings.
  • Added – Donations functionality.


  • Updated PHP Braintree library to version 3.5.


  • Update to method that sends the client token to the browser.


  • Removed add_action call in braintree-payment-gateeway.php file as it was a placeholder for later releases.


  • List versions from most recent at top to oldest at bottom.


This version fixes a security related bug. Upgrade immediately.