Stripe + CommunitySuite Integration

Written by Nick Miles

Last published at: March 30th, 2020

Overview

Stripe is a third party software that allows you to make and receive payments over the internet. In the context of CommunitySuite, Stripe integration gives you the ability to accept credit card donations from the online Donation Portal, and the back-end of CommunitySuite. 

  • If your foundation does not have a Stripe account, and you would like to use these features, you can set one up for free here.
  • Check out this article for Stripe pricing and fees, and this article for information about Stripe's discount for non-profit organizations.


Use Cases

  • Process CC Donations from the Back-End of CommunitySuite: Process and record credit card payments for Donor and Customer profiles from the back-end of CommunitySuite.
  • Donation Portal: Process and record credit card payments from the online Donation Portal (including the Event Tickets page an Grant Catalog).


Components

Stripe + CommunitySuite integration consists of four main components- all of which need to be configured in order to accept credit card payments via Stripe in CommunitySuite:

  • Stripe Payments Account: Account that your foundation will need to set up with Stripe (if you don't have one already).
  • Payment Processor: payment processor for Stripe transactions in CommunitySuite.
  • Payment Method: payment method for Stripe transactions in CommunitySuite. 
  • CommunitySuite Accounts
        Stripe (Cash Receipt) bank account is used to record money received via Stripe.
        Credit Card Fees expense account is used to cover fees incurred from credit card transactions.
        Deposit bank account is where Stripe deposits money.
  • You should already have a Deposit bank account created in your chart of accounts.


Setup

Create a Stripe (Cash Receipt) Account

  1. Select Accounts from the Home page.
  2. Click Create.
  3. Enter an Account Number, Name the account (Stripe), enter a Description (Cash Receipt Account), and select an Account Type ((A) Bank)), then click Create.


Create a Credit Card Fee Account

  1. Select Accounts from the Home page.
  2. Click Create.
  3. Enter an Account Number, Name the account (i.e Credit Card Fees), enter a Description (i.e. Covers Stripe credit card fees), and select an Account Type ((A) Bank)), then click Create.


Enable Manage Cash

If you haven't done so already, you must enable the Manage Cash feature in your Stripe (Cash Receipt) account, and your Deposit account.

  1. Select Accounts from the Home page.
  2. Click the ID of the Stripe bank account in your chart of accounts
  3. Click Edit.
  4. Check the box next to Manage Cash.
  5. Click Save.
  6. Repeat these steps (enable Manage Cash) for your Deposit Account.


Copy Stripe API Keys

Next, you'll need to open up Stripe (in a new tab in your web browser), and locate/copy two API Keys: the Publishable key & Secret key. These API Keys will be used when you create your Stripe payment processor in CommunitySuite (which will be covered in the next section).

If your foundation does not have a Stripe account, you can register here.
  1. Log in to Stripe and click Developers.
  2. Click API Keys.
  3. Copy/paste the Publishable key and Secret key to a word document or notepad. You will use these keys when create a Payment Processor in CommunitySuite.


Create a Stripe Payment Processor

  1. Log in to CommunitySuite and select Payment Processors from the Home page.
  2. Click Create.
  3. Select Stripe.
  4. Give the payment processor a name, and enter both the Live Secret Key, and Live Publishable Key (from the Stripe API Keys page) then click Create.
  5. You will now see a Stripe Webhook URL below the payment processor. Make note of the Stripe Webhook URL, as it will be used when adding a Stripe endpoint
  6. Click Edit.
  7. Click the drop-downs and select Stripe as the Cash Receipt Account, and Checking as the Deposit Account.
  8. The Deposit Account is where Stripe will deposit the money.
  9. Click Save.


Add a Stripe Endpoint

  1. Log in to Stripe and click Developers.
  2. Select Webhooks.
  3. Click Add Endpoint.
  4. Enter the Endpoint URL.
  5. The Endpoint URL can be found beneath your Stripe payment processor in CommunitySuite.
  6. Click receive all events
  7. Click Add endpoint.


Add a Stripe Payment Method

  1. In CommunitySuite, select Payment Methods from the Home page.
  2. Click Create.
  3. Select Stripe.
  4. Select Stripe from the Processor drop-down, and check the box next to Allow Public Donation if you want to allow the public to make credit card donations from the Online Donations Portal. 
  5. Click Save.