Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Authorize.net's CIM product allows for storing bank account information along with credit card information. We created a patch that will allow for credit cards and bank accounts to be stored and managed with this module. Please take a look at the patch and hopefully we can get this committed.
Comment | File | Size | Author |
---|---|---|---|
#14 | authnet_bankaccount_cim-1766012-14.patch | 31.92 KB | lektro |
#13 | authnet_bankaccount_cim-1766012-13.patch | 30.09 KB | lektro |
#10 | authnet_bankaccount_cim-1766012-10.patch.txt | 33.01 KB | pfrilling |
#9 | authnet_bankaccount_cim-1766012-9.patch | 33 KB | m.stenta |
#8 | authnet_bankaccount_cim-1766012-8.patch | 33.07 KB | m.stenta |
Comments
Comment #1
pfrillingAttached is the patch file.
Comment #2
m.stentaThanks for the patch! That's really awesome! We were planning on adding support for bank account payment methods eventually, but there wasn't an immediate need for it in our projects. Thanks for taking the initiative on this!
I'll mark this as "Needs Review" for now. I'm traveling right now, so I don't have time to look at it in detail, but I will when I get back. It's a pretty large patch, so I might try to break it up a bit, if possible. Not sure until I can look at it closer.
Thanks again!
Comment #3
m.stentaAlright, finally got around to working on this. Looks good for the most part. I made a couple of changes (outlined below for discussion) and attached a new patch for testing/review. This still needs some work before we can pull it in, but we're close I think...
There's probably some other things I forgot to mention here, but those are the big ones I think.
There are still some things that need to be done:
Please update the module to the latest dev release before applying this new patch. It depends on some recent commits.
Comment #4
m.stentaI accidentally committed some pieces of this issue with a recent commit, so I reverted them in the dev release and rolled them into the new patch which is attached.
All the stuff I said in #3 still applies to this patch.
Comment #5
m.stentaOne more small tweak: changed the language of an empty payment profile table from 'You don't have any saved cards. Click "Add a credit card" above to save a new one.' to 'You don't have any saved payment methods. Click "Add a payment method" above to save a new one.'
See comment #3 above for stuff that still needs to be done.
Comment #6
pfrillingSorry for falling off the map on this, I got sidetracked with another project. I made the following updates (all of them from comment #3):
See the attached patch file (I'm pretty sure this patch includes your patch from #5).
Comment #7
pfrillingI found an error in the patch in #6. Please use this new patch.
Comment #8
m.stentaThanks for keeping this going @pfrilling. I haven't had much time to dedicate to this recently either. Such is life (and volunteer development).
I applied your patch and made a couple of changes:
I did some initial testing of adding/editing/deleting bank accounts, and it seems to be working well. I haven't tried performing transactions on bank accounts yet, though, but based on the Authorize.net CIM API documentation, I think everything should work similarly to the existing credit card transactions, which we know are working.
If this all makes sense, I think this is ready to be committed. Let me know if you can think of anything else we need to consider.
Comment #9
m.stentaVery minor update to make the patch work with some recent commits (added newlines at the ends of files, which caused some of these changes to create conflicts). Attached patch works against current 6.x-1.x.
Comment #10
pfrillingWe made a minor change to the patch in #9 to make it work with the latest dev release. Otherwise, we tested everything with a live Authorize.net account and account information is getting stored properly with Authorize.net.
One thing we noticed during testing is that the ajax menu callback in authnet_ui returns an access denied error when not logged in as user 1. We fixed this by altering the authnet_ui hook_menu() implementation to use the 'manage own authnet payment profiles' permission:
Comment #11
lektro CreditAttribution: lektro commentedIs there a version of this patch for the 7.x branch?
Comment #12
m.stentaNo, the patch is only for 6.x right now, but it would be worth trying it on the 7.x to see if it applies. The 6.x and 7.x are not very different, so there's a chance it will. Please let us know what you find! We'll have to port this to 7.x eventually anyway.
Comment #13
lektro CreditAttribution: lektro commentedI've applied the changes from the patch in #10 to the 7.x branch, and it seems to be functioning well in my very limited testing. Attaching here in case anyone finds it useful.
Comment #14
lektro CreditAttribution: lektro commentedMy previous patch did not include the new files that were created in the 6.x version - please see the updated patch below.
Comment #15
m.stentaThanks lektro! Were there any major differences in the changes between the 6.x and 7.x patches? I will try to commit these soon...
Comment #16
lektro CreditAttribution: lektro commentedThe only major difference was in how Ajax is handled in D7, but even then it was only a matter of editing the callback.
Comment #17
m.stentaD6 is end-of-life tomorrow, so if we do this we should get the 7.x patch in as a first priority.