Icon for Braintree, a PayPal Company

Braintree is a full-stack payments platform that makes it easy to accept payments on your website. Our Braintree integration supports one-time and recurring billing options.

Payment Options

Merchants in the US, Canada, Australia, Europe, Singapore, Hong Kong SAR China, Malaysia, and New Zealand can use Braintree to accept most credit and debit cards, including Visa, MasterCard, American Express, Discover, JCB and Diner’s Club.

Currencies Supported

Merchants can accept payments in over 130 currencies. Contact Braintree for the most up-to-date list of foreign currencies and for more information about presenting transactions in multiple currencies.

Gateway Fees

Click here for the current Braintree Payments fees on transactions. Braintree does not charge a fixed monthly fee (you only pay for what you use). There is no minimum transaction processing amount.

Implementation Notes

Braintree is bundled with the core Paid Memberships Pro plugin. In addition to setting the API information in the PMPro payment settings, note that you will also have to create “plans” in Braintree to match your level ids. For your level with ID 1, create a plan called “pmpro_1”. For level 2, “pmpro_2″/etc. The payment amounts and settings for the plans will be updated to use the values set in Paid Memberships Pro, but the plans must be in place there for tracking.

Braintree does not support trials greater than 0. You can, however, set a custom trial where the first X payments are free (0). If you need to modify this, consider using the Subscription Delays Add On.

In addition to creating “plans” in Braintree, you will also need to set up webhooks.

Braintree Sandbox/Testing mode

To test a membership checkout with Braintree as the gateway, you will need to set up a Braintree Sandbox account. This is an entirely separate environment from your production account, with unique login information, merchant ID and API keys.

  1. Log in to your Braintree Sandbox account.
  2. Navigate to the Memberships > Payment Settings page of your WordPress site.
  3. Set your “Payment Gateway” to “Braintree Payments”.
  4. Set the “Gateway Environment” to “Sandbox/Testing”.
  5. Enter your Braintree Sandbox account’s “Merchant ID”, “Public Key”, “Private Key”, and “Client-Side Encryption Key”.

After saving the settings, log out or browse to your membership levels page in incognito mode to test checkout for a paid level. Braintree’s testing documentation for the PHP SDK page has test card numbers you can use for checkout. Use any valid future expiration date, any 3 digit CVV (or 4 digits for Amex) and the test card number below:

NumberCard type
American Express378282246310005

For more information, visit Braintree’s Testing Guide for the PHP SDK integration.