Set up multicurrency sync for Salesforce

Use this guide to control how donation amounts and currencies sync from Fundraise Up to these integrations:

  • Salesforce.
  • Salesforce Nonprofit Success Pack (NPSP).
  • Salesforce Nonprofit Cloud (NPC).

You can keep standard records in your Fundraise Up account default currency, use the supporter's original donation currency where supported, or retain original values in separate custom fields.

Before you begin

Make sure that:

  • If you plan to store original donation currencies in standard Salesforce currency fields, multiple currencies are enabled in Salesforce.
  • For that strategy, go to Setup > Company Information > Manage Currencies, and activate every currency that you expect to sync. This is not required when original values are stored only in Number and text custom fields.
  • You have the Organization Administrator role in Fundraise Up.
  • Your Salesforce integration is connected and export mode is activated.
  • You have decided whether Salesforce should store values in your Fundraise Up account default currency, in the original donation currency, or in custom fields alongside the default values.

Enabling multiple currencies in Salesforce is permanent: you cannot turn it off afterward. Fundraise Up supports more than 135 donation currencies, and you cannot restrict the available currency list in Checkout. Plan how you will handle currencies that are not active in Salesforce.

Currency strategies

Choose the strategy that matches how your organization reports donation revenue before editing your mapping rules.

  • Account default currency: Fundraise Up converts the amount before syncing. Use this when Salesforce should store Fundraise Up's converted values.
  • Original donation currency: Salesforce stores the original amount and currency. Salesforce then uses exchange rates maintained by your organization for reporting. Without Advanced Currency Management, one exchange rate applies across historical records, so Salesforce rollups can differ from Fundraise Up's converted amounts and payouts.
  • Default values plus original values in custom fields: Keep standard amount and currency fields in the account default currency, and map the original values to separate custom fields. This preserves the original values without changing the record currency or requiring each original currency to be active.

Fundraise Up account default currency

Keep the default mappings when your accounting process uses 1 reporting currency in Salesforce.

For donations made through a subaccount, the account default currency is the subaccount's currency. In a parent account, the default mapping label can display the parent account currency instead.

When multiple currencies are enabled in Salesforce, the default mappings use this order:

  1. If the Fundraise Up account default currency is active in Salesforce, Fundraise Up sends the converted amount in that default currency.
  2. If the default currency is not active in Salesforce but the original donation currency is active, Fundraise Up sends the original amount and original currency.
  3. If neither the Fundraise Up account default currency nor the original donation currency is active, behavior depends on the integration:
    • Salesforce NPSP and Salesforce Nonprofit Cloud: The donation is not synced. Its sync fails with the error None of the currencies (GBP, KRW) are active in your Salesforce organization…, while other donations continue syncing. Fundraise Up does not retry the failed donation automatically. Activate one of the currencies, then manually resync the donation.
    • Salesforce: Fundraise Up sends the converted amount in the account default currency without CurrencyIsoCode. Salesforce assigns the record currency, so the amount may be associated with a different currency.

If multiple currencies are not enabled in Salesforce, default mappings send converted donation amounts in the Fundraise Up account default currency, but Salesforce assigns its own organization currency. Those currencies must match. Custom original-amount mappings are not protected in a single-currency Salesforce organization, including Salesforce Nonprofit Cloud: an original amount of 90,000 KRW can be stored as 90,000 GBP. Do not use original-amount mappings in this setup.

Original donation currency

Add custom mappings when Salesforce must store the amount and currency selected by the supporter. Activate every supported donation currency in Salesforce before using this strategy.

The Salesforce destination objects depend on your integration:

IntegrationOne-time donations and installmentsRecurring plans
SalesforceOpportunityRecurring Plan
Salesforce NPSPOpportunityRecurring Donation
Salesforce Nonprofit CloudGift TransactionGift Commitment

Original values in custom fields

Keep the default mappings for standard Salesforce amount and currency fields. Add separate mappings for the original donation amount and original currency to custom fields supported by your integration.

Use a Number field for the original amount and a text field for the currency code. Do not use a Currency field for the original amount: Salesforce displays that field in the record's currency, which can mislabel the original value. Original currencies do not need to be active when stored as numeric and text values in custom fields.

Configure one-time donation mappings

To sync one-time donations and recurring installments in their original amount and currency:

  1. In Fundraise Up, go to Settings > Integrations.
  2. Open your Salesforce integration.
  3. Open Export (sending data to CRM), then open the Mapping rules tab.
  4. Click Add rule.
  5. Add the amount and currency mappings for your integration.
  6. Click Save changes.

Use these mapping pairs:

IntegrationAmount mappingCurrency mapping
SalesforceDonation > Amount → Opportunity > AmountDonation > Currency → Opportunity > Currency
Salesforce NPSPDonation > Amount → Opportunity > AmountDonation > Currency → Opportunity > Currency
Salesforce Nonprofit CloudDonation > Amount → Gift Transaction > Original AmountDonation > Currency → Gift Transaction > Currency ISO Code

Add both mappings as a pair. Do not map only the amount or only the currency.

Activate the original donation currencies in Salesforce before using original-currency mappings. In Salesforce Nonprofit Cloud, an inactive mapped currency causes the custom amount-and-currency pair to be discarded, and Fundraise Up sends the converted amount in the account default currency. The same fallback for Salesforce and Salesforce NPSP Opportunities and new Recurring Donations is included in the October 5, 2026 deployment; confirm that deployment is complete before relying on it. A warning is recorded when the inactive-currency rule is discarded. Mapping only an original amount can still produce a currency mismatch in Salesforce and Salesforce NPSP because the amount comes from the custom rule while the record currency follows the default logic.
Salesforce shows only objects and fields that are available to the connected user and supported by the integration. For a writable donation currency field, confirm that multiple currencies are enabled, the currency is active, and the connected Salesforce user can access the field. Salesforce Recurring Plan is not a mapping destination, and Salesforce Nonprofit Cloud recurring amount and currency mappings are read-only by design. If another expected field remains unavailable, keep the default mappings and contact Fundraise Up Support.

Configure recurring plan mappings

Recurring currency behavior differs by integration. Do not apply the same mapping instructions to all three integrations.

Salesforce

The Recurring Plan object is not available as a destination in mapping rules. Fundraise Up automatically stores the original amount in Amount, the original currency code as text in Currency, and the converted amount in Amount in <account currency>. These amount fields are numeric; Fundraise Up does not write the plan's CurrencyIsoCode. No custom Recurring Plan amount-and-currency mapping is needed or available.

Salesforce NPSP

For new Recurring Donations, add these mappings as a pair when you need the original amount and currency:

  • Map Recurring > Amount to the amount field on Recurring Donation.
  • Map Recurring > Currency to the currency ISO code field on Recurring Donation.

Also confirm that the related Opportunity amount and currency mappings use the same strategy. The inactive-currency fallback described above applies after the October 5, 2026 deployment.

The currency of an existing Recurring Donation is fixed. On resync, custom recurring amount and currency mappings are discarded for that existing plan, and new installments use the plan's stored currency rather than a newly selected mapping strategy.

Salesforce Nonprofit Cloud

Gift Commitment > Next Transaction Amount and the recurring currency mapping are default, read-only mappings. They cannot be overridden in the Mapping rules tab.

When creating a Gift Commitment and its schedule, Fundraise Up uses the original donation currency if it is active in Salesforce; otherwise, it uses the account default currency. Next Transaction Amount is populated in that same currency. Installments use the Gift Commitment's currency.

For existing Gift Commitments, the currency is fixed. A resync does not change it, and currency is not sent when the plan already has schedule records.

Refunds and custom amount mappings

Donation > Amount is always the original donation amount; it does not subtract refunds.

  • Salesforce and Salesforce NPSP — Sync default: a custom original-amount mapping keeps the full original amount in the original currency for a refunded donation. Without that mapping, the default amount is net payout (payout minus refund) in the account default currency.
  • Sync only status: refund status behavior is unchanged.
  • Sync as zero: Salesforce sets the amount to zero. Salesforce NPSP currently has a known issue where a custom amount rule overrides zero. Contact Fundraise Up Support before relying on this combination.
  • Salesforce Nonprofit Cloud: a refund creates a separate Gift Refund. The paid Gift Transaction amount does not change, and the custom amount rule does not alter that refund behavior.

Test the configuration

Test your mappings before enabling automatic sync for production donations:

  1. In the integration General settings, select Sync test data.
  2. Create a test one-time donation in a non-default currency that is active in Salesforce.
  3. Create a test recurring plan in the same currency.
  4. Run a manual sync.
  5. In Salesforce, confirm that the amount matches the currency on the Opportunity or Gift Transaction.
  6. For Salesforce NPSP and Salesforce Nonprofit Cloud, confirm that the recurring record and its installments use the plan's stored currency. For Salesforce, verify the Recurring Plan's original numeric amount, text currency code, and converted amount separately from the Opportunity's amount and record currency.
  7. Repeat the test with the currencies your organization expects to receive, including an inactive-currency scenario to verify fallback behavior.
  8. Test a refunded donation under your configured refund sync mode.
  9. Review the sync log for errors and warnings.

Enable automatic sync after the test records match your expected amounts and currencies.

Frequently asked questions

These answers can help you prevent mismatched currency values and failed syncs.

Which currencies must I activate in Salesforce?

Activate every currency that your organization expects to store in standard Salesforce currency fields before syncing original-currency values. Original currency codes stored only in text custom fields do not need to be active.

Why must I map the amount and currency together?

The numeric amount has meaning only when it is paired with the correct currency. Add or remove writable custom amount and currency mappings together for donations and new Salesforce NPSP Recurring Donations. Salesforce Recurring Plan is not available for custom mapping; Salesforce Nonprofit Cloud recurring amount and currency mappings are read-only.

Do not map payout currency or another donation-level currency unless the related amount mapping uses that same currency.

What should I do if a currency field is not available for mapping?

For donation mappings and Salesforce NPSP Recurring Donations, keep the default amount and currency mappings together. Confirm that multiple currencies are enabled, the currency is active, and the connected Salesforce user can access the field.

Salesforce Recurring Plan is not available for custom mapping. Salesforce Nonprofit Cloud Gift Commitment amount and currency mappings are read-only by design.

If another expected field remains unavailable, contact Fundraise Up Support.

How should I test mapping changes?

Test new mappings with test records before syncing historical data. Confirm the amount and currency on the resulting Salesforce records, review the sync log, and check whether Salesforce validation rules or automations block updates.

In Salesforce and Salesforce NPSP, resyncing one-time donations recalculates values using the current mappings. A bulk resync can overwrite amounts and currencies on historical records. In Salesforce Nonprofit Cloud, resync does not change the amount and currency of paid Gift Transactions.

Review a small sample with your Salesforce administrator before running a historical resync.

Why does an original amount appear in the default currency?

This can happen in Salesforce and Salesforce NPSP when only the original amount is mapped: the amount comes from the custom rule, while the currency follows the default logic. It can also happen in a single-currency Salesforce organization, including Salesforce Nonprofit Cloud, where a custom original amount is assigned the organization's currency.

With paired original-amount and original-currency mappings, an inactive currency causes the pair to be discarded in Salesforce Nonprofit Cloud. This protection is also included for Salesforce and Salesforce NPSP in the October 5, 2026 deployment; confirm deployment completion before relying on it.

Correct the configuration before resyncing:

  • In a multicurrency organization, activate the original currency and configure both original-amount and original-currency mappings together.
  • Alternatively, remove both custom mappings and use the default converted values. Ensure the Salesforce organization currency matches the Fundraise Up account default currency if Salesforce is single-currency.
  • If you need original values for reference only, store them in separate Number and text custom fields without changing the standard amount or record currency.

Test the correction on a small sample. A resync does not change the amount or currency of paid Salesforce Nonprofit Cloud Gift Transactions.

Why did a manual Salesforce correction get overwritten?

For Salesforce and Salesforce NPSP donations, a later sync reapplies the active Fundraise Up mappings and can overwrite manual corrections. Correct the integration mappings first, then test a resync on a small sample.

This does not mean every field on every object is rewritten: paid Salesforce Nonprofit Cloud Gift Transaction amounts and currencies, and existing NPSP/NPC recurring currencies, do not change on resync.

Can a resync change the currency of an existing recurring record?

In Salesforce NPSP and Salesforce Nonprofit Cloud, the currency of an existing recurring record is fixed. Custom recurring amount and currency mappings are discarded for existing plans, and new installments use the plan's stored currency. Changing mappings or resyncing does not change that currency.

Changing the currency requires recreating the relevant records. Contact Fundraise Up Support before deleting or recreating records, or running a large historical resync.

For Salesforce, Recurring Plan amounts and its text currency code are populated automatically; the plan is not a custom-mapping destination.

Related articles
This guide provides the minimum permissions required to connect and use Salesforce and Salesforce NPSP integration. Salesforce Accessing profile settings In Salesforce, go to Setup and use the Quick Find
This guide lists the Salesforce permissions and account settings required to connect, reconnect, and use the Salesforce Nonprofit Cloud and Salesforce Education Cloud integrations with Fundraise Up. Before

Still need help?

Need help with something not covered in Support Center? Connect with a support engineer for more assistance.
Email us