Multi-Currency Purchasing
Buy from suppliers in any currency with automatic conversion to your warehouse currency
MPH WMS supports purchasing in multiple currencies. When you receive goods, costs are automatically converted to your warehouse's currency so that inventory valuation stays consistent.
How it works
Supplier invoice (EUR) → Goods receipt → Converted to warehouse currency (SEK) → Stock valuation- Create a purchase order in the supplier's currency (e.g., EUR, USD, GBP)
- Receive goods - MPH WMS converts the unit cost to the warehouse currency using the latest exchange rate
- Stock levels are always stored in the warehouse's currency
- The original cost and currency are preserved on the goods receipt for audit
Currency at each stage
| Stage | Currency used | Example |
|---|---|---|
| Purchase order | PO currency (from supplier) | 10.00 EUR |
| Goods receipt line | Warehouse currency (converted) | 115.50 SEK |
| Stock level / batch | Warehouse currency | 115.50 SEK |
| Stock movement | Warehouse currency | 115.50 SEK |
| Inventory valuation | Warehouse currency | 115.50 SEK |
Setting the PO currency
When creating a purchase order:
- The currency defaults to the supplier's default currency (set on the supplier record)
- Changing the supplier on a draft order switches the currency to the new supplier's
- You can override the currency per order if needed
- All line costs (unit cost, tax, total) are entered in the PO currency
Switching the currency does not convert the line costs - the figures you entered stay as they are and are simply read in the new currency. Check your unit costs after changing supplier on an order that already has lines.
Supplier default currency
Each supplier has a default currency:
- Go to Purchasing → Suppliers
- Click on a supplier
- Set the Currency field (e.g., EUR for a European supplier)
- This will be pre-filled on new purchase orders for that supplier
Currency conversion on receipt
When you receive goods and the PO currency differs from the warehouse currency:
- MPH WMS fetches the latest exchange rate
- Costs are converted using a USD cross-rate:
Converted cost = (PO unit cost ÷ PO currency rate) × Warehouse currency rate - The converted cost is used for stock levels and movements
If no exchange rate is available for the pair, receiving is rejected with an error naming the missing pair. Booking the supplier's figure unconverted would label a foreign-currency amount as warehouse currency and silently corrupt your inventory valuation, so the receipt is refused instead. Add the rate under Settings → Exchange Rates and receive again.
Audit trail
Every goods receipt line records the full conversion details:
| Field | Description |
|---|---|
| Unit cost | Converted cost in warehouse currency |
| Original unit cost | Original cost in PO currency |
| Original currency | The PO currency code (e.g., EUR) |
| Exchange rate | The rate used for conversion |
| Exchange rate base | The base currency (e.g., SEK) |
This ensures you can always trace back to the original supplier price.
Exchange rates
Exchange rates are managed in Settings → Exchange Rates.
Automatic updates
MPH WMS can fetch rates automatically from Open Exchange Rates:
- Go to Settings → Exchange Rates
- Click Refresh Rates
- Latest rates are fetched and stored
Rates older than 7 days are flagged as stale.
Manual entry
You can also enter rates manually:
- Go to Settings → Exchange Rates
- Click Add Rate
- Select the from and to currencies
- Enter the rate
- Click Save
Manual rates are marked with source manual to distinguish them from API-fetched rates.
How rates work
All exchange rates use USD as the intermediary:
- Each currency has a rate relative to USD
- To convert EUR → SEK:
(amount ÷ EUR/USD rate) × SEK/USD rate - This means you only need one rate per currency (vs. USD), not a rate for every possible pair
Example
Your warehouse currency is SEK. You receive a PO in EUR.
| Rate | Value |
|---|---|
| EUR/USD | 0.92 |
| SEK/USD | 10.85 |
A PO line with unit cost 10.00 EUR converts to:
(10.00 ÷ 0.92) × 10.85 = 117.93 SEKThe stock level is created at 117.93 SEK per unit.
Landed cost and currencies
Landed cost components are always entered in the PO currency - the sheet inherits it from the order, and changing the order's currency moves the sheet with it. When a landed cost sheet is finalized:
- The cost is allocated across the lines in the PO currency, giving a landed unit cost per line
- That landed unit cost is then converted once, using the exchange rate the goods receipt captured - not a fresh rate - so the stock batch cost cannot drift away from what was received
- The converted figure overwrites the goods receipt line, stock movement, and stock batch cost
The purchase order page shows the landed unit cost in the PO currency throughout; hover a receipt line's cost to see what was actually booked into stock in the warehouse currency.
Best practices
- Set supplier currencies when adding suppliers - saves time on every PO
- Keep exchange rates fresh - stale rates lead to inaccurate valuations. Use automatic updates or refresh manually before receiving goods
- Review the audit trail if valuations look unexpected - check the original cost and exchange rate on the goods receipt
- Use one base currency per warehouse - avoid mixing currencies within a single warehouse's stock