Stripe is a well-respected international Payment Gateway with support for a large number of countries and currencies. With Stripe and Give you can accept Credit Card donations directly on your website easily and seamlessly.
Getting Started with Stripe
In order to accept payments with Stripe using Give you will need to have an active Stripe account, the Stripe Give Add-on, and the Give Core plugin installed and activated. If you plan on accepting Credit Cards on site we also highly recommend you have an SSL certificate.
Click here for instructions on installing and activating Give Add-ons.
Note: You can always access your add-on purchase receipts, downloads, and licenses from your Give Account dashboard.
After your Stripe Add-on is activated, go to “Donations > Settings” and click on the Payment Gateways tab. There you will see the default Payment Gateways (PayPal Standard, Test Payment, and Offline Donations). You should also see Stripe as an option as well. Click on that to enable Stripe as your credit card Gateway for your website.
If you would like to accept credit cards directly on your website with Stripe you will need an SSL certificate.
Connecting to Stripe
Once you have activated the Add-on it’s time to get connected to Stripe. You will notice in WP-Admin a banner appears prompting your connect to Stripe:
Click the “Connect with Stripe” button. This will redirect you to Stripe and prompt you to connect:
Click the “Connect my Stripe account” button to connect with Stripe. Once clicked, you will be redirected back to your admin dashboard and you should see you now have been connected:
Give is now connected to your Stripe account and ready to accept both live and test donations.
If for some reason your need to disconnect Give from Stripe you can do so by clicking the “Disconnect” button found under the gateway’s settings. Disconnecting from Stripe will remove the ability to accept online donations until reconnected.
Disconnecting from Stripe will remove the connection between the website you are disconnecting as well as any other sites that you have connected Give using the same Stripe account. Proceed with caution when disconnecting if you have multiple sites connected.
Testing the Stripe Gateway
It is always recommended to first test your payment gateway prior to launching it on a live site. Thankfully, Stripe makes this easy.
First, put Give in Test Mode:
Now insert sample field data into the other Give fields and run the transaction through. If you see the donation completed on the other end then you know it’s working properly:
So, at this point, you’ve done the following:
- Connected to Stripe
- Placed Give into Test Mode
- Made a donation on your site with one of the test credit card numbers that Stripe provides
How do you know the donation actually worked? Login to your Stripe account, and in the top-left part of the Dashboard you’ll see a toggle to switch between “Live” and “Test” mode.
When you switch to “Test” mode, all the transactions that you see on the Payments screen were done via the Test API Keys. If you see your recent test donations there, then you’ve successfully tested Give with Stripe and you’re done!
Testing Recurring Donations
If you want to test Recurring Donations, make sure that you’ve also put your Stripe Webhook into Test mode. See the Stripe Recurring Donations documentation article on that here.
API-key based Stripe Integration
If you want to use your own Stripe account’s API keys to connect to Stripe you can do so. Note: you do not need to use your own API keys if you are already connected to Stripe.
To use your API keys first navigate to WP-Admin > Donations > Settings > Advanced. On that page enable the “Stripe API Keys” option:
Once enabled you can now obtain your API Keys and configure your Give Settings to integrate with Stripe.
Obtaining Your Stripe API Keys
Login to your Stripe account and you’ll be presented with the Stripe Dashboard like the image below.
Click on API in the left navigation, and you will presented with a screen like the one below (you may have to re-authenticate to see this screen):
There you’ll find all the API Keys you need to integrate Give with your Stripe account.
Test Keys are great for testing your donation forms before pushing your site live. When you are ready to go live, make sure to update your Stripe Add-on settings with the Live Secret and Publishable Keys.
Important: for live keys, follow the same steps above AFTER toggling the stripe dashboard into live mode. Test keys generally start with “sk_test” for the secret key and “pk_test” for the publishable key. Enter those keys in the appropriate spot in the Stripe settings for test donation. When your site is in Give test mode (more on that below) it uses these keys.
Integrating Your API Keys in Give
Copy each key and go to your WordPress site. Go to “Donations > Settings” and click on the Payment Gateways tab. There you’ll see a section called Stripe Settings. Paste each key into it’s respective field, then hit save.
That’s all there is to it. Now when your donors come to your site, they’ll be able to use credit cards to donate to you directly in the currency of your country and not have to be redirected to another site.
Stripe Modal Checkout
If you want to use the Stripe Modal checkout instead of the default Give Credit card fields, check the Enable Stripe Checkout option. Once you do that you will see the below options
- Checkout Heading: This is the main heading within the modal checkout.
- Stripe Checkout Image: This image appears in when the Stripe checkout modal window.
- Processing Text: This text appears briefly after the donor has made a successful donation while Give is confirming the payment with the Stripe API
- Verify Zip Code: If enabled, Checkout should validate the billing ZIP code of the donor for added fraud protection.
- Remember Me: If enabled, Checkout would remember the card details for future donations.
- Accept Alipay: This enable the ability to accept payments via Alipay. Only Stripe users in the United States can accept Alipay for USD payments.
- Accept Bitcoin: This enable the ability to accept Bitcoin. A USD-denominated bank account is required before you can accept Bitcoin payments.
Once you have configured and saved the above settings, you would now see a Stripe Modal checkout like below while donation using Stripe.