Currencies & FX
Bill in your currency. TurnStay handles foreign exchange automatically.
How cross-border payments work
Section titled “How cross-border payments work”If a French customer with a EUR card pays for a ZAR booking, TurnStay will:
- Display the equivalent EUR amount on the payment page.
- Charge the customer’s card in EUR.
- Settle to your account in ZAR.
You receive the full billing_amount regardless of the customer’s card currency. No currency conversion code is needed on your side.
Minor units (cents)
Section titled “Minor units (cents)”All amounts in the TurnStay API are in minor units — the smallest unit of the currency.
| You want to charge | billing_amount |
|---|---|
| R1,000.00 | 100000 |
| R500.50 | 50050 |
| €100.00 | 10000 |
| $49.99 | 4999 |
Formula: billing_amount = display_amount × 100
Billing vs processing currency
Section titled “Billing vs processing currency”| Field | Description |
|---|---|
billing_amount / billing_currency | The amount in your account’s currency. This is what you set when creating the Payment Intent. |
processing_amount / processing_currency | The amount in the customer’s card currency after FX conversion. Returned in webhooks and callbacks. |
You can alternatively set processing_amount and processing_currency instead of billing_amount — but never both.