---
name: eta-transaction-workbook
description: >-
  Build and verify a source-aware acquisition financial model in Excel. Use for acquisition
  sources and uses, closing funds flow, operating cash-flow forecasts, cap tables, ownership,
  returns, and auditable transaction checks, including entrepreneurship-through-acquisition work.
license: Apache-2.0
metadata:
  author: open-agreements
  version: "0.1.0"
catalog_group: Editing And Client Workflows
catalog_order: 50
---

# Acquisition Financial Model

Use the public guide, [How to build an acquisition financial model that can explain and test
itself](https://openagreements.org/practice-guides/transaction-workbooks/building-an-auditable-acquisition-workbook),
as the single source of truth for terminology, explanatory guidance, and authorities. This skill is
the operational cover note for applying that method with the packaged scripts and assets.

## Boundaries

- This is a financial-modeling aid, not legal, tax, accounting, valuation, or investment advice.
- Preserve the distinction between **Closing Funds Flow** (point-in-time payments) and
  **Operating Cash Flow Forecast** (recurring operations).
- Never invent a confirmed fact. Mark estimates and unresolved items clearly.
- Use one stable source identifier per communication or document. Do not collapse several
  communications into a sender-level citation.
- Do not place bank account or wire instructions in this workbook.

## Workflow

1. Copy `assets/example-deal.json` outside the skill and replace only its synthetic inputs.
   Read [references/input-schema.md](references/input-schema.md) before changing the shape.
2. Give each source a stable, non-personal identifier and describe it without unnecessary PII.
3. Build the workbook:

   ```bash
   python3 scripts/build_workbook.py deal.json output.xlsx
   ```

4. Verify it before delivery:

   ```bash
   python3 scripts/verify_workbook.py output.xlsx --input deal.json --negative-controls
   ```

   The verifier checks fixed sheet order, required formulas, formula-error caches, human-readable
   assertions, check classification, all-checks-pass, and the declared negative controls. The controls
   alter workbook precedents and evaluate the assertions independently from the displayed check
   cells. Command-line LibreOffice conversion is not treated as proof of recalculation; open and
   save the result in the spreadsheet engine used for delivery.
5. Review the workbook visually. Confirm that inputs, status, source, formulas, and unresolved
   items are understandable to someone who did not build it.

## Modeling rules

Apply [references/workbook-readability.md](references/workbook-readability.md). It is the packaged
implementation checklist for data records, formulas, presentation, topology, checks, sources, and
delivery verification.

## Packaged assets

- `assets/example-deal.json`: synthetic, source-aware input data.
- `assets/example-workbook.xlsx`: generated, PII-free Excel workbook for inspection.
- `scripts/build_workbook.py`: single-command compatibility entry point.
- `scripts/eta_workbook.py`: deterministic workbook generator.
- `scripts/verify_workbook.py`: structural checks and negative controls.
- `references/input-schema.md`: input contract.
- `references/workbook-contract.md`: sheet, formula, and check contract.
- `references/workbook-readability.md`: concise implementation rules adapted from the
  financial-workbook-readability workflow.

For the workbook contract and check definitions, read
[references/workbook-contract.md](references/workbook-contract.md).

## License

The skill instructions, scripts, and packaged implementation assets are licensed under Apache 2.0.
The linked OpenAgreements article is separately licensed under CC BY 4.0.
