Learn / Industry
Multi-currency raw materials — managing USD/EGP swings on import-heavy F&B
Egyptian F&B factories buy concentrate in USD and EUR, sell finished goods in EGP. Saudi factories import from Egypt, Turkey, Brazil — six currencies on a typical supplier book. The FX exposure is structural, not transactional. Here's how to manage it operationally.
If you run an F&B factory in Egypt or the GCC, your raw material costs are in currencies other than your books currency. Mango concentrate from Egypt or Brazil — priced in USD or EUR. Apple concentrate from Turkey — TRY. Specialty additives from Switzerland or Germany — CHF or EUR. Packaging from UAE — AED. Sometimes the local sugar supplier prices in USD because they import their raw sugar.
The exposure is structural. It doesn’t go away by ignoring it. The question is whether your operational systems capture and surface it — or whether you discover the impact at year-end when the auditor reconciles.
This article walks through how multi-currency raw material management actually works in practice.
The structural exposure
Take Oasis Fresh as the worked example. Annual revenue SAR 65M, roughly 40% of cost-of-goods is raw materials. Of those raw materials:
- Mango, orange, apple concentrates — imported from Egypt (Cairo Citrus), Turkey (Anatolian), Brazil (Tropical Pulp). Priced in USD, EUR, BRL. ~40% of raw material spend.
- Specialty additives (vitamin C, flavourings) — imported from Switzerland, Germany. ~10% of raw material spend.
- Packaging (PET preforms, caps, labels) — local Saudi and UAE. ~30% of raw material spend. SAR and AED.
- Sugar, water, citric acid — mostly local. ~20% of raw material spend.
Total FX-exposed raw material: roughly 50% of total raw material spend, or 20% of total cost-of-goods. On SAR 65M revenue with 60% gross margin, that’s roughly SAR 5.2M of annual spend in non-SAR currencies.
If the SAR/USD rate moves 3% in a year (it doesn’t, because the SAR is pegged to USD, but the same math applies for SAR/EUR or EGP/USD where the rates move significantly), that’s SAR 156K of margin impact — pure FX exposure, before any operational decisions.
For Egyptian factories, this is the major story. The EGP has devalued sharply against USD and EUR since 2022. A Nile Foods factory buying Turkish concentrate at TRY 100/kg has seen that translate to roughly 2x the EGP cost over three years. Without active management, margin compresses.
What “capture at receipt” means
The technical pattern is straightforward but easy to get wrong. Every supplier receipt does three things:
- Captures the foreign currency invoice amount. From the supplier — USD 4,500 for 500 kg of mango concentrate.
- Captures the FX rate on receipt date. From your treasury system or your bank — USD 1.00 = SAR 3.75 today.
- Computes the home currency landed cost. SAR 16,875 for the concentrate, plus SAR 1,500 freight (from a SAR-invoiced freight provider), plus SAR 300 customs duty, plus SAR 75 handling = SAR 18,750 landed cost for 500 kg = SAR 37.50/kg.
This SAR 37.50/kg becomes the cost basis for that lot. It doesn’t change later. When you issue 100 kg to a production run, you issue at SAR 37.50/kg. When you sell the finished good, COGS reflects that cost.
If you didn’t capture the FX rate at receipt and instead used “current” rates whenever you generated reports, your historical costs would shift retroactively every time you ran COGS. The books would never reconcile. The auditor would find issues.
What AION captures specifically
material-transaction.orm-entity.ts records every receipt with:
currencyCode— the original supplier currencycurrencyRate— the FX rate at the moment of receiptunitCostInPrimaryCurrency— the home-currency equivalent
landed-cost-header.orm-entity.ts aggregates the landed cost components — freight, customs, handling, broker fees — and rolls them into the per-unit landed cost.
Once the lot is in inventory, the cost basis is fixed. Future issues consume at that cost. Future receipts of the same item create new cost layers (per cost-layer.orm-entity.ts) at their own FX-adjusted cost basis.
The average cost method (the default in most BGs) blends the new layer’s cost into the running average. When concentrate prices move materially, the average shifts; the BOM rollup detects it; the FG standard cost updates via batch rollup.
FX gain/loss on AP settlement
The other half of the FX equation is what happens when you pay the supplier.
Receipt date: USD 4,500 owed, rate USD/SAR = 3.75, so SAR 16,875 sitting in AP.
Payment date 60 days later: rate has moved to USD/SAR = 3.78. You still owe USD 4,500, which now equals SAR 17,010. The SAR 135 difference (3% rate move on 60 days) posts to FX gain/loss.
AION’s SLA engine generates this journal automatically when the payment is recorded:
DR AP — Cairo Citrus Co. 16,875 SAR
DR FX Loss 135 SAR
CR Bank 17,010 SAR
The CFO sees the FX loss as a line item on the income statement. Over a year, these realised gains and losses accumulate. For a factory with USD-heavy purchasing, the cumulative FX impact is a real line — often a million-plus rupees of P&L volatility.
The reverse (FX gain) happens when the home currency strengthens against the supplier currency between receipt and payment. Less common in Egypt’s current environment; common enough in Saudi.
What’s on the roadmap
Two FX-related capabilities are flagged as roadmap in the costing audit:
1. FX revaluation on inventory at period close. Today, inventory stays at its historical landed cost. Some accounting standards (and many treasury policies) prefer inventory to be revalued at period-end exchange rates with the resulting FX gain/loss posted. AION captures the rates at receipt and could revalue, but the period-end revaluation flow isn’t a primary feature today.
2. FX revaluation on COGS. Related — when you issue from inventory at historical cost but the FX has moved significantly, the realised cost of that issue diverges from what current-rate replacement would cost. Some companies want this surfaced as a separate “FX impact on COGS” line. Not a primary feature today.
For Egyptian factories specifically, where EGP devaluation has been the major macroeconomic factor, these roadmap items matter more than for Saudi factories with a pegged currency.
Practical management — what CFOs actually do
Three actions a CFO with significant FX exposure should consider:
Action 1: Calculate exposure annually. Pull last year’s foreign-currency purchases by supplier and category. Multiply by current outstanding payable. That’s your FX-exposed AP balance at any moment. Use this number to decide hedging strategy.
Action 2: Match cycles where possible. If you have USD revenue (export sales) and USD purchasing (imported concentrate), you have a natural hedge. Time exports to align with import payment cycles. Less FX gain/loss volatility.
Action 3: Lock procurement currency. Some suppliers will accept payment in your home currency if you negotiate. This pushes the FX risk to the supplier (who may pass it back through price). Worth the negotiation for very volatile currency pairs.
Action 4: Forward contracts for material exposure. For exposure that’s significant and unavoidable, a 3-6 month forward contract locks in the rate. Costs a small premium but eliminates the volatility on that exposure. Standard treasury practice at any factory above SAR 20M annual purchasing.
Common mistakes
Mistake 1: Pricing finished goods in home currency without an FX margin. A juice factory sells at SAR 18/bottle because that’s what the market accepts. Concentrate cost in USD rose 5% in the last quarter. Margin compressed without the sales team knowing. Result: you discover the margin loss at year-end. Fix: monitor unit cost monthly; flag SKUs where home-currency margin is compressing.
Mistake 2: Using “current” rates for everything. Some accounting workflows use today’s FX rate to value historical inventory, retroactively shifting balance sheet values every period. The audit hates this. Use historical rates for historical transactions; use period-end rates only for revaluation entries (which post as separate adjustments, not retroactive changes).
Mistake 3: Ignoring the FX impact on landed cost. Some factories book only the PO price (in foreign currency) into inventory and book freight, customs, and other allocations to expense. That makes the inventory under-stated and COGS over-stated. Landed cost = PO + freight + customs + handling, all in home currency at receipt-date rates.
How this shows up in the Oasis Fresh demo
Walk through it as cfo.saudi:
- Procurement → Suppliers → Cairo Citrus Co. The supplier’s invoice currency is USD.
- Recent PO → Receipt detail. The receipt captures USD price, SAR/USD rate, SAR landed cost.
- Inventory → Item Cost History → mango concentrate. The cost layers show: each receipt has its own historical FX rate and resulting landed cost.
- Manufacturing → BOMs → bulk mango mix. The standard cost rolls up from the current average — which reflects the weighted blend of historical FX rates.
- General Ledger → FX Gain/Loss account. Aggregated realised FX losses for the period.
The whole flow is integrated — no spreadsheet doing the FX math, no manual journal at month-end to “true up” inventory.
Where to go from here
For the costing implications of FX-aware receipts, see True cost per litre of juice — why Excel is lying to you. For the Egypt-specific picture of EGP volatility, the Egypt region page covers the broader market context.
For the multi-country picture of operating across Saudi (pegged to USD) and Egypt (floating EGP), see GCC VAT 2026 — running one ERP across countries.
See this in the Oasis Fresh demo
Log into the Oasis Fresh (Saudi) BG as cfo.saudi
Common questions
Should we hedge our raw material FX exposure?
Depends on the magnitude and your risk appetite. A factory with 60% of raw material cost in USD and EGP revenue should consider partial hedging on a rolling 3-6 month window. Forward contracts or natural hedges (USD-denominated debt against USD-denominated raw material) are common. Small factories typically don't hedge; medium factories do partial; large factories run treasury functions.
How does AION capture FX rates for cost basis?
Every supplier invoice and goods receipt captures the currency and the FX rate at the moment of the transaction. The landed cost composition (PO price + freight + customs + handling) is computed in the home currency at the captured rate. Once the cost is in inventory, it stays at that historical cost basis until the units are issued — no retroactive FX revaluation on inventory at period close (that's on the roadmap).
What about FX gain/loss on AP settlement?
When you pay a USD-denominated invoice 60 days after receipt, the EGP-equivalent payment differs from the EGP-equivalent invoice amount because the rate moved. The difference posts to FX gain/loss automatically via the SLA engine. Your books always show the realised gain or loss; you don't reconstruct it at month-end.