Skip to main content

a Django app for receiving payment notifications from Coinbase

Project description

===============
django-coinbase
===============

a Django app for receiving payment notifications from Coinbase

.. image:: https://travis-ci.org/eldarion/django-coinbase.png
:target: https://travis-ci.org/eldarion/django-coinbase


Getting Started
---------------

This is a fairly simple app. It's three parts:

1. Webhook View
2. Model to store the webhook received data
3. Signal emitted on reciept/validation/storage of webhook data

First off, you'll want to add `django-coinbase` to your requirements.txt and
pip install it in your virtualenv. Next you'll want to add `coinbase` to your
`INSTALLED_APPS` setting of your `settings.py` file. Lastly, you'll want to
add a urls include to your main `urls.py` file for `coinbase.urls`.

There is a signal that you can setup a receiver for in your own project to do
something with the callback data::

@receiver(order_received)
def handle_order_received(sender, order, **kwargs):
pass # do something with the order object, like enable a feature based on order.custom contents

You will want to set two different settings:

COINBASE_API_KEY
^^^^^^^^^^^^^^^^

This is the API Key found at: https://coinbase.com/account/integrations


COINBASE_SHARED_SECRET
^^^^^^^^^^^^^^^^^^^^^^

This is just a random key you make up and store in your settings and add to the
querystring of the Instant Payment Notifications field (https://coinbase.com/merchant_settings).

This is the URL of your site + wherever you rooted the urls include + `/cb/`
followed with the querystring parameter `secret` followed by the value of this
settings.

For example::

# urls.py
url(r"^payments/", include("coinbase.urls"))

# settings.py
COINBASE_SHARED_SECRET = "mysecretsauce"

>>> Site.objects.get_current().domain
example.com

# Your url would be
http://example.com/payments/cb/?secret=mysecretsauce



Development
-----------

To run test suite::

$ pip install Django django-nose django-jsonfield mock requests
$ python runtests.py


Commercial Support
------------------

This app, and many others like it, have been built in support of many of Eldarion's
own sites, and sites of our clients. We would love to help you on your next project
so get in touch by dropping us a note at info@eldarion.com.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django-coinbase-0.2.tar.gz (5.6 kB) Copy SHA256 hash SHA256 Source None Jun 17, 2013

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page