Setting up Ezy Raise
This guide walks you through connecting an Ezy Raise campaign site to MoveData. Once connected, MoveData checks the site for new and changed donations every hour and sends them to Salesforce with their campaign, team, fundraiser page and donor.
| Field | Detail |
|---|---|
| Product | Ezy Raise |
| Method | Pull (Polling) |
| Frequency | Every hour (default) |
Note
Ezy Raise is in beta. If you do not see Ezy Raise in the list of platforms when you create an integration, contact support@movedata.io.
Supported extensions#
This integration requires the Fundraising and Donations extension.
One integration per campaign site#
Each Ezy Raise campaign site is its own address, usually on your charity's own domain, and has its own API key. A key only sees the site it belongs to. If you run several campaign sites, create one MoveData integration for each one.
Before you begin#
- You need access to the MoveData app in Salesforce.
- You need the address of each campaign site you want to connect, for example
https://donate.example.org. - You need the API key for each of those sites.
Getting your API key#
Each campaign site has its own API key. Ezy Raise's public API documentation does not say where a charity finds it, so ask your Ezy Raise account manager for the key for each site you want to connect.
Warning
Keep your API keys private. Anyone with a key can read that site's donor and donation data.
Setting up the integration#
Step 1: Open the Integrations tab#
In Salesforce, open the MoveData app and click the Integrations tab.
Step 2: Start a new integration#
Click New Integration and choose Ezy Raise from the list of platforms.
Step 3: Name your integration#
Enter a name that tells your sites apart (for example, "Ezy Raise: Annual Walk") and click Save.
Step 4: Enter the site and key#
On the integration detail page, enter:
| Field | Value |
|---|---|
| Campaign site URL | The address of the campaign site, starting https://, with nothing after the domain. For example https://donate.example.org, not https://donate.example.org/donate. |
| API key | The site's API key. Once saved, only the last four characters are shown. |
Step 5: Review the other settings#
Review the integration settings below and change any you need. Click Save.
MoveData checks the key with Ezy Raise when you save. If the site or key is wrong, the page tells you which one; see Troubleshooting.
Step 6: Check the first run#
MoveData checks the site on the polling interval, every hour by default. After the first check, open the Notifications tab in MoveData to see what arrived. Each check is recorded as a polling attempt even when there is nothing new; see Viewing polling attempts.
Integration settings#
| Setting | Description |
|---|---|
| Campaign site URL | The site to read. Required. |
| API key | The site's key. Required. |
| Key prefix | Added to the start of every record key. Leave it empty unless MoveData support asks you to set one. |
| Polling interval (minutes) | How often MoveData checks the site. Default 60; the minimum is 15. |
| Overlap (minutes) | Each check also re-reads this many minutes before the previous one, so a gift saved while a check runs is not missed. Default 5. Re-read gifts update the same Salesforce records; they do not create duplicates. |
| Page size | Records requested per call to Ezy Raise, 1 to 100. Default 100. You should not need to change it. |
| Notification Date Filter | Gifts created before this date are not sent. See below. |
| Process fundraiser pages | When on, fundraiser pages and teams are also sent to Salesforce when they change, not only when they receive a gift. Off by default. |
Notification Date Filter#
Use the Notification Date Filter when you are moving to MoveData from another Ezy Raise to Salesforce connection, such as Giving X. Set it to the day you switch over. Gifts created before that day (from midnight UTC) are skipped, so gifts your previous connection already created are not sent again. Leave it empty to send everything MoveData can see.
What arrives in Salesforce#
Every check sends each donation created or changed since the last check. Each donation arrives with:
- The gift: amount, currency, date, payment processor (Stripe, PayPal or cash), card brand for Stripe gifts, the gateway reference, the donor's message and Gift Aid.
- The campaign hierarchy: the campaign instance (for example, this year's event) as the top campaign, then the team when the gift was made to a team or to a fundraiser in a team, then the fundraiser page. An organisation team, or a parent team, sits above the team it contains. A general gift to the charity sits under the campaign instance only.
- The donor: name, email, phone, address and communication preferences, matched across gifts by their Ezy Raise donor record. Anonymous gifts are flagged as anonymous.
Fundraiser pages and teams arrive as campaigns whenever one of their gifts arrives. With Process fundraiser pages on, a page or team whose details change is also sent on its own, without waiting for a gift. The team leader becomes the team campaign's primary contact.
| Ezy Raise data | Nonprofit Success Pack (NPSP) | Nonprofit Cloud |
|---|---|---|
| Donor | Contact | Person Account |
| Campaign instance, team, fundraiser page | Campaign | Campaign |
| Donation | Opportunity | Gift Transaction |
Amounts and fee cover#
When a donor chooses to cover the fees, Ezy Raise charges the gift plus the fee.
MoveData sends the total charged as the donation amount, because that is what reaches your bank.
The fee is sent separately with a flag that the donor covered it, and the gift without the fee is available as the giftAmount custom value if your mapping needs it.
Refunds and other statuses#
Ezy Raise has not yet shown us what a refunded or failed gift looks like. Until it does, MoveData only sends gifts that Ezy Raise marks as processed. A gift in any other state is skipped rather than sent as a success.
Cash gifts#
A cash gift recorded on your Ezy Raise site is sent to Salesforce as an offline donation. By default, MoveData does not create anything in Salesforce for offline donations, from Ezy Raise or any other platform. To bring cash gifts in, open the integration, set Ignore Offline Donations to Create Offline Donations and click Save.
Campaign status#
Every campaign MoveData creates from Ezy Raise is marked active, with the status In Progress. A fundraiser page that Ezy Raise has suspended is sent as archived, so its campaign becomes inactive.
Gift Aid#
Ezy Raise tells MoveData whether the donor made a Gift Aid declaration, but not the Gift Aid amount or claim status.
The declaration is sent as the giftaidEligible custom value.
Donation custom fields
| Field | Description |
|---|---|
ezyraiseReference |
Ezy Raise's own reference for the gift |
giftAmount |
The amount less any fee the donor covered |
giftaidEligible |
Whether the donor made a Gift Aid declaration |
toSelf |
The fundraiser gave to their own page |
corporate, corporateName |
The gift was made on behalf of a company, and its name |
donorAlias |
The name the donor chose to show on the page |
paymentType |
online or cash |
campaignInstanceStartDate |
The start date of the campaign instance the gift belongs to |
What MoveData cannot see#
Ezy Raise only lets MoveData see the current campaign instance of a site. A campaign that runs every year has one instance per year, and the site's API only answers for the one that is running now.
That has two consequences:
- No history before the current instance. MoveData can bring in gifts from the start of the current instance, but nothing from earlier years. If you need earlier gifts in Salesforce, see Data imports.
- Changes after rollover do not arrive. Once a new instance starts, a later change to a gift from the old instance (a refund, an edit, a Gift Aid change) is invisible to MoveData and is not sent.
This is a limit of the Ezy Raise API, not a MoveData setting.
MoveData starts from the time your integration is switched on. To bring in gifts made earlier in the current instance, contact support@movedata.io and we can re-read the site from the start of the instance.
Troubleshooting#
API key not accepted
When you save, MoveData checks the key with Ezy Raise. If the page says the API key was not accepted by your site:
- Check the key was copied in full, with no spaces before or after it.
- Check the key belongs to this campaign site. Each site has its own key, and a key for another site is refused.
- Ask your Ezy Raise account manager whether the key is still active.
If a key stops working after setup, the polling attempts fail with the same message.
The campaign site could not be checked
This points at the Campaign site URL:
- Check it starts
https://and has nothing after the domain. - Check it is the address of the Ezy Raise campaign site itself, the one donors visit.
Nothing arrives
If polling attempts succeed but no donations appear:
- Check the Campaign site URL is the site you expect. With several sites, it is easy to swap two.
- Check whether the campaign instance has rolled over. A site that has just started a new year's instance has no gifts in it yet, and MoveData cannot see the previous one.
- Check the Notification Date Filter. Gifts created before that date are skipped.
- Check the Executions tab in MoveData for errors from the polling attempt.
For more help reading error messages, see Reading and Understanding Error Messages.
Other resources#
- Ezy Raise API documentation: Ezy Raise's own description of the API this integration reads
- MoveData Support: for setup help and technical support