Skip to content

JNY-ACC-BKS-006Begin Canadian-dollar work in a US-dollar unit

Markdown

JNY-ACC-BKS-006

Begin Canadian-dollar work in a US-dollar unit

Markdown
  • DocumentDraft
  • Product intentConfirmed
  • ImplementationPartially observed

KindJourneyProduct areaAccountingModuleBooks, Business Units and Chart of AccountsRevision1End-to-endRequired

Read atservices-accounting f47cb263react-console baf6dae3

The Formal Contract

The narrative above explains; the sections below are authoritative — the rules, scenarios and tests this document binds.

Goal
Enable known foreign currencies and dated rates for financial work.
Screens
/console/{tenantId}/configuration/accounting/businessUnits/console/{tenantId}/configuration/accounting/glAccounts/console/{tenantId}/configuration/accounting/exchangeRates

Steps

#SurfaceActionCapabilityExpectedProvenance
1/console/{tenantId}/configuration/accounting/businessUnitsEnable CAD and EUR and select provider/prohibited-pricing policy for EUR.CAP-ACC-BKS-002The unit returns both currencies with their chosen settings.test
2/console/{tenantId}/configuration/accounting/glAccountsCreate a Canadian-dollar cash account.CAP-ACC-BKS-005The picker offers the base and supported currencies and saves the CAD account.test
3/console/{tenantId}/configuration/accounting/exchangeRatesEnter today’s CAD quote and an earlier quote as decimal text.CAP-ACC-BKS-004The list orders the quotes newest first at ten-place precision.test
4resolveExchangeRateResolve yesterday’s CAD quote and today’s EUR quote.CAP-ACC-BKS-004CAD selects the earlier quote and unquoted EUR returns provider sourcing with prohibited missing-price handling.test
5/console/{tenantId}/configuration/accounting/businessUnitsAttempt to drop CAD support.CAP-ACC-BKS-002The refusal identifies the Canadian-dollar account dependency.test

Alternate and Failure Paths

PathFrom stepConditionPath takenOutcomeProvenance
alternate3EUR provider filling is requested without an available development connection.The operation reports provider unavailability.No rate is persisted.test
services-accounting:modules/books/tests/e2e/exchange-rates.e2e.spec.js#refuses the fill 409 provider_unavailable while no platform client exists, writing nothing
failure1Multicurrency is enabled with an empty supported set.The unit save fails validation.Single-currency operation remains in force.test
services-accounting:modules/books/tests/integration/services/persistence/business-units.integration.spec.js#refuses Enable Multicurrency on a create with no supported currency, in Rhythm 1.0’s words

Assertions

IdStatementProvenance
01The saved supported set and policies match the configured currencies.test
02Dated resolution selects the latest eligible quote.test
03An existing account prevents removal of its supported currency.test

End-to-end policy: required: Currency choices, account pickers and rate maintenance must use the same unit configuration.

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.