Skip to main content

GROWING AND SUSTAINING RELATIONSHIPS

GROWING AND SUSTAINING RELATIONSHIPS
Close
Joshua Walker

Developer / Contributor

Drastik by Design

http://drastikbydesign.com

CiviCRM has one of the best open source communities out there. It's always a blessing when I get the opportunity to do my next project in CiviCRM.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Margaret Thom

User, Administrator

Biodynamic Farming & Gardening Association

http://www.biodynamics.com

Online and offline membership sign-up and renewal,donations and event registration, integrated with our Drupal website. Directory for members, group and bulk emails, renewal reminder emails. Exciting to have complex conference registration within our CRM. Impressed with the Civi community and ongoing development of new features and improvements.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Jake Martin White

Implementor, Developer

PeaceWorks Technology Solutions

http://www.peaceworks.ca

PeaceWorks provides technology solutions for not-for-profit organizations. CiviCRM fills an important niche among our clients who need a flexible, comprehensive, user-friendly, web-integrated CRM solution.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Samuel Vanhove

Developer, Implementor

Réseau Koumbit

http://koumbit.org

As non-profit consultants working for non-profit organizations, we found CiviCRM to be particularly well suited to answer the common needs of activist associations, charities and other medium-sized groups. Based in Montréal, we've helped local and international organizations migrate to CiviCRM to manage their memberships, events, communications and fundraising campaigns. We empower our clients and assist them when they need us.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Michael Daryabeygi

Implementor

Ginkgo Street Labs

http://ginkgostreet.com

CiviCRM enables me to empower my clients with a database that suits their unique needs.

GROWING AND SUSTAINING RELATIONSHIPS
Close
El McNab

Admin, Implementor

Circle interactive

null

We help many not for profits implement CiviCRM through consultancy, training, configuration, support and custom development. Many of them come from a painful world of old Access databases, multiple spreadsheets and even paper. I love presenting demonstrations to new potential users; many are shocked by the scale of the software. CiviCRM is suitable for so many different organisations as it's been developed to cover so many bases off the back of community calls.

I maintain our own CiviCRM client database; it feeds into our drupal intranet to provide me with all the information I need at a click. I would be lost without it!

GROWING AND SUSTAINING RELATIONSHIPS
Close
Kelley Graham

Implementator End User

Green Geeks

http://green-geeks.com

Civi is the best! All my non-profit and community outreach activities are well supported by the platform. I love to help others benefit.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Sylvain Boissel

Implementor, End-user

Wikimédia France

https://dons.wikimedia.fr

CiviCRM is very helpful for us to manage memberships and donations. As one of the biggest users in France, we would like to help building an active French-speaking community.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Graham Mitchell

Implementor, Administrator, end-user, Trainer

MC3

http://mc3.coop

I've been working with CiviCRM since 2006 or thereabouts. The community is outstanding in providing support and sharing expertise, which combines with a strong product to enable me in turn to deliver better results for the organisations that I work with. I only hope that over time I will be able to repay the debt by supporting other newcomers to CiviCRM.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Pablo Campo

Administrator, Developer

End-user

http://www.es.amnesty.org

We are going to use it as central database to arrange many other sources in an only point and to use for several purposes as Press database, etc.

GROWING AND SUSTAINING RELATIONSHIPS
Close
Lisa Hubbert

94110

Creative Arts Charter School, SFArtsED

http://www.sfartsedsummer.org

Online donations, class registration, school tour registration, online enrollment applications, volunteer hour tracking, organization directories

GROWING AND SUSTAINING RELATIONSHIPS
Close
David Moreton

Consultant, Implementor and End-user

Circle Interactive

http://www.civisites.com

We help many not for profits implement CiviCRM through consultancy, training, configuration and custom development. Many of them come from a painful world of old Access databases, multiple spreadsheets and even paper. It's really satisfying to
help people move on with a system that's so much in tune with their own ethics of sharing and collaboration. We also 'eat our own dog food' and use Civi in-house for our client records because we love the flexibility and control it gives us.

For us it's important to share code and advice with other members of the community when we can because we know we get it back in help at other times. The community really is awesome and one of the friendliest and undaunting I've come across. We appreciate the huge value of the software to us and our clients so we try to contribute back and make it even better.

LOGIN | REGISTER
  • Create new account
  • Request new password

Search form

  • BLOG
  • DEMO
  • Find An Expert
  • NEED HELP
  • SUPPORT US
  • DEVELOPER RESOURCES
CiviCRM Community Site logo CiviCRM Community Site
  • WHAT IS CIVICRM
    • Community
    • Case Studies
    • Experts
    • Contributors
    • Core Team
    • Licensing
    • Contact Us
  • WILL CIVICRM MEET YOUR NEEDS?
    • Contacts
    • Contributions
    • Communications
    • Peer-To-Peer Fundraisers
    • Advocacy Campaigns
    • Events
    • Members
    • Reports
    • Case Management
  • GET STARTED
    • Evaluate Your CRM Needs
    • Evaluate CiviCRM Features
    • Read Books
    • Contact an Ambassador
    • Demo CiviCRM
    • Download CiviCRM
    • Download Extensions
    • Find An Expert
  • PARTICIPATE
    • Join the community
    • Make it happen
    • Support CiviCRM
    • Meet ups
    • Document CiviCRM
    • Translate CiviCRM
    • Developer resources

You are here

Home » Blogs » Dave Greenberg's blog

Blog

  • API
  • Architecture Series
  • CiviCampaign
  • CiviCase
  • CiviCon
  • CiviContribute
  • CiviCRM
  • CiviCRM v4.1
  • CiviEvent
  • CiviMail
  • CiviMember
  • CiviMobile
  • CiviPledge
  • CiviReport
  • Documentation
  • Drupal
  • Extensions
  • Finance and Accounting
  • Interface Design and Layout Standards
  • Internationalization and Localization
  • Joomla
  • Make it happen
  • Marketing and Promotion
  • Meetups
  • Older Versions
  • Release
  • Schools
  • Solutions (case studies and user stories)
  • Sprints
  • Teams
  • Training
  • v1.6
  • v1.7
  • v1.8
  • v1.9
  • v2.0
  • v2.1
  • v2.2
  • v2.3
  • v3.0
  • v3.1
  • v3.2
  • v3.3
  • v3.4 and v4.0
  • v4.2
  • v4.3
  • WordPress

Batch Entry of Contributions and Membership Payments - Draft Specification

Submitted by Dave Greenberg on February 22, 2012 - 15:31

Batch entry of gifts (checks, cash, etc.) is a much requested "missing feature" in CiviCRM. Thanks to a generous sponsorship commitment from the Electronic Frontier Foundation, we are about to launch a Make-it-Happen campaign to implement this feature for the next release (4.2). We've spent some time discussing requirements with folks at EFF and several other organizations, and we've reviewed analogous functionality offered by several of the proprietary donor management products. The purpose of this post is to share the draft specifications for the feature and solicit feedback from others in the community.

Overview

The goal is to provide a streamlined interface for data entry of batches of contributions and membership payments. A simple batching concept will be introduced to provide verification of count and totals. The feature will use a grid-style input form with the columns controlled by a selected profile. This will allow sites to add or remove non-required fields in the grid (e.g. add custom contribution fields, add or exclude premium fields etc.). The current plan is to have a separate flow / input grid for batch entry of contributions vs. membership signup / renewal payments. This will help reduce the number of columns required for each type of input.

Basic Workflow

1. Create a New Batch

Users add a new batch by entering the following: batch type-contributions or memberships for now (required), batch name (required), description (optional), number of items (optional), batch total amount (optional). A default unique batch name is provided ("Batch N" + open date). The batch open date is assigned automatically. Users select the profile they want to use for the input grid

2. Enter Contributions or Memberships (check, cash, EFT)

For each row, you can select an existing contact using the auto-complete widget OR create a new contact (using the pop-up New Contact profile form). If contact information such as phone number or email address are included in the grid profile - those values will be populated for an existing contact and can be updated as needed in the row. Support for assigning a Soft Credit will be included. Rows will be saved as they are recorded to prevent data loss. A running count and total for the batch will be displayed on the screen. Client side field validation will be used as much as possible.

3. Verify Batch Totals / Close Batch

Users can enter all transactions for the batch in one session, or simply log-out and complete input at a later time. When all transactions are entered, the user clicks "Close Batch". If a transaction count and total have been recorded for the batch, the user will be alerted when closing if the count or total don't match. In this case, they can return to the batch's transactions to check for input errors, missing and or duplicate transactions. Or they can override the entered count and total (in which case the batch values are updated to match the transactions in the batch).

Additional Functionality

Working with Existing Batches

Users can return to an open batch to continue adding or editing transactions in the batch. For open batches, they can also edit name and description of batches, modify the expected number of transactions, and batch total, and set the batch status to closed. Batches may only be deleted if they have 0 transactions assigned to them. Administrators may have permission to re-open a batch that has not been exported, in which case the batch close date is set to null. Once the the batch is exported it cannot be changed. (NOTE: Batch export is not in scope for this project, but is scheduled to be included in CiviAccounts development.)

Reporting

Minimally the batch name should be added to the Contribution Detail report as a column and as a filter. If time permits, one or more "Batch Reports" may be implemented.

  • Dave Greenberg's blog
  • Log in or register to post comments

Comments

batch entry

Permalink Submitted by Sarah Gladstone (not verified) on February 22, 2012 - 16:23

This looks fantastic! One question ( for now) is will this be available as a batch "action" after doing a search? Such as I do an advanced search on some criteria, and get a result screen of 100 contacts. Then in the list of "actions" I could choose "batch entry of contributions" or "batch entry of memberships"

  • Log in or register to post comments

Seems useful

Permalink Submitted by Dave Greenberg on February 23, 2012 - 16:06

.. but maybe a phase 2 feature. Can you share some real-world scenarios where this would come in handy?

  • Log in or register to post comments

Dave - the scenarios I

Permalink Submitted by Sarah Gladstone (not verified) on February 23, 2012 - 20:50

Dave - the scenarios I see:

a) The office staff runs a search on contacts with a "family" membership, then wants to create a new obligation for all of them for $2000. ( eg create a pledge for everyone in that group.) Then they run a search for all contacts with a "senior couple" membership, then wants to create a new obligation for all of them for $1000.00

b) The office staff runs a search of all people nearing their expiration of their membership. Then wants to renew membership for all the contacts who matched the search results.

  • Log in or register to post comments

Implementation suggestions

Permalink Submitted by xavier on February 22, 2012 - 17:13

Hi,

 

Been using jqgrid on some projects, works ok

http://www.trirand.com/blog/phpjqgrid/examples/editing_data/inlinecustom/default.php

 

but the cool new lib seems to be:

https://github.com/mleibman/SlickGrid/wiki

 

 

  • Log in or register to post comments

Thanks

Permalink Submitted by Dave Greenberg on February 23, 2012 - 16:04

We'll definitely check out both libraries. Keep us posted if you discover other options or pros / cons for any of them.

  • Log in or register to post comments

What's the goal of the batch?

Permalink Submitted by xavier on February 22, 2012 - 17:20

Hi,

 

I have zero experience working for batch of cheques or payments, what's the goal of the batch, vs simply having a grid batch system? what's the aim of grouping them together?

 

I see the benefit of if for the case if you have a total count for the validation purpose, but other than that, should it really be a mandatory step?

 

Is it like a campaign as a "group" (and here I come again: shouldn't we use a tag for that instead of introducing yet another concept into the mix)

 

Anyway, will they be batch actions on a batch so you can add all the contacts to a group/event/tag or send them a thank you email or... (all the nice actions you can imagine)?

  • Log in or register to post comments

Reducing errors, correlating receipts with deposits, audits

Permalink Submitted by Joe Murray on February 23, 2012 - 19:18

Batch data entry of cheques is an important workflow for organizations that need to deposit dozens or hundreds of cheques per day. It assists in catching and facilitating early (and thus less costly) correction of data entry errors, enables bank deposits of many cheques to be correlated with associated transactions, and is required by auditors of many organizations.

  • Log in or register to post comments

got it

Permalink Submitted by xavier on February 24, 2012 - 00:06

Thx for the clarification.

Could we instead of making the name mandatory default it to "user-YYYY-MM-DD" or something? For smaller org receiving a few cheques, likely good enough (and helps inforcing a coherent naming convention

  • Log in or register to post comments

Yep - default unique batch name will be provided

Permalink Submitted by Dave Greenberg on February 28, 2012 - 09:08

Spec above is to use "Batch N" + YYYY-MM-DD" where N is the ID of the batch record. Incorporating the user name of the creator might make sense?? However if several folks work on a batch, then might be confusing. Thoughts?

  • Log in or register to post comments

Great addition, batches are certainly important!

Permalink Submitted by pkeogan on February 22, 2012 - 19:29

Dave,

 

This looks great.  Including a the batch as a exportable field for contributions would be critical.  Can we assume contributions can be searched for by batch and that the batch field would available for export.

 

Paul

  • Log in or register to post comments

Yes, good points

Permalink Submitted by Dave Greenberg on February 23, 2012 - 16:03

Batch name / id will be exportable (from Find Contributions > Export)... and Batch Name will be available as a filter in Find Contributions. I'm assuming a user-controllable, but default-assigned UNIQUE batch name for each batch is useful (in addition to the unique system-assigned Batch ID - which will be an integer).

  • Log in or register to post comments

CiviAccounts Batching of Existing Transactions

Permalink Submitted by Joe Murray on February 23, 2012 - 19:26

Dave,

We should review the current CiviAccounts implementation of batching transactions already in the system with the UI and feature list you are proposing here. In particular, we should aim to use a common approach for batch names, and to think through whether it makes sense to allow batches created through this data entry oriented interface to be opened and modified through the one oriented towards selecting existing transactions, and vice versa. Consider testing out the branches/trunk.civiaccounts interface so we can make things consistent where appropriate.

  • Log in or register to post comments

This would be great...

Permalink Submitted by jbertolacci on February 27, 2012 - 10:06

...and IMBA may be able to find some funds to support the MIH campaign. Some questions:

  • When batches are locked, is there/could there be an option to lock (view, but not edit) the contributions that comprise the batch?
  • In the original rough scope credit card processing was discussed. It sounds like CC processing did not make it into this phase?
  • Will there be an option to choose the contact matching dedupe rule like contact import offers, or will this use the default matching rule?
  • Has there been any thought given to being able to manually populate the grid or alternatively choose to import the grid data from a spreadsheet. Seems like it might be an easy input option given the current contact, contribution and membership import.
  • Speaking of contribution import, you can currently import contributions but no action is taken -- i.e. you can import a membership payment, but the import does not renew the membership. To confirm, this is exactly the type of action that the batch will be designed to handle, correct?
  • How will a contribution be matched to a given membership in cases where a contact has multiple memberships? A profile field specifying the membership type? What if there are multiple memberships of the same type?
  • Log in or register to post comments

Thanks for the feedback (and hopefully MIH support)

Permalink Submitted by Dave Greenberg on February 28, 2012 - 12:32

Replies inline:

  • When batches are locked, is there/could there be an option to lock (view, but not edit) the contributions that comprise the batch?

This is not in the current scope. Would be good to discuss the rationale for this and whether it should be an "option" or just how things work. From my understanding, would make the most sense to do this after a batch was marked as "Exported" - which would be a phase 2 / CiviAccounts feature.

 

  • In the original rough scope credit card processing was discussed. It sounds like CC processing did not make it into this phase?

Right. EFF (the current primary sponsor) does not have that requirement. Ping me to discuss IMBA's requirements in this regard.

 

  • Will there be an option to choose the contact matching dedupe rule like contact import offers, or will this use the default matching rule?

Not sure I understand this question. Our thinking is that the user will either select an existing contact (using autocomplete widget), OR create a new one for a given row.

 

  • Has there been any thought given to being able to manually populate the grid or alternatively choose to import the grid data from a spreadsheet. Seems like it might be an easy input option given the current contact, contribution and membership import.

This is not in the current scope. We'd need to think about what elements could be imported to the grid (i.e. only handle for an existing contact, vs. new contact + contribution data).
 

  • Speaking of contribution import, you can currently import contributions but no action is taken -- i.e. you can import a membership payment, but the import does not renew the membership. To confirm, this is exactly the type of action that the batch will be designed to handle, correct?

Current thinking is to have a separate workflow/grid for membership (signup and renewal) payments vs. contributions. In the membership payment flow, the staff person would select whether they are recording payment for a new membership (select membership type etc.), OR payment for a renewal (select the existing membership to renew). Renewal payments would result in membership updates.

 

  • How will a contribution be matched to a given membership in cases where a contact has multiple memberships? A profile field specifying the membership type? What if there are multiple memberships of the same type?

For renewals, I think we'll need to allow staff to view existing memberships (with sufficient data to differentiate them) - and then select the one they are renewing.

 

  • Log in or register to post comments

Very Cool!

Permalink Submitted by FatherShawn on February 27, 2012 - 18:22

My segment of the civi community will find this a true blessing - most congregations receive their donations on Sunday.  That is to say it's naturally a batch process!

  • Log in or register to post comments

Will a batch-entered contribution create an activity?

Permalink Submitted by Eliet Henderson on March 14, 2012 - 16:30

 

Currently, if you import a contribution, no activity is created on the donor's record, which I find very disconcerting. Will batch-imported contributions create corresponding activities on the donors' records?

Overall it seems like a great feature.

  • Log in or register to post comments

Imported Contributions

Permalink Submitted by guyiac on October 5, 2012 - 14:00

I agree with this - it's strange that imported contributions do not show up in the Activites tab, as manually entered contributions do. Is there any way to make this happen?

  • Log in or register to post comments

CIVICRM


GROWING AND SUSTAINING RELATIONSHIPS

WHAT IS CIVICRM
  • Community
  • Case Studies
  • Experts
  • Contributors
  • Core Team
  • Licensing
  • Contact Us
WILL CIVICRM MEET YOUR NEEDS?
  • Contacts
  • Contributions
  • Communications
  • Peer-To-Peer Fundraisers
  • Advocacy Campaigns
  • Events
  • Members
  • Reports
  • Case Management
GET STARTED
  • Evaluate Your CRM Needs
  • Evaluate CiviCRM Features
  • Read Books
  • Documentation
  • Demo CiviCRM
  • Download CiviCRM
  • Download Extensions
  • Find An Expert
PARTICIPATE
  • Join the CiviCRM Community
  • Read Our Blog
  • Community Forum
  • Attend a Training or Meetup
  • Make It Happen
  • Become A CiviCRM Developer
  • Issue Tracker
  • Help with Documentation
  • Translate