42.8 Receipts and payments in foreign currencies

LedgerSMB supports foreign currency in both Accounts Receivable (AR) and Accounts Payable (AP) by storing the transaction currency, the exchange rate, and the resulting base (functional) currency amounts used in the general ledger.

LedgerSMB assumes:

  • A company has one functional base currency.

  • Customers and vendors may transact in different currencies.

  • The foreign currency amount remains associated with the document so open invoices can be settled in their original currency.

  • Each AR or AP document records:

    • the transaction currency (EUR, GBP, CAD, etc.)

    • the exchange rate used

    • base-currency values posted to the GL

42.8.1 Exchange rates

Exchange rates are maintained separately from invoices.

Current releases support:

  • multiple currencies

  • multiple exchange-rate classes

  • validity periods for rates

  • multiple rates on the same day (introduced in 1.7)

Beginning with 1.7, each transaction carries its own exchange rate instead of relying on a single daily buy/sell rate. This makes it possible to record the actual bank or negotiated rate used on an individual invoice or payment.

42.8.2 Exchange rate classes

LedgerSMB also supports exchange-rate classes, allowing organizations to maintain different sets of rates for purposes such as:

  • operational transaction entry

  • revaluation

  • translation

  • other accounting requirements

The default installation includes a standard exchange-rate class, and additional classes can be defined if needed.

42.8.3 User workflow

For AR and AP, LedgerSMB’s foreign currency workflow is:

  1. 1.

    Enter the invoice in the customer’s or vendor’s currency.

  2. 2.

    Record the exchange rate for that specific transaction.

  3. 3.

    Post the GL in the company’s functional currency.

  4. 4.

    Retain the original foreign amount on the open document.

  5. 5.

    When payment is recorded, compare the original and settlement exchange rates.

  6. 6.

    Automatically recognize any realized foreign exchange gain or loss.

  7. 7.

    Support different exchange rates for different transactions on the same day, reflecting actual bank or negotiated rates.

This design closely follows standard accounting practice for foreign-currency AR and AP while giving users the flexibility to use transaction-specific exchange rates instead of a single daily rate.