Fees, currency & minimum amounts
How spuke calculates fees, converts currencies and why there is a minimum charge.
Fees, currency & minimum amounts
spuke charges fees in a predictable way — no matter which currency your customer pays in. This page explains exactly how it works.
1. Fees are always denominated in EUR
Every fee in your plan (Free / Starter / Business / Plus) and every per-method fee shown on the pricing and compare pages is defined in EUR.
- The percentage part (e.g.
2.5%) applies to the transaction amount converted to EUR. - The fixed part (e.g.
€0.25) is an EUR amount. - The final fee is charged in the transaction currency, converted at the live FX rate at the moment the payment is captured.
Example: a customer pays CHF 40.00 on the Business plan (3.9% + €0.30).
- CHF 40.00 → EUR ≈ 41.20 (live FX)
- Fee in EUR = 41.20 × 3.9% + 0.30 = €1.91
- Fee back to CHF ≈ CHF 1.85 — this is what appears on the charge.
You always see both values in your dashboard (wallet, transactions, ledger).
2. Why the fee ledger sometimes shows a "top-up"
At checkout creation we don't yet know which card region the customer will use, so we charge the base rate. Once the payment is captured we know the real card region (EU / UK / intl) and compare the real fee to what was already deducted:
- Correct: no ledger entry.
- Under-collected: a
fee_topupentry is created and added to the next transaction. - Over-collected: a refund entry balances it out.
This guarantees the merchant always pays exactly the plan's rate — no more, no less.
3. Minimum charge amount: 2.50 EUR
You can only create invoices, products and payment links with a total of at least 2.50 EUR (or the equivalent in the transaction currency).
Why? PSP fees + spuke fees always include a fixed component (e.g. €0.25 – €0.95 per transaction). On a €1.00 charge those fixed costs would exceed the amount and result in a loss — for you and for us.
The 2.50 minimum applies to:
- Invoice totals (line items + tax)
- Product prices (one-time and recurring)
- API
checkout_sessions— smaller amounts are rejected withamount_too_small
For subscriptions with trial periods the minimum applies to each billing cycle amount, not to the trial.
4. Payout currency & FX conversion
Payouts are made in your merchant currency (usually EUR or CHF). If a customer pays in another currency:
- The gross amount is converted to your payout currency at the daily FX rate.
- A +2.00% currency-conversion surcharge is applied on top of the standard fee.
- The full breakdown is visible on the transaction detail sheet.
5. Full fee summary (per transaction)
| Component | When | Amount |
|---|---|---|
| Plan percentage | Every transaction | e.g. 2.5% (plan-dependent) |
| Plan fixed | Every transaction | e.g. €0.25 (plan-dependent) |
| International card surcharge | Card issued outside merchant country | +1.50% |
| FX surcharge | Charge currency ≠ payout currency | +2.00% |
| Chargeback | Per dispute case | €15.00 |
| Payout | Per bank payout | included on all paid plans |
All values are defined in EUR and converted per transaction. Surcharges apply on top of the plan rate and only when the trigger condition is met.
6. TL;DR
- Everything is priced in EUR.
- Fees are converted to the transaction currency at capture time.
- Minimum 2.50 EUR per invoice, product or checkout — otherwise fees can't be covered.
- The fee ledger self-corrects so your effective rate always matches your plan.