{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://docs.demiton.io/registers/trial_balance/v2.json",
  "title": "trial_balance contract v2",
  "type": "object",
  "required": [
    "account_number",
    "balance",
    "external_id",
    "legal_entity_id",
    "net_change",
    "snapshot_at"
  ],
  "properties": {
    "balance": {
      "type": "number",
      "description": "the account's closing balance at the snapshot",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "by-coordinate (currency)",
      "x-demiton-type": "decimal"
    },
    "currency": {
      "type": "currency",
      "description": "currency of the monetary amounts",
      "x-demiton-requiredness": "optional"
    },
    "net_change": {
      "type": "number",
      "description": "movement in the account for the period",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "by-coordinate (currency)",
      "x-demiton-type": "decimal"
    },
    "external_id": {
      "type": "string",
      "description": "the source system's own account identifier",
      "x-demiton-requiredness": "required"
    },
    "snapshot_at": {
      "type": "string",
      "description": "the instant the snapshot was captured",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "instant",
      "format": "date-time",
      "x-demiton-type": "datetime"
    },
    "account_name": {
      "type": "string",
      "description": "the account's human label",
      "x-demiton-requiredness": "optional"
    },
    "account_type": {
      "type": "string",
      "description": "the BC account-type code",
      "x-demiton-requiredness": "optional"
    },
    "account_number": {
      "type": "string",
      "description": "the G/L account number",
      "x-demiton-requiredness": "required"
    },
    "legal_entity_id": {
      "type": "string",
      "description": "the company that owns the account",
      "x-demiton-requiredness": "required",
      "x-demiton-reference": true
    },
    "account_category": {
      "type": "string",
      "description": "the account's primary classification",
      "x-demiton-requiredness": "optional"
    },
    "last_modified_at": {
      "type": "string",
      "description": "when the source last changed the account record",
      "x-demiton-requiredness": "optional",
      "x-demiton-unit": "instant",
      "format": "date-time",
      "x-demiton-type": "datetime"
    },
    "account_sub_category": {
      "type": "string",
      "description": "the finer classification",
      "x-demiton-requiredness": "optional"
    }
  },
  "x-demiton-register-type": "trial_balance",
  "x-demiton-contract-version": "2.0.2",
  "x-demiton-store": "tenant",
  "x-demiton-axes": [
    {
      "axis": "currency",
      "requirement": "optional",
      "role": "context"
    },
    {
      "axis": "legal_entity",
      "requirement": "required",
      "role": "context"
    }
  ],
  "x-demiton-measures": [
    {
      "key": "balance",
      "accumulation": "instantaneous",
      "dtype": "decimal",
      "unit": "by_coordinate"
    },
    {
      "key": "net_change",
      "accumulation": "instantaneous",
      "dtype": "decimal",
      "unit": "by_coordinate"
    }
  ],
  "x-demiton-provenance": {
    "standards": [
      {
        "code": "AASB 116",
        "title": "AASB 116 Property, Plant and Equipment (adopts IAS 16)",
        "access": "full_text_verified",
        "clause": "paras 29-31, 43-44",
        "region": "Australia",
        "edition": "F2023C00192",
        "checked_on": "2026-09-14"
      },
      {
        "code": "ATO record-keeping rules",
        "title": "ATO business record-keeping rules (ITAA 1936 s 262A; TAA 1953 Sch 1 s 382-5)",
        "access": "public_summary",
        "region": "Australia",
        "edition": "ATO page updated 2025-08-01",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Corporations Act 2001 (Cth) s 286",
        "title": "Corporations Act 2001 (Cth) - obligation to keep financial records",
        "access": "full_text_verified",
        "clause": "s 286(1), 286(2) (7 years)",
        "region": "Australia",
        "edition": "current",
        "checked_on": "2026-09-14"
      },
      {
        "code": "GST Act 1999 (Cth)",
        "title": "A New Tax System (Goods and Services Tax) Act 1999 (Cth)",
        "access": "public_summary",
        "clause": "s 29-70 (tax invoices); ATO tax invoice guidance",
        "region": "Australia",
        "edition": "current (ATO guidance updated 25 Aug 2025)",
        "checked_on": "2026-09-14"
      },
      {
        "code": "ISO/TS 55010",
        "title": "ISO/TS 55010 Aligning financial and non-financial asset management functions",
        "access": "public_summary",
        "clause": "Annex J",
        "region": "International",
        "edition": "2024",
        "checked_on": "2026-09-14"
      },
      {
        "code": "Peppol BIS Billing 3.0",
        "title": "Peppol BIS Billing 3.0 (CIUS of EN 16931)",
        "access": "full_text_verified",
        "clause": "conformance statement; business requirement groups",
        "region": "International",
        "edition": "3.0.21 (May 2026 release)",
        "checked_on": "2026-09-14"
      },
      {
        "code": "GST Act 1985 (NZ)",
        "title": "Goods and Services Tax Act 1985 (NZ)",
        "access": "public_summary",
        "clause": "taxable supply information (s 19K); IRD guidance",
        "region": "New Zealand",
        "edition": "as amended from 1 Apr 2023",
        "checked_on": "2026-09-14"
      },
      {
        "code": "UK VAT rates",
        "title": "UK VAT (standard rate 20%)",
        "access": "public_summary",
        "region": "United Kingdom",
        "edition": "current",
        "checked_on": "2026-09-14"
      },
      {
        "code": "ASC 360",
        "title": "FASB ASC 360 Property, Plant, and Equipment",
        "access": "paywalled_secondary",
        "region": "United States",
        "edition": "current",
        "checked_on": "2026-09-14"
      }
    ]
  },
  "description": "Debit and credit balance per general ledger account.",
  "x-demiton-contract-url": "https://docs.demiton.io/registers/trial_balance/",
  "x-demiton-register-catalog": "https://docs.demiton.io/concepts/register-catalog"
}