During the past year, I've been working with a number of medium and larger organizations using CiviCRM, and have found a few gaps in CiviCRM's CiviContribute functionality, particularly around the management of recurring donors, which are often a really important part of a larger organizations' donor base.
To this end, I'm happy to share a couple of extensions that I've been developing to fill these holes, detailed below.
Feedback and patches welcome, as usual.
Also a side note -- if you're using our iATS Payments extension, we've just released a new 1.4.0 release, which is CiviCRM 4.6.x compatible.
Until I put together an official release, use this page: https://github.com/adixon/ca.civicrm.contributionrecur which describes what it does in more detail.
The key things it does are:
a. Backport the new recurring contribution reports in 4.6 for earlier civi versions.
b. Add a system job for handling more complex recurring membership functionality.
c. Configure fixed days of the month for recurring contributions (this is really only a starting point of this functionality, and will depend on your payment processor).
d. Add more editable and viewable fields when managing your recurring contribution records (sometimes called the "schedule").
2. CiviContribute Extra https://github.com/adixon/ca.civicrm.contributextra
This extension provides two other useful things that aren't specific to recurring contributions.
a. Administrative use of front end contributions forms. If you find that the backend credit card contribution forms are too complex for your standard administrative data input of credit card donations, for example, then you can use a streamlined form that you create just like your front end forms (or rather, you use a front end form that's been specifically identified for admin use). This is a spin off of a requirment we had for ACH/EFT backend data entry that found another use for phone bank fundraising, to simplify the phone bank volunteer job.
b. Extended contributions report. The idea of this report is that it generates a bookkeeping report total based on a set of filters you define, and a set of headers your report on, and then every other dimension of data is totalled. In other words, an income report summarized by arbitrary fields.