Skip to content
This repository has been archived by the owner on Mar 27, 2022. It is now read-only.
Parker McGee edited this page Dec 23, 2015 · 6 revisions

Getting Started

This feature currently exists in the branch giving. You need to checkout that branch to use it.

Setup

  1. Turn on the feature by going to 'Site Settings', and to the 'Features' tab. Click the checkbox to turn on 'Giving'.
  2. Set up a Stripe account. You can do this at http://www.stripe.com/
  3. The Stripe account will start in 'Test' mode -- this is a good thing as it will let you test out the integration.
  4. In the Stripe dashboard, go to 'Your Account' > 'Account Settings'. At the new popup, click the tab 'API Keys'.
  5. In a separate browser window, go to the OneBody 'Site Settings' page, and to the 'External Services' tab.
  6. Copy the 'Test Secret Key' from the Stripe dashboard to the 'Secret Key' value under the Stripe section in the OneBody Site Settings page.
  7. Copy the 'Test Publishable Key' from the Stripe dashboard to the 'Publishable Key' value under the Stripe section in the OneBody Site Settings page.
  8. Test out the integration. Go to the 'Giving' section on the OneBody sidebar, and create a new transaction. Use the credit card number '4242 4242 4242 4242' and any future expiration date and any CVC code. This should give a notice of a successful transaction and a new transaction should appear.
  9. Switch to Live keys. Switch your Stripe account to 'Live' and switch your keys in OneBody to the 'Live Secret Key' and 'Live Publishable Key'.

Payment Processors

The only currently supported payment processor is Stripe, and we currently only support credit card transactions. Further, the code currently only supports transactions in USD.

Further Improvement

  1. Support more currencies. Stripe supports many currencies and it would be relatively easy to change the code to support this. We would need to create a setting for the administrator to select a currency and use that for Stripe requests, as well as showing the correct currency to users.
  2. Support manual transactions. Online giving is not the only way churches take donations. Many churches would benefit from a central place to store this information that their members can access. It would be nice for a bookkeeper to be able to record manual transactions that would be tracked against OneBody users.
  3. Support transaction downloading. It would be great if users could download both/either a PDF and a CSV of their transactions. This would be fantastic for tax purposes in the US.
  4. Support more payment processors. Stripe is easy to set up, but it's not the cheapest. It would be great to support more processors.
  5. Support ACH/Echecks. E-checks are a much cheaper method of online giving. It would be great to support that. I've seen rumors about Stripe offering ACH in beta, but I wasn't able to get much information on that. It may be necessary to explore other payment processors to make this happen.