<iframe src="//www.googletagmanager.com/ns.html?id=GTM-N34J73" height="0" width="0" style="display:none;visibility:hidden">

The world's largest changemakers rely on NGP VAN campaign technology Find Out More

  • people-data-action-2-1

Announcing Bitcoin Contribution Integration


NGP VAN had a Hackathon earlier in the year for our development teams. My fellow developers and I had the latitude to work on anything we wanted, and my first inclination was to work on political contributions using Bitcoin. I wanted to work on Bitcoin because (a) it's something a lot of developers, organizations, and companies have been talking about but no one has done yet, and (b) I'm very interested in digital currencies. As my coworkers will attest, I've been excited about Bitcoin since before pretty much anyone else had even heard about it. I may have even driven a few coworkers crazy with my talk about the project for the whole month leading up to the hackathon.

For those of you that don’t really know what Bitcoin is, it’s a new kind of money with low transaction fees. Any customer that uses Online Contributions in the new NGP product can enable this feature with us, and then accept Bitcoin on any contribution page with just the check of a box. Fortunately, I was able to complete the implementation of Bitcoin contributions within the 24-hour scope of the hackathon thanks to the extensibility of ActionTag (our existing form rendering application that renders all forms, including contribution forms), the speed and ease of creating new projects in Node.js with Express, and of course BitPay, the third party payment provider I (along with teammate Wyatt Cready) integrated with that handles Bitcoin processing. The Federal Election Commission also recently weighed in, ruling that campaign committees could accept Bitcoin contributions of up to $100 per person per cycle.

For those interested in the technical details, ActionTag is a rich JavaScript application that runs in the user's browser. It uses an asynchronous JSON call to grab a form definition configured in NGP (our financial/fundraising software used by campaign staff), renders the form to the page, then handles field validation and form submission. ActionTag uses jQuery and BackboneJS, and the really nifty thing about it is that all you have to do to use it on any page on the web is to include a single div on a page and import its JS file - that's it.

Because we’ve made it a company priority to build flexible, extensible tools that can easily integrate with other technologies, I was able to integrate with BitPay and get any of our clients’ forms to accept Bitcoin in under a day.

If you’re a campaign, candidate or organization interested in accepting Bitcoin contributions, here are the steps you can take to get started:

1. Create a BitPay account at https://bitpay.com/start. Note that it can take a few days for BitPay to approve your account. When creating the account, select 100% US Dollars as your Funds Settlement option, and enter the details for the bank account that your contributions will be deposited to.

2. Once BitPay approves your account, create a BitPay API key at https://bitpay.com/api-keys. The API key will look something like this: DA8JbcPZfLmi5yXZhlVhmOZQrRxE42RLoRinmLNTdg.

3. Send the API key and desired designation (if there are multiple designations) to the NGP VAN support team at support@ngpvan.com.

We don’t expect Bitcoin to become the primary way Democratic campaigns and progressive organizations start accept contributions anytime soon, but we do hope this shows that NGP VAN is committed to building products that can quickly respond to new technologies and integrate with innovative new tools.