I need authorize.net integration for subscription payments, likely using CIM. The requirements are simple - recurring monthly payments, with a few different price points. Customer credit card info will be stored a authorize.net .
There are quite a few libraries and code snippets around, I'm looking for recommendations as to which work best.
- Satchmo seems more than I need, and it looks like it's complex.
- Django-Bursar seems like what I need, but it's listed as alpha.
- The adroll/authorize library also looks pretty good.
- The CIM XML APIs don't look too bad, I could connect directly with them.
And there are quite a few other code snippets.
What's the best choice right now, given my fairly simple requirements?
Edit: https://github.com/agiliq/merchant/blob/master/billing/gateways/authorize_net_gateway.py looks pretty nice, haven't tried it yet.
Edit: [For the next project I have that uses authorize.net, I'm going to take a close look at: http://github.com/zen4ever/django-authorizenet It looks pretty nice. I don't think that it has support for recurring payments though.]
In the past I have made little one-off implementations.
For simple post to the AIM payment gateway, you can use something like this:
To authorize, you do something like:
then, we can capture:
There are more options, ways to request, nuances in the response to parse... I assume b/c
A
inAIM
stands foradvanced
that all of the authorize.net options are available.http://developer.authorize.net/guides/AIM/
I know that your question is what lib is best .. well, it might be easiest just to implement your own little bit of ad-hoc request and response for your specific requirements rather than trying to trove through an api on top of an api.
I recently wrote this API for Python and Authorize.net after failing to find one that supported all of Authorize.net's functionality.
https://github.com/vcatalano/py-authorize
For what it's worth we ended up using the adroll authorize library. Both Paython and django-authorizenet look interesting, will be checking those out.
I realize this is a bit late, but hopefully it helps others.
I recently came across
Py-Authorize
which has some great documentation, compared to the other packages available. You can install it via:It seems to install a dependency (
colondar
) which when installed viapip
is outdated so you can get the latest (at the time of this writing) by doing the following:The docs are here: http://vcatalano.github.io/py-authorize/index.html
Works great in my experience, however for the project I am using it on I only needed AuthCapture and not ARB or anything...give it a try. Best package I've found so far.
Long story short, none of the existing solutions met my needs. They were either unmaintained, uncommented, untested, or lacked saved cards. So of course I built my own solution and open-sourced it:
AuthorizeSauce: https://github.com/jeffschenck/authorizesauce
It handles basic transactions (the AIM API), saved cards (the CIM API), and recurring payments (the ARB API). It is fully documented and has a full test suite.
I expect the original poster has long since moved on, but if it can help anyone else avoid some of the pain of payment processing, I'd be overjoyed.
There is always Paython: https://github.com/abunsen/Paython
Currently supports 5+ payment gateways:
Here is an example:
set up a card first:
check if its valid:
Set up customer data to charge, not all fields are required:
authorize against gateway, options include debug output or test credentials:
now you can settle: