Keep your users updated as your project evolves

Settle documents across currencies

POST /workspaces/{workspace_id}/transactions/{id}/pair now accepts document_amount — the settled amount in the paired record’s own currency — so a transaction can settle a document or expense held in a different currency (a EUR card charge paying a USD invoice). The allocation stores both legs: the bank amount in the transaction’s currency and the settled amount in the document’s, and payment status derives from the settled side. Decimal input is locale-tolerant (72,90 and 72.90 both parse).

  • Omitting document_amount keeps the existing same-currency behaviour unchanged.
  • The realized exchange rate is derived from the two amounts; on settled records the summary shows the resulting exchange difference with its 563/663 account for double-entry workspaces.
  • Suggestions never auto-pair across currencies: cross-currency candidates appear in GET .../transactions/{id}/suggestions (and the document-side mirror) with currency_conversion among their match_reasons, for explicit review.