Skip to end of metadata
Go to start of metadata

Motivation

As of CiviCRM 3.0, the contribution honoree functionality is very similar to the contribution soft credit functionality. For the sake of consistency, usability, and easy of improvement, these two functionalities should be consolidated into one slightly more generalized functionality.

Here is a summary of the specific features from each functionality that I would like to see consolidated

feature category

feature description

currently possible
with honorees?

currently possible
with soft credits?

data storage

ability to have multiple credits for the same contribution

no

yes

data storage

ability to store different types of credits

yes

no

user interface

ability to create a new contact record for the contact receiving the credit while entering the contribution

yes

no

user interface

ability to add multiple credits for the same contribution

no

no

user interface

ability to add a credit to a contact that is not an individual

no

yes

Changes to the data structure (and data)

  • add column `soft_credit_type_id` to table `civicrm_contribution_soft` as an implicit FK to `civicrm_option_value`. (This structure mirrors the `honor_type_id` column currently in the `civicrm_contribution` table)
  • move the data:
    • create new option values (or possibly just change the name of the group from 'honor type' to soft_credt_type
    • set the soft_credit_type for all soft credits to be of a type called "Fundraised by"
    • move all of the honor information from `civicrm_contribution` to `civicrm_contribution_soft`
  • remove the columns `honor_contact_id` and `honor_type_id` from `civicrm_contribution`
  • add column `soft_credit_type_id` to `civicrm_pcp_block` to store the type of soft credit that personal campaign pages will use for a given contrbution page

Changes to language

  • The name of the resulting functionality should be called "soft credits" to follow the concept most similar

Changes to the user interface

When entering a contribution manually

  • Adding a new soft credit would have a javascript interface to add multiple (like with emails/phones on a contact record)
  • Each soft credit would contain the following fields
    • auto-complete text box for selecting the contact record, along with a drop down box with contact types for creating a new record (mirroring the layout at the top of a "New Contribution" screen, for example)
    • drop down box with soft credit types
    • id value for personal campaign page (useful for users to have access to this from the front end, I've found)
    • checkbox for pcp_display_in_roll
    • text box for pcp_roll_nickname
    • text box for pcp_personal_note

When configuring personal campaign page settings for a contribution page

  • the settings form would present a drop down box allowing the administrator to choose a soft credit type that personal campaign pages will use when they are created for the given contribution page

Questions to answer

  • How will these changes affect contribution import/export?
  • Why does the the civicrm_contribution_soft table have a column for `amount`? Should we have a field where the user can actually change the value?
    • When we were designing the soft credits schema, folks told us it would be useful to support split credits at some point - e.g. 1 contribution for $200 with $150 soft credit assigned to constituent A and $50 to constituent B.
Labels
  • None

Creative Commons License
Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution-Share Alike 3.0 United States Licence.