Currency Conversion, FX Risk, and Settlement
Understand how exchange rates, conversion fees, and settlement currencies affect revenue when selling globally with Stripe.
Currency Conversion, FX Risk, and Settlement is a free Stripe Payments & SaaS Billing Systems lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Stripe Payments & SaaS Billing Systems learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
Presentment vs Settlement Currency
The presentment currency is what the customer sees and pays. The settlement currency is what Stripe pays into your bank.
When they differ, a conversion happens.
Where FX Risk Comes From
Exchange rates move constantly. Revenue booked in one currency may be worth less by the time it settles. This is foreign exchange (FX) risk.
Applying a Conversion Rate
Converting an amount multiplies by the current rate. Always work in minor units (cents) to avoid float drift.
function convert(amountMinor, rate) {
return Math.round(amountMinor * rate);
}
console.log(convert(10000, 0.92)); // 10000 USD cents to EUR centsAccounting for Conversion Fees
Stripe adds a small percentage fee on currency conversion. Subtract it to see net settled revenue.
function netAfterFx(amountMinor, rate, feePct) {
const converted = amountMinor * rate;
return Math.round(converted * (1 - feePct));
}
console.log(netAfterFx(10000, 0.92, 0.01));Choosing a Settlement Strategy
Options to reduce conversions:
- Hold balances in multiple currencies
- Open local bank accounts per region
- Settle each currency separately
Pricing Around Rates
Rather than auto-converting a base price, set locally tuned prices so customers see clean amounts (e.g. EUR 9.99, not EUR 9.17).
function tidyPrice(converted) {
return Math.ceil(converted) - 0.01;
}
console.log(tidyPrice(9.17));Locking Rates for Quotes
For invoices or quotes, snapshot the rate at creation time so the amount does not change before the customer pays.
Reconciling Multi-Currency Payouts
Each payout may bundle several currencies. Match Stripe's reported settled amount against your expected net to catch rate discrepancies.
function variance(expected, actual) {
return Math.abs(expected - actual);
}
console.log(variance(9100, 9087));Hedging Basics
Large global sellers may hedge FX exposure with forward contracts to lock future rates. For most SaaS, holding multi-currency balances is enough.
Reporting in a Base Currency
For consolidated financials, normalize everything to one reporting currency using a consistent rate source and date.
Putting It Together
Manage global revenue by separating presentment from settlement, accounting for fees, locking quote rates, and reconciling payouts carefully.
Quick Check
Test your understanding of multi-currency settlement.
Recap
You learned how currency conversion, FX risk, conversion fees, locked quote rates, and multi-currency settlement shape global revenue, and how to reconcile and report it cleanly.
Frequently asked questions
Is the “Currency Conversion, FX Risk, and Settlement” lesson free?
Yes — the full text of “Currency Conversion, FX Risk, and Settlement” is free to read here on the web, and the Stripe Payments & SaaS Billing Systems course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Stripe Payments & SaaS Billing Systems course, upgrade to CoddyKit PRO.
What will I learn in “Currency Conversion, FX Risk, and Settlement”?
Understand how exchange rates, conversion fees, and settlement currencies affect revenue when selling globally with Stripe. You practise Stripe Payments & SaaS Billing Systems with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Stripe Payments & SaaS Billing Systems?
No prior experience is required. Stripe Payments & SaaS Billing Systems on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Currency Conversion, FX Risk, and Settlement” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Stripe Payments & SaaS Billing Systems lesson?
Yes. Every Stripe Payments & SaaS Billing Systems lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Supporting Multiple Currencies and Pricing
- Integrating International Payment Methods
- Global Compliance and Localized Regulations
- Currency Conversion, FX Risk, and Settlement