---
id: TST-ACC-BKS-199
title: Invoice Lifecycle and Shared Term Browser Suite
kind: browser-lifecycle
product_area: accounting
module: books
revision: 1
status: draft
source_sha:
  services-accounting: f47cb263875bbc0c5640fba7dae6785ec32695f8
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
repository: react-console
files:
  - e2e/mock/accounting-invoice-lifecycle.mock.spec.ts
implements: []
environment: mock
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 3
isolation: A fresh browser context owns seeded response-handler state and screen edits.
assertion_bindings: []
unmapped: true
evidence:
  - provenance: test
    source: 'react-console:e2e/mock/accounting-invoice-lifecycle.mock.spec.ts'
---

# Invoice Lifecycle and Shared Term Browser Suite

## Verification Boundary

The browser exercises invoice lifecycle screens with mock data, including shared payment-term selection and the initial working-unit context.

## What This Suite Proves

The file contains assertions for editing terms and the resulting due date. Those consumer assertions have no complete Books acceptance binding; the remaining lifecycle examples belong to Transactions.

## What It Does Not Prove

Mock invoice state does not prove live issuance, ledger writes or payment-term deletion protection. No execution result is claimed.

## Real Dependencies and Test Doubles

The invoice components and browser interactions are real. Local response handlers supply configuration choices and invoice mutations.

## Must Not Be Doubled

The invoice editor, term selector and displayed due-date calculations remain the production code exercised by these examples.
