- It is cost effective. Stripe charges 2.9% + 30¢ per transaction with no other fees. Most donation platforms either charge monthly fees on top of credit card transaction fees or take a significantly higher percentage of donations. By using Stripe non-profits keep more of the money they raise online.
- It has great tools for developers. Stripe has a variety of tools (Stripe JS, Elements, and powerful API) that speed up custom development work. In our experience, most donation-only platforms have limited developer tools with poor documentation. They are hard to work with. Stripe is less complicated than other ecommerce systems and provides a variety of code snippets you can use as a starting point.
- It has the critical features non-profits need. There are certainly some donation-specific platforms that have more bells and whistles than Stripe. However Stripe has the basics down with powerful reporting tools and critical features like recurring donations and quick giving options. Stripes flexible API makes it easy to extend.
- Using Stripe’s out-of-the-box payment flow: Checkout.
- Building a custom donation flow using Stripe’s various tools for developers.
Stripe CheckoutStripe has a default payment flow called Checkout that is extremely easy to implement. When using Checkout, the payment flow is presented as a pop up that users see when clicking on a donation link. charity: water is an example of a non-profit using Checkout. charity: water has a series of beautiful donation landing pages that integrate with Checkout. On the example page below, users choose a gift amount and whether they want the gift to be one-time or monthly. When users click the donate button, they are taken to a Checkout pop-up to enter credit card information in two steps. charity: water has done a great job of making Stripe’s default payment flow (Checkout) feel custom by designing great landing pages that inspires you to give. Pros: Easy to implement, mobile friendly, provides a good user experience
Cons: Limited ability to customize look and feel and to add/remove form fields
Custom Flow Using Stripe Developer ToolsIf you are looking for a more custom experience, you can design and implement your own payment flow using Stripe’s developer tools. We built a Stripe-powered custom donation flow recently for our client African Parks. We chose a custom flow because African Parks wanted to customize its form fields and integrate the form seamlessly with the site. You can see the flow here. Step 1 Step 2 Step 3 Our custom donation system was built using Stripe JS and Elements. Stripe provided us with code snippets that were the building blocks for our system. We customized and extended the sample code to make the donation system work exactly to African Park’s specifications. Pros: Complete control over look and feel and ability to customize form fields
Cons: More time consuming to implement as a developer will need to build out using the Stripe API Regardless of how you decide to implement, Stripe is a great, cost-effective option for non-profits. —————–
If you are developing in Drupal, we suggest you check out the two Stripe modules we contribute to and leveraged to build our African Parks system. The Stripe module is a bare implementation of the Stripe API with its dependencies and key settings. It also integrates some of Stripe Elements into Drupal Core’s API that can be leveraged by other modules. The Stripe Webform module integrates Stripe with the popular Webform module to create a simple webform for accepting payments online. This module should allow organizations to launch a base donation form with almost no coding. Both modules are currently being actively developed and will soon have a public release. In their current state they can serve as good starting points for developers. We are using these two modules successfully on African Parks.