Chimpegration on Blackbaud Hosted Raiser’s Edge (and NXT)

I cannot think how many times I have had to write back to a prospective client with the stock phrase “Unfortunately our products are not available on the Blackbaud hosted environment at the current time”.  The ground-breaking news is that after at least 7 years waiting in the wings, we are able to release one of our products on the Blackbaud hosted environment. (Finally I can updated my stock phrase)

When it was first released Chimpegration revolutionised the meaning of integration within The Raiser’s Edge world. It was the first app to fully embrace the potential of two separate platforms to transfer data between Raiser’s Edge and MailChimp. Unlike some integration applications it takes data directly from the source. Data flows from MailChimp via Chimpegration into The Raiser’ s Edge and back again. There is no need for any manual manipulation along the way. Chimpegration gives you a multitude of options to help smooth the different data points and ease the transition of information from MailChimp, an email marketing suite, to The Raiser’s Edge and donor management CRM system.

Azadi Sheridan, independent fundraising data expert, RE guru and former Blackbaud senior manager said,

‘Integration’ can mean different things for different products, but Chimpegration is the most complete and automated integration for MailChimp that I’ve seen for any fundraising database.

And now all of this is available to Blackbaud hosted clients too!

What does this mean for the future? One of the issues that many of the prospective clients faced and even our existing clients was whether they should invest in technology that is not available to them on NXT. They would put off a purchase or renewal decision because they wanted to wait and see what NXT would hold. RE7 has so much functionality but NXT looks amazing.  Having the best of both worlds is certainly a selling point for any organisation. With Chimpegration on the NXT hosted platform it is easier than ever to transition across to NXT and keep working with MailChimp.

So now you have heard all about it why not request a demo of Chimpegration.

Ready to take the plunge? Request a trial of Chimpegration on hosted.

If you are not hosted and have questions please get in contact too. Those who are not hosted by Blackbaud can also download and trial the Pro version of Chimpegration now from our Chimpegration page.

Validatrix Query Converter Makes it even easier to protect your data

When we first developed Validatrix we had a lofty ambition that users of Raiser’s Edge would be able to protect their records using any combination of business rules. Out of the box, RE allows you to make some fields required. If the whole organisation wants city to be a required field all you have to do is going to configuration and set that field to be required.

However there are many limitations with that. What if we are only working with email only records. We may not have a physical address for those constituents. Validatrix makes it possible to combine criteria to validate records.

(Do they have an address block: YES
Do they have an a postal code: YES)
DO they have a city:

No? Well show a message.

What we soon realised was that for simple scenarios it was not that difficult to create rules. We also realised that after much practise and taking a look at our Validatrix Recipes area on ZeidZone, it became easier. Those starting out or writing more complicate rules needed a little more help.

That is why we developed the Validatrix Query Converter. Most, if not all DBAs can write a regular RE query. If they can write a query to give all the records where a message would be shown then this tool can convert the query into a Validatrix rule.

I have to say straight up here that not every single scenario is covered. There are some things (not many) that query can do that cannot be done in a rule. (There are so very many more things that Validatrix rules can do that query can do!). However this should get the beginner and those that are working with complex rules onto the right track.

If you have any questions about this product then please do not hesitate to get in touch with us here.


Beyond Nines hosting becomes Concourse Hosting

We have been working with Glen at Beyond Nines for years now and just heard about how the hosting part of Beyond Nines is now becoming Concourse Hosting. At Beyond Nines Glen, Lisa and the team were the only dedicated company to host our products for their Raiser’s Edge clients. We have hopefully tried to make installing our products as easy as possible but we also know that sometimes it requires a skilled hand to get them to work in complex IT environments. That is why we know that we can rely on Concourse Hosting who just know how our plug-ins work and how to ensure that they run smoothly in their Raiser’s Edge setup. They currently host clients of ours using Audit Trail, Chimpegration, Importacular and The Mergician to name but a few.

For very many years now we had hoped that Blackbaud would let us into their hosting. With the move to NXT and away from the hosting of RE Classic customizations this is looking ever doubtful. However if you want the best of breed hosting and great products certainly take a look at Concourse:

BBCon 2015 Sessions to Watch out for

For the past quite a few years we have attended the Blackbaud Conference for Non-profits otherwise known as BBCon. This year we will be there again exhibiting and speaking. Each year we look through the sessions and recommend those that we think will be among the highlights. So in no particular order (other than my session is first in the list because it is the one everybody has to see)…

Performance Management Using Audit Trail

David Zeidman, Zeidman Development and Mohammed Dasser, University of Central Florida Foundation.

This session will show how Audit Trail can be used to manage an organization’s workflow.  David will give a brief overview of life with and without Audit Trail as well as some of the latest innovations to track performance in RE. Mohammed describes how they have aggregated Audit Trail data in order to determine how best to prioritize resources at UCF and convince others of the need using Tableau.


Bill and Ed’s Excellent Adventure…in Raiser’s Edge™

Bill Connors and Ed Hohlbein

How could you not want to attend a session with a name like this. However there is much more to it than just the name. Bill and Ed have had sessions for several years now and each time I hear them both speak, their knowledge and expertise outstand me time and time again. Well worth a visit.

Meet the Early Raiser’s Edge NXT™ Adopters

Meghan Gauen, Children’s Home & Aid and Kelsi Griffith, Grace College

We have heard a lot from Blackbaud about how NXT will improve our fundraising world but it really is interesting to see and hear exactly how it is being used in a real world scenario form real non-profits.

Looking beyond Raiser’s Edge™ 7 for Large Organizations

Linton Myers, Allison Van Diest, Kurt Barnes and Jim Ballou, Blackbaud

I have heard many larger organizations say that they are struggling with RE7. Some have been contemplating moving away from Blackbaud because they do not believe NXT will solve their problems. I have high hopes for BBCRM solving many issues of volume but am uncertain as to how large an organization needs to be to warrant the investment. Hoping this session will answer the questions.

Introduction to NXT API & Integrations

Dan Bowman, Ben Lambert and Jim Ballou, Blackbaud

What would a coding blog be without reference to a coding session. I have been involved in some of the NXT API discovery sessions and am very impressed with what I have so far seen. I hope you will be too.

Nonprofit Tech in 2025

Steve MacLaughlin, Blackbaud and Donna Wilkins, Charity Dynamics

I am always fascinated by futurology. 2025, while sounding very much in the future, is only ten years away and it will be interesting to hear what our speakers think will be the technology of choice for non-profits, for those who give to non-profits and those that consume non-profit services.

Raiser’s Edge and Raiser’s Edge NXT Integration: Getting the Most from Data Across Your Organization

Emily Dalton and Kevin Kreamer, Omatic Software

I have known Emily for almost ten years and heard her speak on numerous occasions. Her knowledge and grasp of the non-profit world from having worked at Blackbaud and been so involved with Raiser’s Edge make me believe that, despite working for, and no doubt pushing competing products, this will be an insightful session. (I am sure Kevin is also great)

How to Maximize Engagement Using Graduway and The Raiser’s Edge Together

Daniel Cohen, Graduway

Having worked with Graduway for this past year I have been impressed by their product and how it can transform the quality of data being brought into Raiser’s Edge and enhance their offering to school’s alumni.

Adding an Education Record to a Non-Constituent Individual

I have been struggling to find a way to a an education record to a non-constituent individual relationship. There is a Blackbaud knowledgebase article here that outlines how you add an education relationship but it takes a lot for granted. Here is the gist of it:

Dim oEdu As CEducation2
Set oEdu = New CEducation2
oEdu.Init REApplication.SessionContext
With oEdu
   .Fields(EDUCATION2_fld_RECORD_ID) = 678   'Selects the record to add the Education record to
   .Fields(EDUCATION2_fld_SCHOOL_ID) = "Berry College"
End With

However where does the 678 come from? For a constituent this is simple. It would be the constituent system id found under the Records_fld_Id field.

However what would it be for a non-constituent individual relationship. After all they can also have education relationship records.

I tried the field Individual2_fld_Id but the error I got back told me that I could not add an education to an organization record! Not very helpful.

In the end, with a bit of trial and error I worked out that you need to put the field Individual2_fld_Relation_id.

This is the id for the corresponding entry in the Records table which consists of both constituents and non-constituents.

Hope this helps somebody.


We have always had a product that imports data into The Raiser’s Edge. We would regularly customise it for non-profits so that it would adhere to their business rules and bring in their data in a format that they wanted it to. Then came along the somewhat more well known import tool for the Raiser’s Edge (do I really have to mention names?) and our quiet workhorse was, not quite put down, but put to rest.

In recent years however we have had some requests to bring it back. The reason stems mainly from our Audit Trail and Validatrix clients who regularly use the other well known product but would also like to save all the changes that are made in Audit Trail and prevent data from entering Raiser’s Edge making use of their Validatrix business rules.

We also had a number of third party suppliers of data ask us the best way to get data into RE and could we help them.

So a plan was formed to resurrect our long forgotten import tool, integrate Audit Trail and Validatrix and update it with the best bits from IDLookup and The Mergician. We also did what only we do best. We integrated it directly with other third party data sources.  And so was born Importacular!

We built, for want of a better word, a plug-in architecture so that adding new third party data sources does not mean a release of the new version of the application. Instead we could add new data sources remotely to the application with the end user deciding to activate them and install the client assemblies. Once you were used to the main application, selecting a new data source component would be a breeze. It would follow the same pattern as all the other data sources that you had used previously.

We are really excited about the future for Importacular and being able to help non-profits of all sizes to get their data into Raiser’s Edge without pulling their hair out over Excel and CSV files.

Working with Phones/Email without addresses in Raiser’s Edge 7.94

Prior to the release of The Raiser’s Edge version 7.94 I was working with all of our products to ensure compatibility with this latest version. If you have not heard (and if you have not heard where have you been hiding), this release of RE removes phones and emails from physical addresses.

When the concept of emails was new, it was possible that you would have an email address tied to your telephone provider or an email address specific to your place of work.  Your phone would either be at home or at work. Having these connnected to your physical address made sense. However it quickly became aparent that with the arrival of mobile phones and of email addresses that were accessible no matter where you were located, phones and emails (and for that matter all types of communication links) should be tied directly to the constituent record and not to a physical address. This is what has happened with the release of RE7.94.

This is a big shift and in terms of developing applications, we have had to allow for both possibilities so that our programs are compatible with users still on 7.93 and below and those that have made the leap over to 7.94.

The good news is that the old way of doing things still works in 7.94. You can still access phones via the CConstitAddress.Phones collection for an address. However you will probably want to access them how they are intended… Free from addresses.

This is done using the new interface IBBPhonesParent. This is implemented by CRecord, CIndividual2 and COrganization2. The collection of phones is a CConstitPhones object which contains the usual methods. You can iterate the collection to give you one CConstitPhone object but here is the problem.

For reasons that I don’t fully understand (I was told due to binary compatibility reasons) there are no properties or methods on the CConstitPhone object. Instead you have to convert this object to an IBBDataObject in order to access the Fields property. This is a real pain but to save myself some trouble I put together two extension methods for the CConstitPhone object which does this for me. (Unfortunately extension properties do not exist so that is why I cannot simply create an exact corresponding Fields properties. Those working with C# will be familiar with this as there is not a Fields property but rather  get_Fields and set_Fields methods)

<System.Runtime.CompilerServices.Extension()> _
Public Function Fields(ByVal phone As CConstitPhone, fieldConstant As ECONSTITPHONEFIELDS) As Object
   Dim dataobject As IBBDataObject = CType(phone, IBBDataObject)
   Return dataobject.Fields(fieldConstant)
End Function
<System.Runtime.CompilerServices.Extension()> _
Public Sub Fields(ByVal phone As CConstitPhone, fieldConstant As ECONSTITPHONEFIELDS, value As Object)
    Dim dataobject As IBBDataObject = CType(phone, IBBDataObject)
    dataobject.Fields(fieldConstant) = value
End Sub

With these extension method you can simply access the Fields methods on a CConstitPhone object in almost the same way as you would with other objects.

So here is an example of creating a new phone on a constituent record using the above extension code.

Dim constit As CRecord = GetConstituent()
Dim phonesParent As IBBPhonesParent
Dim phones As CConstitPhones
Dim phone As CConstitPhone

phonesParent = CType(constit, IBBPhonesParent)
phones = phonesParent.Phones
phone = phones.Add()

constit = Nothing

What would I like to see from The Raiser’s Edge NXT API?

Everybody always says how rubbish the RE7 API is. I would have to disagree with them thoroughly. There are some serious drawbacks such as not being able to access it directly via the cloud but in terms of coverage it is probably one of the best APIs I have come across. Not only does it cover the data model (which is enormous in itself), it also covers very many areas of the GUI too. Sure there are issues with stability and with lack of documentation but thankfully I have managed to overcome both of these and have been very happy with the API.

So what are my expectations for The Raiser’s Edge NXT API? I don’t have any inside knowledge about this other than what I know is technically possible and what is feasible to do within a reasonable timeframe. I cannot foresee the possibility of asking the API for a constituent form in order to enter data into as you can with RE7. The API will be a REST based data model so that I can ask for a constituent and I will be returned a JSON (or possibly XML) based object to work with. Now if this were RE7 that constituent object would consist of layer upon layer of nested arrays of data. That is how the current CRecord object is but in the REST model this is unwieldy. It may be like that. But hopefully I will also be able to request, for example,  all notes for a given constituent or all attributes. Equally I would like to be able to simply update one note or one attribute rather than the whole object.

One area which is severely lacking in RE7 is the ability to search for data in an easy manner. My workaround has always been to create a SQL query and interrogate the database directly. This is unlikely to be possible with RE NXT. However there are mechanisms for doing this via REST. With other systems (including the CRM system that we use internally) we make use of OData.  This protocol gives me access to individual properties within a REST webservice. For example if I wanted to find a constituent with the last name of Zeidman I would do something like this:$filter=LastName eq ‘Zeidman’

Of course you would have to URLEncode it so that it would look something more like this:$filter%3DLastName+eq+%27Zeidman%27

OData is extremely powerful as I am able to search child objects too and not just the root. This is extremely difficult to do with RE7 as it requires complex SQL to do so. OData is not just for searching but also for pulling out individual properties too rather than whole objects. This is especially useful of the payload is large (as the constituent object is).

One area that is very power with the RE7 API is the ability to determine an instance of RE7’s meta data which varies between organizations. For example we can ask the API what attributes are available to us to use or what are the entries in the notepad type code table. As a third party developer this is essential. If I am writing software for one organisation I could simply hard code the use of one attribute as I know it is going to be there. However unless I can offer the end user the ability to map fields from a third party application back to RE, the application that I am developing can never be sufficiently generic.

Blackbaud’s model of bringing RE NXT online gradually in phases based on roles is a good one. It means that organizations can retain their third party integrations and customizations (assuming the previous restrictions within the hosting environment are lifted). I can envisage the API as being simply a phase in the rollout of NXT and I for one am very excited about that!

EDIT: Read more about RE NXT in general here:

Global Merge More Accurately with The Mergician

We have just released an update to our successful global merge utility The Mergician. We have always had a way of searching for records in The Raiser’s Edge using complex and flexible criteria. IDLookup was one of the first plug-ins that we ever wrote and since it was first developed it has grown to contain some of the most powerful look up criteria around. A year or two ago we created IDLookup Dedupe, making use of IDLookup to search your database for duplicates. Well now we have gone one step further and brought all of this flexible, customization and downright lovely criteria lookup into The Mergician giving everybody the power to choose exactly how they dedupe their data.

There are 20 fields to choose from, many of which you can decide whether or not to search by the whole word or a specific number of characters. You can search using soundex (where names like Johnson and Jonson would be matched), you can search using first name and address line equivalents so that names like Bill match on William and Bvd match on Boulevard. If you are feeling very adventurous you can change the collation so that accented names would match with or without the accents e.g. Édouard would match Edouard.

Not only can you set up one criteria set, but you can set up multiples. You can decide that you want to narrow down the matches made from one to the next or you can decide that you want to select the criteria set with the fewest matches.

The Mergician still supports The Raiser’s Edge own dedupe algorithm so you can continue to create your merge report using that. You can also use our simple email matching tool too or you can use a third party agency to do the matching for you. However using our latest matching engine will give you real flexibility to match based on your own data without having to rely on mysterious algorithms or scoring charts.

Find out more about The Mergician or download the trial version today.