Closed (fixed)
Project:
Drupal Association Project(s)
Version:
6.x-3.x-dev
Component:
Site organization
Priority:
Normal
Category:
Feature request
Assigned:
Reporter:
Created:
29 Feb 2012 at 19:07 UTC
Updated:
3 Dec 2012 at 15:31 UTC
Jump to comment: Most recent
Comments
Comment #1
twardnw commentedComment #2
twardnw commentedOptions for recurring payment systems are:
I know Paypal and Authorize.net both integrate with the uc_recurring module, so I am going to start by researching those methods.
Test/dev site is at : http://renew-association.redesign.devdrupal.org
Comment #3
twardnw commentedare we going to be selling memberships recurring-only, or have it present an option to be recurring?
Comment #4
twardnw commentedFrom an email and conversation around the DA office, we will offer both options, on both types of membership (org/individual), as separate products. 4 products altogether:
Comment #5
webchickThat sounds good to me! I've had better luck with Authorize.net recurring billing than PayPal, but not sure about Ubercart integration.
Comment #6
twardnw commentedUbercart is going to be the easy part I think. The Authorize.net UC module supports ARB. I think the trickier part is going to be getting success\fail info back to CiviCRM.
Comment #7
webchickdeviantintegral is someone from Lullabot who's done some work with ARB and CiviCRM before (and has also worked on the DA site before). I'll see if I can ping him.
Comment #8
rgarand commentedJust getting set up now so I can contribute to this as well. There was some discussion of using the civicrm recurring subscriptions option earlier; just to catch up on everything, is ubercart integration the preferred way to go now?
Comment #9
twardnw commentedWe're not set on any method yet. Still considering options. Let us know your thoughts.
Comment #10
twardnw commentedCurrently, we use Ubercart to bill memberships (all products actually) and CiviCRM is recording the information. To me, it would make sense to keep it that way. Ubercart + uc_recurring and adding ARB to our Authorize.net account.
One other consideration is cost:
Comment #11
drumm(A big motivation for moving the front-end to UberCart, and likely Drupal Commerce with Drupal 7, is that we gain more control over it. We have a lot more community knowledge around Drupal than CiviCRM. And we have more lines of products like shirts and DrupalCon registration. A single store for everything is good to have.)
Comment #12
twardnw commentedAre Ubercart conditional actions triggered when a recurring order is charged?
Comment #13
twardnw commentedUpdate, Authorize.net would only cost an additional $10/mo to use.
Comment #14
Anonymous (not verified) commentedI wrote an integration module that attaches CiviCRM components to Ubercart products. http://drupal.org/project/uc_civicrm_product
It could get you started... I use it so that I can use Ubercart instead of CiviCRM to manage transactions, and I get to use all the Ubercart features like coupons and recurring purchases. The customer-user is completely unaware of CiviCRM behind the scenes, yet CiviCRM still has complete data on memberships, contributions and event participation.
I am supposed to write a blog post about this soon, actually. You'll see it at civicactions.com next weekish.
Comment #15
rickmanelius commentedI currently operate a website with D7 + UC_recurring + Authorize.net CIM. I'm off for tonight but feel free to find me in IRC tomorrow (rickmanelius) if you want to ask any questions from my experience with setting up and operating.
Comment #16
twardnw commentedThanks for the offer rickmanelius. When using CIM, how does it relay back to UC if a CC payment fails?
Comment #17
rickmanelius commentedIt tries to charge up to 3 failed attempts. And depending on how you have your configuration setup, it will allow the user to update their cc information and push it back to their profile on your authorize.net CIM account.
You can also login directly and update cc information on authorize.net. But that's way more tedious.
If a person experiences three failed attempts, the recurring payment is then canceled. If you wanted, you could potentially fire off an email through rules to let them know of the failure.
Comment #18
deviantintegral commentedUnfortunately, I don't have much experience with ARB and CiviCRM directly. However, I have done quite a bit of work with Authorize.NET ARB and CIM for other projects. If there's anything specific with Authorize.NET I could help with, feel free to ping me (and I'll watch this issue as well).
Comment #19
eojthebraveI've also done a ton of work with uc_recurring (d6) and related modules though more of it is using the CIM/Card on File method instead of ARB.
To answer the question in #12, Yes. There are CA actions triggered when a new recurring billing transaction happens. Off the top of my head the triggers are something like "Recurring order renewal expired/failed/succeeded" and you can do quite a bit of fun stuff with them.
I'll echo the, "If you have specific questions feel free to ping me and I'll also follow this issue."
Comment #20
steve.colson commentedWe work with civicrm every day (and have contributed patches back to their core), and have also done work with both Ubercart and Drupal Commerce.
@webchick: I gave you my card at DrupalCon regarding helping with the d.o D7 upgrade sprint in April. Perhaps some of these tasks could be rolled in to that week? (and LMK if you still think I can help offline)
Comment #21
twardnw commentedWow, lots of help here! Love it!
So which is the better option then? Have CiviCRM handle the membership billing (via Authorize.net CIM or ARB) or have Ubercart handle the billings (again, Authorize.net CIM or ARB), and then trigger our custom CA that updates the user info in CiviCRM?
Comment #22
twardnw commentedWould anyone be interested in having an 'office hours' meeting in IRC for this?
Comment #23
rgarand commentedThe reasoning for using Ubercart sounds good. Though both ways have their merits, a single store/payment system could make things easier to manage. Something like bangpound suggests could link it into the civicrm data, which sounds similar to the association_drupalorg_update_membership() function.
I'm just getting set up but after taking a quick look that function seems like it would do the necessary work if it's set up to be called on each recurring payment.
One downside of working with Ubercart is a bit more work and testing for a D7 upgrade. Uc_recurring-7.x doesn't seem to have many issues reported so far, hopefully not just due to underuse :) That may not outweigh the benefits and the development could be used to improve us_recurring if needed. I don't know yet if uc_recurring offers features such as sending email notices before the payment is charged which would likely require reading in the civicrm data somehow.
I'm up for a chat to cover the various options!
Comment #24
twardnw commentedHmm, looks like something isn't happening with the dev site. I set up a daily recurring 'membership' to test some things. But, the order did not recur :\ Will dig and see why not.
I'm in IRC all day, I am usually in #drupal #drupal-infrastructure #drupal-watercooler, let's set something up so we can discuss in real-time.
Comment #25
twardnw commentedok, cron doesn't run on the dev sites. And, once I triggered it via drush, association_drupalorg_update_membership() appears to be running. I can see it trying to update the contact in Civi, and failing (no civi in the dev site).
Comment #26
longwaveWilling to help out here where I can, especially if this requires any known or previously undiscovered bugs in Ubercart core to be fixed.
Comment #27
twardnw commentedOk, a fair amount happened last week. A few of us at the DA had a meeting, and we are now re-evaluating Civi as the solution for tracking memberships. I am setting up a server w/ D6 and D7, with Civi 4.1 on both (thinking of the soon-to-happen upgrade to D7). There are many things that currently don't work in our Civi install, so we are looking to see if they are fixed in the newer releases, and also looking to see how Civi itself deals with recurring billings.
Comment #28
twardnw commentedSo to take some small steps forward, we are setting up a second set of Civi contribution pages which use Authorize.net for payment processing. This will allow us to bill members in USD and EUR with Authorize.net and Paypal respectively, and also add the option of making the membership recur yearly.
Of note, there is a mih (Make It Happen) on civicrm.org to 'Offer Donors a Choice of Payment Processors'. Once that happens, we can then move back to a single page for each membership type (still offering set your own price and recurring).
Comment #29
twardnw commentedOh, I also enabled the option of yearly recurring membership for the current EUR pages (IND and ORG) :)
Comment #30
twardnw commentedUsing CiviCRM, Authorize.net ARB (for USD), and Paypal Subscriptions (for Euro) the DA now offers recurring memberships.
CiviCRM links payment processors to a membership type, rather than the contribution page, so we currently have 4 membership types, each with it's own contribution page:
Since now have recurring memberships in USD and Euro, the needs of this issue have been addressed, marking as fixed.
Comment #31
webchickYEAAAHHHH!! Awesome work, Tyler!!
Comment #33
tvn commented