CiviCRM Community Forums (archive)

*

News:

Have a question about CiviCRM?
Get it answered quickly at the new
CiviCRM Stack Exchange Q+A site

This forum was archived on 25 November 2017. Learn more.
How to get involved.
What to do if you think you've found a bug.



  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Discussion (deprecated) »
  • Feature Requests and Suggestions »
  • CiviContribute Suggestions »
  • EFT, Direct Debit, Payment processors ...
Pages: [1]

Author Topic: EFT, Direct Debit, Payment processors ...  (Read 4901 times)

adixon

  • I post frequently
  • ***
  • Posts: 314
  • Karma: 19
    • Blackfly Solutions
EFT, Direct Debit, Payment processors ...
December 18, 2009, 05:51:07 am
I have a client migrated to CiviCRM from Raiser's Edge. They get a bunch of their recurring contributions via something they call "EFT" (electronic funds transfer), which I think is the same as "Direct Debit" in CiviCRM, though I'm not sure. Is there any functionality associated with Direct Debit, analogous to what payment processors do for Credit Cards? I found:

http://forum.civicrm.org/index.php?topic=6521.0

which I think means not yet, but I might be confused...

The payment gateway (IATS) we're using does have an interface/API for what they call "Direct pay batch" processing, which means if I can provide a list of banking info and amounts each month from CiviCRM, I can upload it through this "API" and process it. This would require the banking information to reside within CiviCRM, which isn't so great, but maybe that's how it always works with Direct Debit?

Donald Lobo

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 15963
  • Karma: 470
    • CiviCRM site
  • CiviCRM version: 4.2+
  • CMS version: Drupal 7, Joomla 2.5+
  • MySQL version: 5.5.x
  • PHP version: 5.4.x
Re: EFT, Direct Debit, Payment processors ...
December 18, 2009, 07:14:54 am

hey alan:

there is some debit code in civicrm. However we dont have an example debit payment processor since the person who contributed it also had to store the account numbers in the DB and we were not comfortable doing that.

So osito's direct debit code is part of civicrm :) u can track the files via fisheye / the issue

lobo


A new CiviCRM Q&A resource needs YOUR help to get started. Visit our StackExchange proposed site, sign up and vote on 5 questions

adixon

  • I post frequently
  • ***
  • Posts: 314
  • Karma: 19
    • Blackfly Solutions
Re: EFT, Direct Debit, Payment processors ...
December 18, 2009, 01:19:54 pm
okay, thanks.

the api from IATS also assumes you're holding on to the banking information, since you need to resubmit it each time it goes through.

without any extra code, i could just put the banking info into some custom fields, use a custom search to generate the batch file, upload it manually and then import the results.

for the client, this isn't too different from what they do now.

what makes sense for them in terms of new civicrm functionality might be:

1. having those banking fields in some kind of core table, including the amounts that the individuals are wanting to contribute each month/week/etc. [like the recurring donations format, i guess].
2. the ability to automate the generation and upload of the batch table to IATS, and then generation of the individual contributions in CiviCRM based on the results.

I agree that the bit about putting banking information on line is a problem, you certainly don't want CiviCRM to be a known holder of valuable financial data since it'll make it more of a known target for attempted break-ins. I wonder if there might be PKI type solution to allow encrypting of all the sensitive stuff via a password that would need to be entered during the upload of the batch table? Which would then need to be manually triggered to allow the password to be entered?

Does this sound like a generally useful model?

Donald Lobo

  • Administrator
  • I’m (like) Lobo ;)
  • *****
  • Posts: 15963
  • Karma: 470
    • CiviCRM site
  • CiviCRM version: 4.2+
  • CMS version: Drupal 7, Joomla 2.5+
  • MySQL version: 5.5.x
  • PHP version: 5.4.x
Re: EFT, Direct Debit, Payment processors ...
December 18, 2009, 04:46:12 pm

in 3.1, we've started using symmetric encryption for a few password fields (mail passwords specifically). we use the civicrm_site_key as the encryption key. Check CRM/Utils/Crypt.php

Your idea about getting the user to enter the encryption key and then maybe storing "somewhere" temporarily and then blowing it away at the end of the session (or a short time interval) does make sense. so the flow would be something like:

a. Users will see some random gibberish (or ****) for encrypted fields.

b. Users with permission to see encrypted data will see a link to "enter" the secret key / encryption parameters

c. if a user enters these values, the values are stored in the db / file system / somewhere temporarily. this is deleted periodically via a cron job with a fairly short frequency

d. if there are the encryption params in the table and the user has permission, we decrypt the fields

e. the user can close, i.e. delete the keys manually

f. how would this work for cron operations? something like ssh empty passphrase? not sure on this as yet

does this make sense?

lobo

A new CiviCRM Q&A resource needs YOUR help to get started. Visit our StackExchange proposed site, sign up and vote on 5 questions

adixon

  • I post frequently
  • ***
  • Posts: 314
  • Karma: 19
    • Blackfly Solutions
Re: EFT, Direct Debit, Payment processors ...
December 20, 2009, 06:05:24 am
excellent to hear about crypt being already in use.

i think an appropriate security requirement would be that access to the database contents only would never provide you the secure data, so i'd even be inclined to not store any unencrypted field, or the users private key, in any fields. Though it might make it less friendly to use.

in terms of the cron requirement - i was thinking there'd be none, that action would only be taken with these fi,elds on demand. So it would look like this:

1. administrator would enable the functionality and enter/generate private/public key.

2. administrator would enter banking data + amounts for constituents. The amounts could stay unencrypted, and maybe some of the banking data could too.

3. the only transactions associated with the info would happen on demand, by the administrator, i.e. on the day of the month they choose, they'd go into  civicrm, click on a 'run direct debit batch', get a summary of what is about to happen, and then click on confirm, which would require them to enter their private key before it ran - the private key would be used for the decryption of the fields and a batch file would be generated and uploaded to the payment processor, results recieved, etc.


Pages: [1]
  • CiviCRM Community Forums (archive) »
  • Old sections (read-only, deprecated) »
  • Discussion (deprecated) »
  • Feature Requests and Suggestions »
  • CiviContribute Suggestions »
  • EFT, Direct Debit, Payment processors ...

This forum was archived on 2017-11-26.