> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.tabs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.tabs.com/_mcp/server.

# Structure & Extraction

When Tabs processes a contract, it reads the document and converts legal language into structured billing data linked to the customer record.

## Supported document types

Tabs reads and processes entire agreements — not just a single document type. Every document is automatically classified against the types below:

A document can match more than one type — for example, a combined MSA and Order Form. Classification looks at the whole document, not just its title or first page.

| Document type                  |                                                                                       |
| ------------------------------ | ------------------------------------------------------------------------------------- |
| Master Service Agreement (MSA) | The foundational agreement governing the overall relationship                         |
| Order Form                     | Defines what's being purchased, at what price, and for what term                      |
| Purchase Order (PO)            | A buyer-issued order authorizing a purchase                                           |
| Amendment                      | Changes to an existing agreement — see [Amendments & Lifecycle](/contract-amendments) |
| Statement of Work (SOW)        | Scopes specific deliverables or services under a broader agreement                    |
| Renewal                        | Extends an existing agreement for a new term                                          |

## What Tabs extracts

Once ingested, Tabs extracts structured data such as:

| Category            | Examples                                                                                                      |
| ------------------- | ------------------------------------------------------------------------------------------------------------- |
| Billing structures  | Fixed, usage-based, tiered, and seat-based pricing                                                            |
| Billing frequency   | Annual, semi-annual, quarterly, monthly, daily, or one-time                                                   |
| Key dates           | Signature date, effective date, invoice date, service start and end                                           |
| Payment terms       | Net terms, late fees, cancellation conditions                                                                 |
| Renewal terms       | Auto-renewals, notice periods                                                                                 |
| Invoicing schedules | Milestone-based, upfront, recurring, in-arrears                                                               |
| Variable terms      | Volume discounts, escalators, SKU-level pricing                                                               |
| Commitments         | Minimum spend or usage guarantees, recognized as revenue as the related performance obligations are satisfied |

## What's on a contract record

Each contract in Tabs has:

| Field        | Description                                                               |
| ------------ | ------------------------------------------------------------------------- |
| Contract ID  | Unique identifier in Tabs — use this for API calls and cross-system joins |
| Name         | Display name for the agreement (e.g. "Acme — 2026 Order Form")            |
| Customer ID  | The customer this contract belongs to                                     |
| Status       | Processing state (e.g. `NEW`, processed, deleted)                         |
| Close date   | The date the deal closed or the contract was signed                       |
| Source       | Where the contract came from (CRM, API, email ingest, etc.)               |
| External IDs | CRM or ERP identifiers, when linked                                       |
| File         | The uploaded contract PDF                                                 |

Within each contract, Tabs organizes billing into **billing term groups** — the unit that ties billing and revenue recognition together. Each group contains one or more **billing terms** (what gets billed) and one or more **performance obligations** (how revenue is recognized).

You can view the billing and revenue impact of each product on a contract through the **Billing Schedule** and **Revenue Schedule** charts in the app.

## Writing contracts for accurate extraction

Tabs uses AI to parse your agreements. Clear contract structure leads to faster processing and fewer review cycles.

### Customer and billing contact

* Include the email address that will receive invoices
* Provide a full physical billing address

### Term definitions

* **Service term** — clear subscription start and end dates for accurate revenue recognition
* **Usage term (in arrears)** — clearly define the period for which usage data will be processed and billed

### Billing frequency and dates

* Specify whether billing is annual, semi-annual, quarterly, monthly, daily, or one-time
* Define critical dates:
  * **Invoice date** — when the invoice will be issued
  * **Signature date** — when the contract becomes legally binding
  * **Effective date** — when the service term starts

### Payment terms

* State net terms explicitly (e.g. Net 30)
* Include late charges or credit card fees if applicable
* Define cancellation conditions and any waived fees or promotions
* Label tax lines explicitly (e.g. "VAT" vs. "GST") so they map to the correct field

### Pricing structure

* **Flat fees** — clearly define quantity and rate
* **Usage and tiered fees** — provide detailed tier breakpoints and per-unit costs
* **Milestones** — for milestone-based billing, specify the exact amount and the triggering event or date for each milestone; vague milestone language is a common source of inaccurate billing schedules
* **Overages** — if usage beyond a commitment is billed at a different rate, state the per-unit overage rate explicitly, rather than leaving it to be configured manually
* Name line items exactly as they should appear on invoices
* Include escalators with percentage increases for multi-year contracts

### File quality

* Keep contract PDFs under 40MB
* Use text-selectable PDFs rather than scanned images where possible — they process faster and more accurately, and heavily redacted or scanned documents can bloat file size