Nexto
HomeBlogAccounting
Accounting

What Is a Currency Exchange General Ledger, and How Do You Keep It Right?

A currency exchange general ledger is different from an ordinary business ledger: it must balance separately in every currency. A practical guide to multi-currency double-entry accounting, from chart of accounts to revaluation.

8 min read · Nexto team · Last updated: July 16, 2026

If you ask ten exchange dealers, “Where is your general ledger?”, you will probably get ten different answers: a paper ledger, an Excel file, old software, or “it’s all here” while pointing at their head.

But a general ledger is not a preference; it is a definition. And an exchange business that does not respect that definition will, sooner or later, end up where balances do not tie and nobody knows why.

The general ledger in one sentence

A general ledger means: no money comes from nowhere and no money goes nowhere; it only moves.

Every financial event has at least two sides. If you receive 100 dollars from a customer, two things happen at the same time:

  1. Your dollar cash increases by 100 dollars (your asset went up).
  2. Your liability to that customer increases by 100 dollars (their money is with you).

If you record only the first one, you look richer until the customer asks for their money. Double-entry accounting was invented exactly for this: every entry has two ends, and total debits always equal total credits. If they do not, the entry is wrong — no debate, no exception.

From an exchange business perspective, these two words are simple:

  • The customer account is in credit means their money is with you; you owe them.
  • The customer account is in debit means your money is with them; they owe you.
Event: the customer hands over $100 in cash One thing happens in the real world — two effects in the ledger Debit Dollar drawer (asset) + 100 USD The cash actually arrived Credit Customer account (liability) + 100 USD We hold their money — it isn't ours Total debits = total credits — otherwise the entry is wrong And this equality must hold for each currency separately A single balance in the base currency isn't enough: the error hides behind the conversion rate
Every event has two ends. What separates an exchange from general accounting is the last line: balance not once, but per currency.

The fundamental difference: an exchange ledger is multi-currency

This is where general accounting separates from exchange accounting, and why ordinary accounting software does not work for an exchange business.

A supermarket has only one currency. Its ledger balances like this: total rial debits = total rial credits. Done.

But in an exchange business, you have several parallel ledgers at the same time. A customer can be in credit in dirhams and in debit in rials — these two numbers are not related and must not be added together. Adding them is adding apples and oranges.

The correct rule is:

An exchange ledger must balance separately in each currency. A total balance in the base currency is not enough — it is misleading, because it hides errors behind the exchange rate.

If software only checks the rial balance, you can have an entry that balances in rials but creates 500 dirhams out of thin air — and you may never find out.

So how is a trade recorded?

A trade is the only entry that touches two currencies, and for exactly that reason it cannot balance in one currency. The standard solution is a conversion clearing account: each trade is, in practice, two simultaneous entries connected through a clearing account. The dollar leg balances in the dollar ledger, the rial leg balances in the rial ledger, and the value difference between these two legs — in the base currency — is what we call trade profit.

If you do not have this structure, you are forced to calculate profit manually. And any number calculated manually will eventually be calculated wrong.

The accounts of an exchange business

A chart of accounts means anything where money sits must be an account. For an exchange business, five groups are usually enough:

Group What it means Real examples
Asset Money under your control Rial cash, dollar cash, bank account, USDT wallet, gold
Liability Money held by you but not owned by you Customers’ credit balances, unpaid remittances
Equity The owner’s share Initial capital, owner drawings, retained earnings
Income Something that improves your position Fees, trade profit, revaluation gain
Expense Something that worsens your position Rent, salaries, bank charges, revaluation loss

Three common chart-of-accounts mistakes:

  • Customer and cash in one account. “Dollar cash” is where the banknotes are; “Hassan’s account” is a liability. Merging them means losing both numbers.
  • A clearing account with no owner. Clearing accounts (such as “in transit” or “unsettled”) must always return to zero. A clearing account with a permanent balance means an entry has been left half-finished.
  • Income and liability mixed together. A fee you took from a customer is your income, not a reduction of liability. If you do not separate them, you will never know whether profit came from the fee or from the rate.

Two rules you must never break

1. A posted entry is not deleted — it is corrected.

If an entry was wrong, post a corrective reversal entry. Deleting means destroying the trail: three months later, when balances do not tie, nobody will know that entry ever existed. Software that allows an entry to be deleted without a trail does not have a general ledger; it has a file.

2. There is no manual balance.

The balance of every account must be the sum of its entries, not a number someone typed. If there is anywhere in the system where a balance can be entered manually, that system will sooner or later lie to you — because from that moment on, the balance and the entries are two independent truths.

The hardest part: revaluation

Assume you hold 10,000 dirhams with an average cost of 272 dollars per 1,000 dirhams. Today the dirham rate changes. Your wealth has changed — without you posting even a single transaction.

This change must land somewhere in the ledger, otherwise your ledger drifts away from reality. This is called revaluation, and it creates two kinds of profit:

  • Realized profit: when you actually sell and the rate difference is turned into cash.
  • Unrealized profit: on an open position that you have not sold yet. You have it on paper, not in your pocket.

The critical point: if you do not separate these two, you will confuse paper profit with real money. Exchange businesses that lose money in sharp volatility are usually the same ones that treated months of unrealized profit as real profit and spent it.

FX position: the missing twin of the general ledger

The general ledger tells you how much you have. But it does not tell you how much risk you are exposed to.

FX position means: in each currency, what is your net open position and at what average rate. This number answers a question the general ledger never answers: “If the dirham drops 2% tomorrow morning, how much do I lose?”

A general ledger without FX position is like driving by looking in the mirror: you see where you have been, not what you are about to hit. That is why in Nexto, FX position is not an add-on — it sits beside the ledger itself and updates with every entry.

Five signs of a healthy general ledger

  1. Every currency balances separately — not just the grand total in the base currency.
  2. No balance is manual — every number is built from its entries.
  3. Clearing accounts are zero — or if they are not, you know which entry left them open.
  4. Every entry has a trail — who changed what, when, and how.
  5. Every number can be traced back to its entry — you click the balance and drill down to the raw line, with no dead end.

If all five are true, you have a general ledger. If not, you have a report that looks like a general ledger.

Summary

An exchange general ledger needs three things at the same time, and few systems have all three: balance in every currency, separation of realized and unrealized profit, and an undeniable audit trail. If any one of them is missing, one day a balance will not tie and you will spend months chasing it.

The good news is that you cannot have these “almost” — either they exist or they do not. And checking takes no more than ten minutes: build a dedicated demo, post a few entries, and see whether you can drill down from every number to its raw line.

See all of this inside Nexto

A complete, private instance with sample data — no install, no credit card.

Create free demo
Chat on WhatsApp