New Feature Alert!

Rock now supports quarterly contribution statements through the latest (v17.0+) Contribution Statement Generator block. This feature allows you to generate statements for specific date ranges (end of month), making it perfect for quarterly reporting, mid-year statements, or custom date ranges needed for yearly international statement purposes.

Originally based on this community idea.

Why Quarterly Statements?

While annual contribution statements are essential for tax purposes, quarterly statements offer several benefits:

  • Better donor engagement: Regular updates help donors stay informed about their giving
  • Improved financial transparency: Quarterly reports build trust and accountability
  • Enhanced donor retention: Regular communication strengthens donor relationships
  • Compliance requirements: Some organizations are required to provide quarterly statements
  • Mid-year planning: Helps donors understand their giving patterns for tax planning

How It Works

The enhanced Contribution Statement Generator block in RockRMS v17.0+ now accepts two new page parameters:

  • StatementStartMonth - The starting month (1-12) for the statement period
  • StatementEndMonth - The ending month (1-12) for the statement period

Important: This feature requires the newer Contribution Statement Generator block, not the legacy Contribution Statement Lava block. You can verify which block you're using by checking your Contribution Statement page.

Setting Up Quarterly Statements

1. Configure Your Statement Page

First, ensure your Contribution Statement page is properly configured:

  • Go to Admin | CMS Configuration | Pages
  • Navigate to your Contribution Statement page (typically under External Homepage | Give | Giving History | Contribution Statement)
  • Edit the page security and give All Users View rights
  • In the Blocks from Page section, click the cog icon on the Contribution Statement Generator block
  • Set Allow Person Querystring to Yes
  • Ensure the block also allows All Users View permissions

2. Create Email Templates

Create email templates for your quarterly statements. Here's an example template structure:

Subject: Your {{ Quarter }} {{ Year }} Contribution Statement

Dear {{ Person.NickName }},

Thank you for your faithful giving to our ministry!

Your {{ Quarter }} {{ Year }} contribution statement is now available. Click the button below to view and print your statement.

[View My Statement]({{ 'GlobalAttributes' | Attribute:'PublicApplicationRoot' }}/ContributionStatement?rckid={{ Person | PersonActionIdentifier:'contribution-statement' }}&StatementYear={{ Year }}&StatementStartMonth={{ StartMonth }}&StatementEndMonth={{ EndMonth }})

If you have any questions about your statement, please don't hesitate to contact us.

Blessings,
[Your Organization Name]

3. Quarterly Statement URL Examples

Here are examples of how to construct URLs for different quarterly periods:

Q1 (January - March)

URL: /ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=1&StatementEndMonth=3

Lava Variables:

  • {{ Year }} = "2024"
  • {{ StartMonth }} = "1"
  • {{ EndMonth }} = "3"

Q2 (April - June)

URL: /ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=4&StatementEndMonth=6

Lava Variables:

  • {{ Year }} = "2024"
  • {{ StartMonth }} = "4"
  • {{ EndMonth }} = "6"

Q3 (July - September)

URL: /ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=7&StatementEndMonth=9

Lava Variables:

  • {{ Year }} = "2024"
  • {{ StartMonth }} = "7"
  • {{ EndMonth }} = "9"

Q4 (October - December)

URL: /ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=10&StatementEndMonth=12

Lava Variables:

  • {{ Year }} = "2024"
  • {{ StartMonth }} = "10"
  • {{ EndMonth }} = "12"

4. Advanced Date Range Examples

You can also create custom date ranges for specific reporting periods:

Fiscal Year (July - June):
/ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=7&StatementEndMonth=6
Mid-Year Statement (January - June):
/ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=1&StatementEndMonth=6
Custom Period (March - August):
/ContributionStatement?rckid=[PERSON_TOKEN]&StatementYear=2024&StatementStartMonth=3&StatementEndMonth=8

Automating Quarterly Statements

Using Data Views

Create Data Views to identify recipients for quarterly statements:

  • Q1 Recipients: People who gave between January 1 and March 31
  • Q2 Recipients: People who gave between April 1 and June 30
  • Q3 Recipients: People who gave between July 1 and September 30
  • Q4 Recipients: People who gave between October 1 and December 31

Using Workflows

Set up automated workflows to send quarterly statements:

  1. Create a workflow triggered by a scheduled job
  2. Use Lava to calculate the current quarter and date range
  3. Filter recipients based on giving within the quarter
  4. Send personalized emails with the correct statement link

Technical Details

Page Parameters

  • StatementYear - The year for the statement (defaults to current year)
  • StatementStartMonth - Starting month 1-12 (defaults to January if not specified)
  • StatementEndMonth - Ending month 1-12 (defaults to December if not specified)
  • rckid - Person action identifier for secure access

Date Range Logic

  • If StatementStartMonth is specified, the statement begins on the first day of that month
  • If StatementEndMonth is specified, the statement ends on the last day of that month
  • If StatementEndMonth is less than StatementStartMonth, the system assumes a full year and adjusts accordingly
  • If neither month is specified, the statement covers the entire year

Best Practices

Timing

  • Send Q1 statements in early April
  • Send Q2 statements in early July
  • Send Q3 statements in early October
  • Send YTD statements in early December to avoid confusion with the annual statement and allow donors to see their giving for the year prior to the annual statement and Christmas and New Year's season.

Communication

  • Clearly label statements as "Quarterly" to avoid confusion with annual statements
  • Include a note that this is not the final annual statement for tax purposes
  • Provide contact information for questions
  • Consider including a summary of the organization's impact during that quarter

Testing

  • Test with yourself and a few trusted individuals first
  • Verify that the date ranges are correct
  • Check that the PersonActionIdentifier links work properly
  • Ensure the statement includes all relevant transactions

Common Use Cases

1. Standard Quarterly Reports

Send quarterly statements to all donors who gave during each quarter. This provides regular updates and helps donors track their giving throughout the year.

2. Major Donor Communications

Provide quarterly statements to major donors as part of your stewardship program. This can be combined with personal phone calls or meetings.

3. Campaign-Specific Reports

Generate statements for specific fundraising campaigns or events, showing contributions during the campaign period.

4. Fiscal Year Reporting

For organizations with non-calendar fiscal years, generate statements that align with your fiscal year periods.

Troubleshooting

Common Issues

  • No transactions shown: Check that the date range is correct and that transactions exist for the specified period
  • Wrong date range: Verify that StatementStartMonth and StatementEndMonth are between 1-12
  • Access denied: Ensure that both the block and page security for the Contribution Statement Generator block are set to View for All Users
  • Invalid PersonActionIdentifier: Check that the rckid parameter is being generated correctly

Debugging Tips

  • Test the URL parameters manually in your browser
  • Check the Rock logs for any errors
  • Verify that the PersonActionIdentifier is being generated for the correct person
  • Confirm that the statement template is configured correctly

Conclusion

Quarterly contribution statements are a powerful tool for donor engagement and financial transparency. With Rock's enhanced Contribution Statement Generator block, you can easily create customized statements for any date range, making it simple to provide regular updates to your donors.

Remember to test thoroughly before sending to your entire donor base, and consider starting with a small group to ensure everything works as expected.

Pro Tip: Consider creating a dashboard or report that shows quarterly giving trends. This can help you identify patterns and opportunities for donor engagement throughout the year.

Related Resources

Tip: You can add a Contribution Statement List Lava block to the Person profile Contributions sub-page (under the Giving Configuration block) to display quarterly statements for each person. This can also be used on the external website in the Person Profile Giving History page.

Block Settings: Set Use Person Context to Yes and Entity Type to Person.

Example Lava Code:
{% assign currentYear = 'Now' | Date:'yyyy' %}
{% assign currentMonth = 'Now' | Date:'M' %}

{% if currentMonth and currentMonth < 4 %}
    {% assign currentQuarter = 1 %}
{% elseif currentMonth >= 4 and currentMonth < 7 %}
    {% assign currentQuarter = 2 %}
{% elseif currentMonth >= 6 and currentMonth < 10 %}
    {% assign currentQuarter = 3 %}
{% elseif currentMonth >= 9 and currentMonth <= 12  %}
    {% assign currentQuarter = 4 %}
{% else %}
    {% assign currentQuarter = 4 %}
{% endif %}

<div class="panel panel-default">
  <!-- Default panel contents -->
    <div class="panel-heading">
      <h1 class="panel-title"><i class=""></i> Quarterly Contribution Statements</h1>
    </div>
    <div class="panel-body">
        <div class="margin-b-md">
            {% for statementyear in StatementYears %}
                {% if currentYear == statementyear.Year %}
                    {% assign quarters = "1,2,3,4" | Split: "," %}
                        {% for i in quarters %}
                            {% assign quarter = i %}
                                <a class="btn btn-primary my-2" style="min-width: 97px;" href="{{ DetailPage }}?StatementYear={{ statementyear.Year }}&StatementStartMonth={{ quarter | Times:3 }}&PersonGuid={{ PersonGuid }}">{{ statementyear.Year }}-Q{{ quarter }}</a>
                                {% if i >= currentQuarter %}
                                {% break %}
                            {% endif %}
                        {% endfor %}<br>
                {% else %}
                    {% assign quarters = "1,2,3,4" | Split: "," %}
                        {% for i in quarters %}
                            {% assign quarter = i %}
                                <a class="btn btn-default my-2" style="min-width: 97px;" href="{{ DetailPage }}?StatementYear={{ statementyear.Year }}&StatementStartMonth={{ quarter | Times:3 }}&PersonGuid={{ PersonGuid }}">{{ statementyear.Year }}-Q{{ quarter }}</a>
                                {% if i > 4 %}
                                {% break %}
                            {% endif %}
                        {% endfor %}<br>
                {% endif %}
            {% endfor %}
        </div>
    </div>
</div>

Visual Example:
Quarterly Contribution Statements Block Example
This block provides a quick-access interface for users to view and download their quarterly statements directly from their profile.