To ensure compatibility between Salesforce, NPSP (Non-profit Success Pack), and RaiseNow various settings have to be configured. Please ensure that you have configured Salesforce and NPSP correctly. If you are applying customization in your RaiseNow widget implementation, please also make sure that the mentioned settings for the widget are applied correctly.
The process described in this document requires several variables that will be provided during the RaiseNow on-boarding process. Please contact RaiseNow support to coordinate the setup: firstname.lastname@example.org
To complete the setup you will require administration level privileges for targeted Salesforce instance as well as the RaiseNow merchant.
The following Salesforce settings must be configured within Salesforce for the RaiseNow integration to function properly.
Activate Country Picklist in Salesforce
RaiseNow uses ISO codes to pass countries from donation forms to Salesforce. As these required fields are only enabled in Salesforce if the picklist for countries are enabled, you have to make sure these are activated as described here:
If you are starting with a new Salesforce organization, we recommend you do this step first because NPSP may install demo data you need to migrate if you do this later on.
The RaiseNow Salesforce integration uses a number of objects only available with the Salesforce NPSP. Visit the AppExchange in Salesforce and install NPSP. Once the installation is complete, go to the NPSP health check page in your Salesforce organization and ensure that you passed all checks.
- Ensure the following values for StageName are activated on the Opportunity object after installing NPSP:
- "Closed Won"
- "Closed Lost"
While you are here, you may also want to set probabilities for these StageNames and decide if they should enter forecasting. We actually suggest a reasonable probability for the StageName "Pledged" as this will be assigned to future charges on RaiseNow subscriptions/recurring payments.
Enable Email Opt Out field
In Salesforce's Setup, select Object Manager, and search for the Object Contact. There, set Field-Level Security for the field HasOptedOutOfEmail on the Contact object to be visible for the role corresponding to the user you used to provide API access to RaiseNow above. The field must have write permissions, i.e. not be set to "Read only".
Activate Multiple Currencies
RaiseNow supports multi-currency setups. However, RaiseNow can only pass the currency to Salesforce if the multi-currency feature in Salesforce is enabled. See this resource on how to enable Salesforce multi-currency.
If the Salesforce instance makes use of the advanced multi-currency (AMC) feature, please also enable customizable rollups to ensure that this feature works properly. Note that you may have to disable AMC when updating NPSP to avoid errors.
In Salesforce go to Setup → Company Information, click edit and activate the checkbox Activate Multiple Currencies
Once multi currency is enabled, you need to add allowed currencies and conversion rates. Please refer to the Salesforce documentation for enabling dated exchange rates.
After completion the screen should list all currencies you plan to collect donations in:
Activate Salesforce duplicate detection.
RaiseNow can utilize the built-in mechanism in Salesforce to detect duplicates upon the creation of new contacts. Make sure you have a duplicate rule and corresponding matching rule enabled before using this feature.
Configure donation opportunity names
The RaiseNow transaction identifier is used to set the name of the opportunities in Salesforce by default. You can overwrite the name by using the NPSP settings to create opportunities according to your preferences. Please note, that it will not update opportunity names in retrospect.
Stop automatic payment creation by NPSP
RaiseNow will create payments in Salesforce automatically. To avoid having multiple payments per opportunity, deactivate the automatic payment creation by the NPSP.
Activate My Domain feature for you Salesforce instance
We strongly recommend that you activate the My Domain feature before proceeding to connect RaiseNow. This will ensure the integration keeps running smoothly even if Salesforce decides to move your instance to another datacenter. This does happen sometimes.
See this article on how to do this: https://help.salesforce.com/articleView?id=domain_name_overview.htm&type=5
Activate Marketing User
RaiseNow supports the creation of campaigns in Salesforce. In addition, donations made through RaiseNow can be linked to existing campaigns. Thus, the Marketing User checkbox must be selected on the user's profile as described in the Salesforce Knowledge Base.
Install the RaiseNow FundraisingKit for Salesforce NPSP
Head over to the AppExchange and install our managed package: https://appexchange.salesforce.com/appxListingDetail?listingId=a0N3A00000FeFuvUAF
After the installation has been completed, go to setup and search for permission sets and assign the RaiseNow permission set to the user you intend to use while connecting RaiseNow to your Salesforce organization.
Add RaiseNow Transaction to the NPSP Payment Page Layout related list
We recommend that you add add the RaiseNow transaction to the related list of the NPSP Payment object page layout:
Connect RaiseNow Applications
RaiseNow provides you with an integration suite that allows you to integrate RaiseNow services with certain target systems. That service is called RICE. This service runs as a dedicated instance with defined resources for each customer in a separate container to ensure that high load operations from one customer do not impact other customers.
In the following we will show you how to access this integration suite and how to configure it to integrate with Salesforce.
You will need a RaiseNow merchant administrator login to complete the steps outlined below.
Go to https://self-onboarding.fa.prod.rnw.io/login and authenticate with you RaiseNow Manager access credentials.
If your RaiseNow access includes merchant administrator level access for more than one merchant, choose the correct merchant from the first drop down. In the second input box, type in the identifier of the organisation as provided by RaiseNow customer success.
Choose salesforce-rice as the destination and enter the base-url you were provided with during the on-boarding process with RaiseNow customer success.
Define Source Applications
In the next step we are going to define sources for data. The EPayment Platform will send transaction data of course, so we select it. As several business processes can be triggered from within Salesforce, the managed package you installed earlier is a data source as well.
In addition to that you may have other RaiseNow services already setup, such as the Peer-to-Peer platform. If that is the case, please select them at this point. You will have to define credentials for each service you select in the next section.
Please note, that a RICE instance can either be configured for production or test transactions. It will never process both. Note, that once you have selected production data in the setup wizard, it is not possible to switch back from production to test.
Configure credentials for the EPayment platform
The EPayment platform pushes transaction data to the integration suite using webhooks. The first item to configure in this step are the credentials the EPayment platform uses to authenticate with the integration suites. For example when a subscription subscribe event is triggered in the EPayment Platform.
The next input field, requests you to input your EPayment Platform organisation identifier. If you don't know your organisation dentifier check your browser bar when logged into the RaiseNow Manager.
The second pair of credentials is used, when the integration suite needs to request further information from the EPayment Platform or updates particular values of a transaction or subscription. We strongly recommend that you use a dedicated RaiseNow API user here instead of your personal RaiseNow account, as the former does not expire in its functionality. See this section on how to setup a dedicated API user within RaiseNow for this integration: https://support.raisenow.com/hc/en-us/articles/360001440097-The-RaiseNow-User-Manager
Configure credentials for Salesforce
Salesforce pushes updates to the integration suites just in the same way the EPayment platform does. So here we have to configure credentials as well.
Within Salesforce, go to setup and search for "Named credentials". You will see 2 entries for RaiseNow. Select "RaiseNow Fundraising Automation Notifications" (don't bother with the staging credentials) and define a combination of username and password. The Authentication Protocol is "Password Authentication". Note, that the pre-filled values will not be accepted.
Now copy and paste these values in the RaiseNow integration suite.
We also have to tell the integration suite where your Salesforce instance is located. Thus, within Salesforce, click on your user profile icon located at the top right of your browser window and copy the url to your Salesforce instance. Please note, that the URL from your browser bar is different and will not work.
Then, paste the value in the appropriate field in the on-boarding wizard. You also have to specify if this the Salesforce organization is a sandbox instance or not.
If you proceed from here, RICE will execute the authentication process with your Salesforce privileges. If you are not yet logged into Salesforce, you will be asked to do so before the setup can be completed. If any of the above requirements for the Salesforce configuration where not met you will see a corresponding message on the screen.
If you see the screen below you have successfully connected RaiseNow with Salesforce.
Congratulations! You are now ready to transfer donations to Salesforce in real time. We recommend you take a quick look at the customization options for the Salesforce Tamaro implementation to find out how you can best leverage your touch point implementation.