Skip to content

ATS-ACC-REC-010Document processor deductions and corrections: Capability Test Specification

Markdown

ATS-ACC-REC-010

Document processor deductions and corrections: Capability Test Specification

Markdown
  • DocumentProposed

KindAcceptance test setProduct areaAccountingModuleReconciliationRevision3

Read atservices-accounting f47cb263react-console baf6dae3

Coverage

  • Rule covered
  • Transition covered
  • Validation covered
  • Permission covered
  • Edge covered
  • Boundary covered
  • Interaction covered
  • Failure gap: FND-ACC-REC-055
  • Concurrency gap: FND-ACC-REC-055
  • Invariant gap: FND-ACC-REC-055

Test Scenarios

13 scenarios proving CAP-ACC-REC-010; 9 bound to an existing test.

01 Manual kinds, signs and documentationvalidationapinegativetest
Proves
BR-CAP-ACC-REC-010-01
Preconditions
A draft allows manual adjustment work.
Steps
Try a manual capture, positive fee and undocumented reserve.
Expected
Validation reports invalid kinds, signs and documentation without committing the entry.
Data
No additional fixture beyond the case setup.
Bound to
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#refuses a manual item without a note or evidence, of a kind not entered by hand, and of the wrong sign, all at once
Source
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#refuses a manual item without a note or evidence, of a kind not entered by hand, and of the wrong sign, all at once
02 Commit-time documentationvalidationapinegativetest
Proves
BR-CAP-ACC-REC-010-02
Preconditions
A manual fee can have notes or evidence.
Steps
Commit with either form, commit with neither and remove the sole file.
Expected
A note or evidence permits commit; removing the last evidence requires a note.
Data
No additional fixture beyond the case setup.
Bound to
services-accounting:modules/reconciliation/tests/integration/db/reconciliation-evidence-files.table.integration.spec.js#refuses at commit a manual fee with neither a note nor an evidence file (RHF34)
services-accounting:modules/reconciliation/tests/integration/db/reconciliation-evidence-files.table.integration.spec.js#refuses at commit the removal of the only evidence file of a manual fee without a note (RHF34)
Source
services-accounting:modules/reconciliation/tests/integration/db/reconciliation-evidence-files.table.integration.spec.js#commits a manual fee written with an evidence file in the same transaction
03 Adjustment account belongs to the unitvalidationapinegativetest
Proves
BR-CAP-ACC-REC-010-03
Preconditions
Two units supply separate ledger accounts.
Steps
Enter an adjustment with no account, a foreign-unit account and the correct account.
Expected
Missing and incompatible accounts fail; the local account is accepted.
Data
Configure both business units used by the case.
Bound to
Source
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#refuses an adjustment without a GL account, or with another unit’s, with 400
04 Manual addition, automatic claim and replaytransitionapitest
Proves
BR-CAP-ACC-REC-010-04 BR-CAP-ACC-REC-010-06
Preconditions
An open draft is available.
Steps
Add a keyed fee, repeat it and reuse its key with changed money.
Expected
One item and claim update totals and version, replay returns it and a changed request fails.
Data
No additional fixture beyond the case setup.
Bound to
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#answers a repeat of the same key and body with the first answer, entering nothing more
Source
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#writes the fee as a manual item of the batch, claimed by it
05 Manual occurrence follows earliest depositruleapiproposed
Proves
BR-CAP-ACC-REC-010-05
Preconditions
Linked payouts are dated on the tenth and twelfth of October.
Steps
Add a documented fee after those days.
Expected
Its occurrence is midnight on the tenth in the workspace’s zone.
Data
Provide workspace zone for this case.
Source
services-accounting:modules/reconciliation/services/persistence/reconciliation-allocations.ts:addManualItem
06 Withdrawal keeps the lifetime counttransitionapitest
Proves
BR-CAP-ACC-REC-010-07
Preconditions
A draft contains a manually entered fee.
Steps
Remove it and attempt removal again.
Expected
The item is withdrawn and current totals decrease while the lifetime entry count remains; repeat finds no active item.
Data
No additional fixture beyond the case setup.
Bound to
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#takes it out of the batch’s items and totals, one version on, keeping the count of items entered
Source
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#takes it out of the batch’s items and totals, one version on, keeping the count of items entered
07 Lifetime manual-entry capboundaryapinegativetest
Proves
BR-CAP-ACC-REC-010-08
Preconditions
Two hundred manual entries have been recorded in a reconciliation.
Steps
Attempt one additional entry.
Expected
The capacity check rejects it.
Data
No additional fixture beyond the case setup.
Bound to
Source
services-accounting:modules/reconciliation/tests/integration/db/reconciliation-batches.table.integration.spec.js#refuses a 201st manual item
08 Fee-only and zero depositsedgeapitest
Proves
BR-CAP-ACC-REC-010-09
Preconditions
Negative and zero net payouts are available.
Steps
Explain both using the matching manual entries.
Expected
Both reconcile to zero difference, including the zero payout whose capture is consumed by its fee.
Data
No additional fixture beyond the case setup.
Bound to
services-accounting:modules/reconciliation/tests/e2e/reconciliation-scenario.e2e.spec.js#step 14: reconciles and finalizes a zero payout whose fee took the whole capture
Source
services-accounting:modules/reconciliation/tests/integration/services/persistence/reconciliation-allocations.integration.spec.js#balances the negative payout with the two manual items
09 Manual addition requires updatepermissionapinegativetest
Proves
BR-CAP-ACC-REC-010-11
Preconditions
A reader lacks reconciliation update.
Steps
Add a fee as that reader.
Expected
The service returns forbidden.
Data
Use a caller whose role grants inspection only.
Bound to
Source
react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0608.spec.ts#ACT-ACC-0608
10 Manual accounting journeyinteractionapitest
Proves
AS-JNY-ACC-REC-001-01
Preconditions
The unit has fee, reserve and adjustment accounts.
Steps
Enter a fee, reserve hold and fifty-cent correction, then finalize as an independent approver.
Expected
Each required recognition uses the appropriate counter-account once.
Data
Provide Default accounts for this case.
Bound to
Source
react-console:acceptance/accounting/playwright/journeys/reconciliation-close/ACT-ACC-0596.spec.ts#ACT-ACC-0596
11 Manual removal changes allocation totalsinteractionapiproposed
Proves
BR-CAP-ACC-REC-010-07 BR-CAP-ACC-REC-009-03
Preconditions
Use one isolated workspace with the financial records and caller roles required by the relied-on cases.
Steps
[ { "do": "Claim captures, add a fee and remove that fee at the current draft version.", "expect": "The fee is withdrawn, matched claims remain and the difference changes by the removed amount.", "provenance": "proposed", "source": [ "specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-010-enter-the-fees-reserves-and-corrections-the-processor-took.md", "specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-009-claim-what-a-deposit-paid-out-without-two-people-claiming.md" ] } ]
Expected
The fee is withdrawn, matched claims remain and the difference changes by the removed amount.
Data
Local merchant and bank accounts, an open operational batch and distinct preparation and approval callers.
Source
specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-010-enter-the-fees-reserves-and-corrections-the-processor-took.md,specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-009-claim-what-a-deposit-paid-out-without-two-people-claiming.md
12 A fee changes the approval outcomeinteractionapiproposed
Proves
BR-CAP-ACC-REC-010-04 BR-CAP-ACC-REC-010-06 BR-CAP-ACC-REC-011-06 BR-CAP-ACC-REC-011-08
Preconditions
Use one isolated workspace with the financial records and caller roles required by the relied-on cases.
Steps
[ { "do": "Prepare captures exceeding the deposit by a fee, add that fee and approve independently.", "expect": "The deduction balances preparation and approval retains its recognition beside the transfer.", "provenance": "proposed", "source": [ "specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-010-enter-the-fees-reserves-and-corrections-the-processor-took.md", "specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-011-approve-a-balanced-reconciliation-and-move-the-deposit-to.md" ] } ]
Expected
The deduction balances preparation and approval retains its recognition beside the transfer.
Data
Local merchant and bank accounts, an open operational batch and distinct preparation and approval callers.
Source
specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-010-enter-the-fees-reserves-and-corrections-the-processor-took.md,specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-011-approve-a-balanced-reconciliation-and-move-the-deposit-to.md
13 Manual recognition reaches the ledgerinteractionapiproposed
Proves
AS-JNY-ACC-REC-001-01 BR-CAP-ACC-REC-014-07 BR-CAP-ACC-REC-014-08
Preconditions
Use one isolated workspace with the financial records and caller roles required by the relied-on cases.
Steps
[ { "do": "Finalize a deposit with a fee and reserve, then post and unpost its operational batch.", "expect": "Corresponding entries appear with posting and disappear with unposting while requests remain retained.", "provenance": "proposed", "source": [ "specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-010-enter-the-fees-reserves-and-corrections-the-processor-took.md", "specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-014-hand-reconciliations-accounting-to-the-ledger-through-the.md" ] } ]
Expected
Corresponding entries appear with posting and disappear with unposting while requests remain retained.
Data
Local merchant and bank accounts, an open operational batch and distinct preparation and approval callers.
Source
specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-010-enter-the-fees-reserves-and-corrections-the-processor-took.md,specs/accounting/reconciliation/planning/capabilities/CAP-ACC-REC-014-hand-reconciliations-accounting-to-the-ledger-through-the.md

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.