Multiple Currencies

Payments in multiple currencies is fully supported. The integration will automatically reconcile payments in a foreign currency to the correct deposit with the converted destination currency amount.


Charges & Refunds

The currency on a CustomerPayment, CreditMemo, and CustomerRefund is chosen to match the Stripe resource's currency. If the charge currency is not the same as the currency of the corresponding transfer (deposit), the amount of the converted currency will be indicated on the deposit.

If the currency of the Stripe resource does not exist in the NetSuite account, the resource will not be translated until that currency is created in NetSuite.

Charges in Previously Unused Currencies

When you first start creating charges in a currency that has not previously used on your account, and charges in that currency are going to deposited into a unique bank for that currency, it's important that you let us know which bank in NetSuite you'd like us to use for the new currency type.

Customers

Active NetSuite currencies are added to Stripe's corresponding NetSuite customer.

Deposits

A NetSuite Bank Account (which is represented as an account with type 'Bank') is associated with a currency. Unlike CustomerPayments and CustomerRefunds, a NetSuite Deposit does not have a direct currency setting. The currency for a NetSuite deposit is determined based on which bank account the deposit posts to.

When translating a Stripe transfer, the bank account for a deposit is chosen based on the currency of the transfer. If your NetSuite account has multiple bank accounts for a given currency in NetSuite, you can customize which bank account is chosen for a specific currency.

For example, if Stripe deposited a charge of 100 NOK as 75 EUR:

  • A NetSuite CustomerPayment with currency NOK and a payment amount of 100.
  • A NetSuite Deposit associated with a EUR bank account and a Deposits > Payment item containing the CustomerPayment payment amount set to 75.

In the deposit below you'll notice that you can input the deposit amount for the payment or refund if the currency is different from the bank account's currency. SuiteSync inputs the converted currency amount specified by Stripe into that field:

Multiple Currency Deposits

Currency Conversion Fees

By default, Stripe's FX fees are bundled into the charge fees on a deposit.

If needed, the FX fees can be broken out into a separate line item on the deposit. Enabling this feature will modify your account's BalanceTransaction#fee_details API response. This difference in API response may effect other integrations you have in place. Make sure that this change will not effect other integrations you have in place before enabling this feature on your account.

Normally a BalanceTransaction API response for a charge in a currency different from the destination bank account looks like:

{
  "id": "txn_16wKfbFOuE2ChQDi2drfs163",
  "object": "balance_transaction",
  "amount": 799,
  "currency": "gbp",
  "fee": 69,
  "fee_details": [
    {
      "amount": 69,
      "application": null,
      "currency": "gbp",
      "description": "Stripe processing fees",
      "type": "stripe_fee"
    },
  ],
  "net": 730,
  "source": "ch_16wKfbFOuE2ChQDi8APUU7fs",
  "status": "pending",
  "type": "charge"
}

With the FX fee breakout enabled, the fee_details will look like:

{
  "fee": 69,
  "fee_details": [
    {
      "amount": 53,
      "application": null,
      "currency": "gbp",
      "description": "Stripe processing fees",
      "type": "stripe_fee"
    },
    {
      "amount": 16,
      "application": null,
      "currency": "gbp",
      "description": "Stripe currency conversion fee",
      "type": "stripe_fee"
    }
  ]
}

Currency Conversion Rate

The currency conversion rate is implicitly specified in the 'deposit > payments > amount' sublist column: this is where the amount of the destination currency to be deposited in your bank account is defined, which implicitly specifies the currency conversion rate for a given payment. Unfortunately, NetSuite doesn't let you use this data easily for reporting or other accounting operations.

If you need easy access to this data, you'll have to build a custom process to determine the exact exchange rate based on the NetSuite payment data. Alternatively, you can use Stripe the Charge (or refund) and related balance transaction to calculate the currency conversion amount.