Breadwinner can handle any combination of currencies and multi-currency status.

It is designed to work with:

  • Situations where both NetSuite and Salesforce have one currency
  • Situations where both NetSuite and Salesforce have Multiple Currencies
  • Situations where one system is single currency and the other is multi-currency
  • Multiple NetSuite orgs with Multiple different Currencies in each
  • Situations where the currencies are not aligned and each system might have currencies the other does not

All of this will be handled transparently, with no action required by the user.

Data Flow from NetSuite to Salesforce

Breadwinner will identify all the currencies in NetSuite, and replicate those currencies back to Salesforce and store the NetSuite currencies in an object NetSuite Currencies.

Those currency records will contain the NetSuite currency name and the ISO value of that currency. The ISO value is vital as Salesforce uses the ISO value as well.

All records that Breadwinner replicates from NetSuite to Salesforce, which have a currency value, will have that currency displayed on the record in Salesforce. 

This is stored as regular data in Salesforce, in a text field, and is fully reportable.

The currency field is on almost all objects, including the Subsidiary record, and the Transaction Records (Sales Order, Estimate, Invoice, Credit Memo).

Additionally, the Company record will have a Primary Currency field, and a list of all currencies enabled for that Company.

Breadwinner will show a NetSuite Item's Price Level and Currencies (the grid below on the Item takes all the information from the Item Price, which is the record that associates an item to a Price Level and Currency for a given quantity).

Data Flow from Salesforce to NetSuite

Some aspects of record creation will need to be done in NetSuite as they are best handled there. For instance, Breadwinner cannot add currencies to NetSuite, nor can Breadwinner add additional Subsidiaries to NetSuite. This is by design, as this level of functionality is strictly the remit of the Finance Department and is also best handled in NetSuite.

For records that are normally created via Breadwinner, then we handle setting the currency transparently, with little-to-no effort from the user.

Creation of a NetSuite Company

When you create a NetSuite Company, Breadwinner checks if the NetSuite Company being created will be in a NetSuite Org with only one possible currency. If so, then that's the currency of the new Company.

If the NetSuite org has multiple currencies, then Breadwinner displays a Primary Currency picklist with values for all of the available NetSuite Org's Currencies. That currency picklist selection will default to:

  1. The SF Account's Currency if that currency is available in the NetSuite Org's Currencies. If not, then
  2. The Currency of the Primary Subsidiary.

Here is a screenshot of a NetSuite Customer creation, with the full list of currencies. It defaulted to the Salesforce Account currency, but we allow the option to override the default choice.

Creation of a NetSuite Transaction

(Transaction includes the Estimate, Sales Order, Invoice, and Credit Memo)

When you create a NetSuite Transaction, Breadwinner displays the Currency field read-only.

First, Breadwinner checks to see if a Currency was specified in the Custom URL? And, if not, what is the Currency of either the originating Record (if Salesforce Multi-Currency has been enabled) or the Currency of the Salesforce Org?

And then Breadwinner checks if that currency is available in the NetSuite Customer's Currencies? If so, that currency will be displayed Read-Only.

If not, Breadwinner will provide a warning message about currency mismatch, and will not allow record creation.