Skip to content
Create account
or
Sign in
The Stripe Docs logo
/
Ask AI
Create account
Sign in
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Developer tools
Get started
Payments
Finance automation
Get started
Payments
Finance automation
Platforms and marketplaces
Money management
Overview
Versioning
Changelog
Upgrade your API version
Upgrade your SDK version
Developer tools
SDKs
API
Testing
Workbench
Event Destinations
Workflows
Stripe CLI
Stripe Shell
Developers Dashboard
Agent toolkit
Stripe health alertsBuilding with LLMsStripe for Visual Studio CodeFile uploads
Security
Security
Extend Stripe
Stripe Apps
Stripe Connectors
    Overview
    Integrate a connector
    Commercetools
    Adobe Commerce
    Mirakl
    NetSuite
      Accountant hub
      Developers hub
      Prepare for onboarding
      Deposit automation
      Invoice automation
      Invoice payment page
      Customer payment page
      Custom payment application
      Multiple subsidiaries
      Multiple currencies
      Troubleshooting
      Invoice payment link
    Oracle Opera
    Cegid
    PrestaShop
    Salesforce
    SAP
    Shopware 6
    Stripe Tax for WooCommerce
    Stripe Tax for BigCommerce
    Partner connectors
    Build your own connector
Partners
Partner ecosystem
Partner certification
HomeDeveloper toolsStripe ConnectorsNetSuite

Multiple currencies with Stripe and NetSuite

Learn how the Stripe Connector for NetSuite reconciles payments in multiple currencies.

Copy page

The Stripe Connector for NetSuite supports payments in multiple currencies, and can automatically reconcile payments that require currency conversion.

You have two options to use Stripe with multiple currencies:

  • Use a single Stripe account to accept payments in multiple currencies, and allow Stripe to convert the payments to the currency of your settlement bank.

  • Use multiple Stripe accounts attached to various subsidiaries of your companies. In this case, you connect a settlement account to these Stripe accounts, one for each currency you support. Stripe creates a bank deposit for each settlement currency in each Stripe account to avoid currency conversion fees.

Customers

Enable this feature

To add currencies to your customers, ask your implementation partner to enable the Update customer currencies feature in your Stripe app settings. Consult with your implementation partner to understand all accounting and technical implications. Improper configuration can cause syncing issues with downstream processes.

NetSuite requires that you add supported currencies to a NetSuite customer. If a customer attempts payment with a currency that isn’t specified for that customer, it results in a failed sync.

To prevent a failed sync, the connector can do the following:

  • Add all available currencies to the NetSuite customers created by the connector.
  • Add all available currencies to the NetSuite customers used by the connector.

Add currencies to customers created by the connector

You can set up the connector to add all available currencies in NetSuite to customers created by the connector. Set this up if you use Stripe Billing or Invoicing, configured the connector to create customers, and your customers make payments in multiple currencies.

Add currencies to customers used by the connector

You can set up the connector to add all available currencies in NetSuite to customers that weren’t created by the connector but that the connector uses. Set this up if you haven’t added a currency to a NetSuite customer, but you need to process a payment for that customer.

For example, your business creates a customer and adds only USD as a supported currency. That customer attempts to make a payment in EUR, which results in NetSuite returning an error indicating that EUR isn’t available for that customer. The connector detects this and automatically adds all available currencies to the NetSuite customer.

Charges and refunds

The connector chooses the currency for a NetSuite payment or refund to match the currency of the Stripe payment. If the currencies aren’t the same, the deposit displays the amount of the converted currency.

For example, your customer sees a payment amount of 2,460.22 EUR. This amount is the NetSuite payment or refund. Your payout amount is 2,902.03 USD, less processing and currency conversion fees. This amount is the converted currency amount specified in the bank deposit in NetSuite.

If the currency of the Stripe payment doesn’t exist in the NetSuite account, the connector won’t sync the payment until you create the currency in NetSuite. Stripe doesn’t create currencies in NetSuite; you must make sure the appropriate currencies exist in your NetSuite account.

Transaction exchange rate

When creating a payment or refund, Stripe provides the exchange rate used on the transaction and for settlement. Instead of using the exchange rate generated by NetSuite, the connector uses the exchange rate from Stripe. This helps to eliminate the foreign exchange gain or loss that typically posts to your general ledger when transactions reconcile to a bank deposit.

Refunds and disputes create both a Credit Memo and Customer Refund in NetSuite. Both NetSuite records use the exchange rate from Stripe.

Invoices

If you use invoice automation, the connector creates invoices each billing period. Stripe doesn’t generate an exchange rate for these invoices, so the connector uses the exchange rate generated by NetSuite.

Exchange rate and subsidiary currencies

The exchange rate in NetSuite is relative to the currency of the subsidiary. For example, you have a NetSuite transaction in USD and the subsidiary currency is EUR. The exchange rate for the transaction is USD to EUR.

To prevent issues when there’s a mismatch between the currencies for transactions, settlements, and subsidiaries, you can set the subsidiary currency to the settlement currency of the integrated Stripe account.

Because NetSuite only supports an exchange rate that’s the subsidiary currency, it doesn’t use the Stripe exchange rate.

Payouts

When Stripe payouts sync to NetSuite, the connector creates a deposit. The connector chooses a bank account for the NetSuite deposit based on the currency of the payout.

If your NetSuite account has multiple bank accounts for a currency, you can set the default account for the currency. To do so, navigate to Settings > Account mapping > Bank deposit accounts in the connector app.

For example, Stripe deposits 75 EUR as 100 USD. In Netsuite, you see the following records:

  • NetSuite Customer Payment with a payment amount of 75 and EUR currency
  • NetSuite Deposit associated with a EUR bank account, a Customer Payment amount of 100, and the EUR amount set to 75

If the currency differs from the bank account currency, you can enter the deposit amount for the payment or refund. The connector automatically enters the converted currency amount from Stripe.

Multiple settlement accounts

By default, Stripe converts all multi-currency charges to a base currency on your account. If you want settlements in additional currencies, you can add bank accounts in various supported currencies. This allows you to manage foreign exchange risk and currency conversion on your own.

Charges in previously unused currencies

You can charge customers in a previously unused currency by adding a bank account with that currency and setting up the account to post automated bank deposits. To do so, navigate to Settings > Account mapping > Bank deposit accounts in the connector app.

Currency conversion fees

Enable this feature

To separate currency conversion fees, ask your implementation partner to enable the Payout fee details feature in your Stripe app settings. Consult with your implementation partner to understand all accounting and technical implications.

Stripe bundles currency conversion fees with processing fees, by default. If needed, you can configure the connector to separate the currency conversion fees onto its own line item on the deposit. You can then post this line item to a unique account, so you can track currency conversion fees separately from processing fees.

This feature modifies the fee_details API response for your account’s Balance Transaction. Make sure this change won’t affect any of your other integrations.

Was this page helpful?
YesNo
Need help? Contact Support.
Join our early access program.
Check out our changelog.
Questions? Contact Sales.
LLM? Read llms.txt.
Powered by Markdoc