Skip to content

ATS-ACC-BAT-019Plan deferred revenue and adjust its remaining releases: Capability Test Specification

Markdown

ATS-ACC-BAT-019

Plan deferred revenue and adjust its remaining releases: Capability Test Specification

Markdown
  • DocumentProposed
  • Product intentProposed

KindAcceptance test setProduct areaAccountingModuleBatch ManagementRevision2

Read atservices-accounting f47cb263react-console baf6dae3rhythm-v2-docs 37405d50

Coverage

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

Test Scenarios

18 scenarios proving CAP-ACC-BAT-019; 8 bound to an existing test.

01 Originating schedules preserve their totalinvariantbrowsertest
Proves
BR-CAP-ACC-BAT-019-01
Preconditions
Products include annual and relative-date deferral strategies.
Steps
Post their invoices and inspect revenue panels.
Expected
The schedules defer the line totals across dated entries and put rounding residuals on the final entry.
Data
Provide deferring products.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/posting/rebuilt-deferral.integration.spec.js#writes H a schedule of three monthly entries on the firsts of October, November and December, summing to 300.00
02 Configured strategies precede service-period fallbackruleunitproposed
Proves
BR-CAP-ACC-BAT-019-02
Preconditions
Lines include configured fixed or relative strategies and optional service periods.
Steps
Generate the originating schedules.
Expected
Fixed and relative strategies take precedence; other strategies use the line’s service period or a year from the batch date.
Data
Provide no fixtures beyond the stated setup.
Source
services-accounting:modules/batches/services/rules/deferral-rules.ts:calculateRevenueRecognitionPeriod
03 Partial months count as touched monthsedgebrowsertest
Proves
BR-CAP-ACC-BAT-019-03
Preconditions
The service period runs from mid-March through mid-March the following year.
Steps
Generate with period and day truncation settings.
Expected
Both originating schedules contain thirteen equal monthly entries.
Data
Provide the truncation setting.
Bound to
Source
services-accounting:modules/batches/tests/unit/rules/service-period-schedule.spec.js#gives a service period starting mid-month the calendar months it touches: thirteen entries from March 2026 to March 2027
04 Long schedules exceed the supported horizonboundaryunitnegativetest
Proves
BR-CAP-ACC-BAT-019-04 INV-DOM-ACC-BAT-005-02
Preconditions
The service period touches sixty-one months.
Steps
Attempt originating schedule generation.
Expected
The supported-month limit refuses generation.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/unit/rules/schedule-truncation.spec.js#refuses a service period of more than 60 months
05 Deferred splits release over the scheduleruleunittest
Proves
BR-CAP-ACC-BAT-019-05
Preconditions
One deferring line and one ordinary line contain fixed and percentage splits.
Steps
Post them and generate recognition schedules.
Expected
The deferred amount includes splits released by period; ordinary splits credit immediately.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/unit/rules/deferred-revenue-splits.spec.js#releases each period’s 10% to the percentage split’s account, by the split
06 Effective-date corrections use the selected weightingruleapitest
Proves
BR-CAP-ACC-BAT-019-07
Preconditions
A posted deferred line has a memo effective late in August.
Steps
Post using period weighting and then day weighting.
Expected
Period weighting affects later entries; day weighting includes the effective month’s remaining-day share.
Data
Provide the truncation setting.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/posting/rebuilt-service-periods.integration.spec.js#writes the memo's schedule on A's entries after the effective date alone: the 20 September primary and its split, −54.00 and −6.00
07 Corrections omit recognised entriesinteractionbrowsertest
Proves
BR-CAP-ACC-BAT-019-08 INV-DOM-ACC-BAT-005-03
Preconditions
Three months of an annual schedule are recognised.
Steps
Post a proportional credit memo, write-off and refund.
Expected
Each adjustment affects only the nine remaining months at its proportion.
Data
Provide a recognised close.
Bound to
Source
services-accounting:modules/batches/tests/unit/rules/schedule-truncation.spec.js#inverts the nine unrecognised months at half each on their own dates and nothing for the recognised three
08 Added debit-memo lines originate schedulestransitionapitest
Proves
BR-CAP-ACC-BAT-019-09
Preconditions
The memo adds a thirty-dollar deferred line and an ordinary line.
Steps
Post it and inspect both additions.
Expected
Only the deferred addition receives its own memo-owned schedule.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/unit/rules/memo-split-by-schedule.spec.js#is written a schedule of its own under the memo’s id, summing to 30.00, which the invoice’s schedule does not cover
09 Revenue reads expose schedule totalsruleapitest
Proves
BR-CAP-ACC-BAT-019-12
Preconditions
A deferred line also has a posted memo schedule.
Steps
Retrieve the line’s revenue detail.
Expected
Both current schedules and their entries appear with money-valued deferred and recognised totals, including two hundred forty dollars still deferred.
Data
Provide no fixtures beyond the stated setup.
Bound to
Source
services-accounting:modules/batches/tests/integration/services/posting/rebuilt-service-periods.integration.spec.js#answers A’s line with 240.00 still deferred across the invoice’s and the memo’s schedules, on the view and on the read
10 Tax treatment needs a product decisionfailurebrowserproposed
Proves
BR-CAP-ACC-BAT-019-11
Preconditions
A deferred membership line includes tax.
Steps
Compare the posted deferred credit and schedule total.
Expected
Record the tax-exclusive credit and tax-inclusive schedule for the unresolved decision; the existing browser test alone does not prove that exact comparison.
Data
Provide a taxed deferring product.
Source
FND-ACC-BAT-029
11 Cash schedules originate on paymentruleunitproposed
Proves
BR-CAP-ACC-BAT-019-10
Preconditions
A cash-basis invoice line defers revenue and receives an allocation.
Steps
Post its invoice and then its payment.
Expected
The invoice creates no schedule; the allocated payment creates the applicable schedule.
Data
Provide fixtures appropriate to the stated accounting context.
Source
services-accounting:modules/batches/services/rules/revenue-schedule-rules.ts:generateInvoiceSchedules; services-accounting:modules/batches/services/rules/revenue-schedule-rules.ts:generatePaymentSchedules
12 Successful posting owns a revenue planinteractionapiproposed
Proves
BR-CAP-ACC-BAT-013-03 BR-CAP-ACC-BAT-019-01
Preconditions
Morning contains one deferred invoice line.
Steps
Post Morning and inspect the invoice line’s revenue view and posting history.
Expected
The current plan identifies the completed posting and its scheduled amount can be inspected.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/e2e/batch-postings.e2e.spec.js#posts a batch as a durable job: the answer is the job, and the job posts the batch; services-accounting:modules/batches/tests/integration/services/posting/rebuilt-deferral.integration.spec.js#writes H a schedule of three monthly entries on the firsts of October, November and December, summing to 300.00
13 Correction entries agree with remaining releasesinteractionapiproposed
Proves
BR-CAP-ACC-BAT-015-05 BR-CAP-ACC-BAT-019-08
Preconditions
Half of a deferred invoice line’s revenue is recognised.
Steps
Post a sixty-dollar credit memo and inspect its ledger entry and adjustment schedule.
Expected
The entry divides thirty dollars each between revenue and deferred revenue; future schedule adjustments total the deferred share.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/integration/services/posting/memo-split-by-schedule.integration.spec.js#posts the credit memo of 60.00 as Cr receivable 6000, Dr deferred revenue 3000 and Dr revenue 3000; services-accounting:modules/batches/tests/unit/rules/schedule-truncation.spec.js#inverts the nine unrecognised months at half each on their own dates and nothing for the recognised three
14 Fiscal reopening restores pending releasesinteractionapiproposed
Proves
BR-CAP-ACC-BAT-019-08 BR-CAP-ACC-BAT-020-08
Preconditions
A current deferred plan has due entries in three successive periods.
Steps
Recognise the periods, reopen the final period and inspect plan status and fiscal entries.
Expected
Only the selected releases become pending again; earlier recognition remains and mirrored system entries accompany the retained originals.
Data
An isolated workspace with the stated business-unit calendar, documents and configuration.
Source
services-accounting:modules/batches/tests/unit/rules/schedule-truncation.spec.js#inverts the nine unrecognised months at half each on their own dates and nothing for the recognised three; services-accounting:modules/batches/tests/integration/services/close/revenue-recognition.integration.spec.js#un-recognizes A's and B's September entries and opens both schedules again
15 Service-period generation checks the horizon endpointsboundaryapinegativeproposed
Proves
BR-CAP-ACC-BAT-019-04
Preconditions
Two deferred lines have service periods from the first day of a month through the last day of the sixtieth and sixty-first month respectively.
Steps
Generate their period-based schedules through posting.
Expected
The supported period produces a schedule and the oversized period refuses generation without a partial plan.
Data
Owned records in an isolated workspace with the stated calendar and accounting setup.
Source
services-accounting:modules/batches/tests/unit/rules/schedule-truncation.spec.js#refuses a service period of more than 60 months; services-accounting:modules/batches/services/rules/deferral-rules.ts:calculateRecognitionPeriod
16 Empty truncation weights use remaining entriesruleapiproposed
Proves
BR-CAP-ACC-BAT-019-14
Preconditions
An invoice has pending releases and a memo effective date beyond every release date.
Steps
Post the effective-date memo and inspect its adjustment plan.
Expected
The plan inverts the applicable remaining releases rather than becoming an empty adjustment.
Data
Owned records in an isolated workspace with the stated calendar and accounting setup.
Source
services-accounting:modules/batches/services/rules/revenue-schedule-rules.ts:truncationWeightsOf; services-accounting:modules/batches/services/rules/revenue-schedule-rules.ts:returnTruncatedRevenueRecognitionSchedule
17 Past release dates move to the booking dateruleapiproposed
Proves
BR-CAP-ACC-BAT-019-06
Preconditions
A fixed-date strategy names releases before the originating batch date.
Steps
Post the deferred invoice and inspect generated release dates.
Expected
Each earlier configured date is moved to the batch date and the generated amounts preserve their total.
Data
Owned records in an isolated workspace with the stated calendar and accounting setup.
Source
services-accounting:modules/batches/services/rules/posting-generation.ts
18 Revenue inspection and reporting need their grantspermissionapinegativeproposed
Proves
BR-CAP-ACC-BAT-019-12 BR-CAP-ACC-BAT-019-13
Preconditions
Callers differ in entry-read and revenue-schedule-query grants.
Steps
Read invoice-line revenue and query schedule-entry reporting with and without each applicable grant.
Expected
Only callers with the required grant receive the corresponding workspace results.
Data
Owned records in an isolated workspace with the stated calendar and accounting setup.
Source
services-accounting:modules/batches/tests/integration/services/posting/rebuilt-service-periods.integration.spec.js#answers A’s line with 240.00 still deferred across the invoice’s and the memo’s schedules, on the view and on the read; services-accounting:modules/batches/tests/integration/db/revenue-schedule-entries-view.integration.spec.js#sums the waterfall the recipe asks for: what is still deferred, by month and revenue account, the memo netted and V left out

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.