Multi-currency, cost basis and lots

ShippedWorks today.

Countbean records the amount, the currency it moved in, and the rate that valued it on that date — and holdings as individual lots with their own cost, rather than as one balance.

Rates are recorded, not applied

2026-08-19 * "Client invoice 041"
  Assets:Bank:Savings     9150.00 EUR @ 1.0800 USD
  Income:Consulting      -9882.00 USD

A price directive is a line in the file you can read, grep and diff:

2026-08-19 price EUR 1.0800 USD

Lots

2026-03-11 * "Buy VWRL"
  Assets:Broker:VWRL     42 VWRL {98.40 EUR, 2026-03-11}
  Assets:Bank:Savings   -4132.80 EUR

Shares bought at three prices are three lots. The gain on a sale depends on which lot was sold, which a single balance cannot express.

A trap worth knowing

An account opened as open Expenses:Foo USD is pinned to USD. A EUR posting to it fails bean-check with “Invalid currency”, and there is no tool to amend an existing open. Multi-currency spending needs an account opened with no currency constraint: open Expenses:Travel:Berlin.

What there is not

No automatic rate feed. Rates come from you or from the agent when it books the entry, and the source is recorded. Fine for invoicing; awkward for a portfolio you mark daily.

Something here wrong or missing? Put it on the board — it is public, and the reply is in the thread.