While there are multiple solutions for processing payments via mobile apps, Stripe and Braintree (owned by PayPal) stand out as the most efficient payment systems. We decided to compare these two tech-driven platforms so that our clients have an easier job choosing the best payment system for their app’s needs.
What’s the difference in price?
When considering the price, don’t forget to account for the country your company is based in, since conditions and pricing plans vary. Both platforms allow you to accept payments from anywhere in the world. However, your company must be based in one of the supported countries. Braintree has managed to land in more than 45 countries, while Stripe has only 26 in its list for now. But Stripe provides a service called Atlas that allows you to incorporate a US company and accept payments no matter what country your company is physically based in. The cost of the Atlas service is a $500 one-time fee.
Since the cost of using these services depends on the country you’re based in, we decided to check how things work for a US company. Braintree and Stripe both charge US clients 2.9% plus $0.30 per transaction. The only additional fee is a standard $15 for chargeback transactions.
Pricing plans for Stripe and Braintree are complicated when adding various features that may be integrated into e-commerce websites and apps. Stripe tries to keep its pricing clear and describes its pricing plans with greater transparency and clarity than Braintree. It’s immediately clear what amount will be charged if a transaction is successful, and there’s no charge for refunds. You can read more about Stripe’s supported payment methods.
Braintree will not return transaction fees for transactions refunded in the US. Transaction fees may be refunded in other countries depending on how an account is set up.
Braintree has a shorter list of supported payment methods than Stripe. However, it offers PayPal integration and Stripe doesn’t. Braintree’s pricing plan is a bit more complex in some cases but is still understandable. Customers can even request quotes for integrating local payment methods.
To sum up, it’s hard to say which service will suit you best only by looking at their pricing. It all depends on the type of app you’re developing, the amount of money it will handle, and the country you’re based in.
Whose documentation looks better?
Stripe has well-organized and comprehensive documentation with lots of examples for popular platforms including Ruby, Python, PHP, Java, Node.js, Go, and .NET. Each guide is cross-linked with related articles, so navigating is pretty simple. Most of the guides are broken down into steps so you can easily integrate each section of code in your app.
Braintree also has informative documentation with almost the same list of examples as Stripe (except it doesn’t support Go). Braintree also uses cross-links for related guides.
Both Stripe and Braintree offer wonderful documentation with examples that cover every possible request. This documentation allows developers to integrate the payment systems step by step, reading only necessary information and skipping what they don’t need.
How do payments work?
Each of these payment systems provides you with a server SDK that you need for sending money through its system.
To make payments on the client side, Braintree generates a token using the Braintree Server SDK. A token is an object that stores configuration settings and authorization needed for the Braintree Client SDK. In the client’s code, the token looks like a line that represents a JSON model encrypted with the help of Base64.
The token that the client receives is used to work with the Braintree Client SDK. This SDK connects with the Braintree server and receives a payment method nonce, a string which describes the payment method the user has chosen (credit card, PayPal, etc.). This string is then sent to your server. On your server, the Braintree Server SDK carries out payment operations using the payment method nonce.
With Stripe, a token is generated on the client side with the help of the Stripe server and then sent to your server. This token is just an object and not an encrypted line like in Braintree. So Stripe lets you decide in what form you would like to send the token to the server, either as is or with your own encryption. On the one hand, your own encryption will provide better security when communicating with the server. But still, encryption is not a must.
Stripe warns in their documentation that you need to use an SSL connection on your server, without which you won’t be able to interact with the Stripe server, as they use an HSTS protection mechanism. You can read more about Stripe security here. After your server gets the token, you can process payments using the Stripe Server SDK.
Basic functionality for processing payments is the same for both services. Alongside regular checkouts, they provide recurring payments with possibilities for discounts, add-ons, and so on. Stripe also offers a marketplace solution. Braintree used to provide the Braintree Marketplace product, but now it doesn’t allow new merchants to register. So if your business model includes marketplace payments, it’s better to consider Stripe as your payment provider.
Supported payment methods
Each payment gateway offers a different set of payment options. Some of these options are provided by both platforms and some are unique. For example, Braintree supports payments via PayPal (it’s owned by PayPal, after all) and Venmo, which is also owned by PayPal.
So if your users have either PayPal or Venmo, they won’t have to enter their credit card data in your app. If your users don’t have a Venmo account, they won’t have the option to pay using Venmo. However, the Pay with PayPal button will lead a user to the PayPal website to log in to their account if they don’t have the PayPal app installed.
On the other hand, Stripe offers Alipay and WeChat payments, which will be very helpful if your business is aimed at the Asian or global market.
Braintree also has a One Touch feature. The idea is to let users pay instantly in an app by redirecting them to the PayPal or Venmo app on their device.
Stripe has rolled out innovative capabilities such as issuing physical and virtual cards and using terminals to extend your online presence into the physical world. Both of these features allow for new business models.
Braintree is great at security. They’ve created a safe SDK that uses a token encrypted using Base64. This Base64-encoded token is generated on the server without storing any key on the client side. Braintree has also partnered with Kount to provide more security measures for server and client-side data. To access features that this partnership provides, you can simply integrate a code snippet.
Stripe also helps you avoid fraud. Their new product, Radar, is a machine learning program to detect and fight fraud. Stripe and Braintree compete on the level of security they provide. But we would need a separate article in order to fully discuss security
With Braintree, you can add additional settings to CVV validation to prevent fraud:
Provided CVV does not match
CVV not provided
Provided CVV is not verified
The card issuer does not participate in card verification
Stripe’s Radar offers even more checking rules.
When we compare Stripe vs Braintree, it becomes clear that the choice between them should not be based on ratings. Both payment providers offer a huge number of features and both work hard to get even more for their clients. So your choice of payment technology should be based on your business model and business requirements. If you’re interested in innovation and adding new features to your payment system, Stripe is the best solution for you. But if your business needs stability and gradual development and a provider that has a large and reputable brand behind it, then Braintree is more suitable for you.
You can check out the Braintree and Stripe support pages for detailed information on the basics of processing payments.