greek-financial-statements

ClawSkills 作者 openclaw-greek-accounting v1.0.0

Greek financial statement generation — P&L, balance sheets, VAT summaries with EGLS integration. Completeness gates prevent partial outputs.

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install clawskills:clawskills~satoshistackalotto-greek-financial-statements
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/clawskills%3Aclawskills~satoshistackalotto-greek-financial-statements/file -o satoshistackalotto-greek-financial-statements.md
# Greek Financial Statements

This skill generates professional financial statements for Greek businesses, integrating with the ΕΓΛΣ (Ελληνικό Γενικό Λογιστικό Σχέδιο — Greek General Chart of Accounts) and enforcing strict completeness gates to prevent incomplete or inaccurate output. Every statement is versioned, bilingual (Greek for clients, English for internal), and includes a full audit trail.


## Setup

```bash
export OPENCLAW_DATA_DIR="/data"
which jq || sudo apt install jq
```

No external credentials required. Generates financial statements (P&L, balance sheet, cash flow) from data in OPENCLAW_DATA_DIR. Includes a completeness gate that blocks generation if source data is incomplete.


## Core Philosophy

- **Completeness First**: Never generate a statement with incomplete source data — halt and report blockers
- **ΕΓΛΣ Native**: All accounts classified per Greek Chart of Accounts standards
- **Versioned & Immutable**: Once issued, a statement is never overwritten — amendments create new versions
- **Bilingual Output**: Greek labels for client-facing documents, English for internal use
- **Balance Sheet Must Balance**: Assets must equal equity plus liabilities — halt on any mismatch
- **Human Oversight**: All generated statements are drafts until a senior accountant reviews and issues them

## OpenClaw Commands

### Statement Generation
```bash
# Generate full financial statement pack (P&L + balance sheet + VAT summary)
openclaw statements generate --afm EL123456789 --period 2026-01

# Generate specific statement type
openclaw statements generate-pl --afm EL123456789 --period 2026-01
openclaw statements generate-balance-sheet --afm EL123456789 --period 2026-01
openclaw statements generate-vat-summary --afm EL123456789 --period 2026-01

# Force partial generation (requires explicit human confirmation)
openclaw statements generate --afm EL123456789 --period 2026-01 --force-partial --confirm
```

### Completeness & Readiness
```bash
# Check readiness for a single client
openclaw statements readiness --afm EL123456789 --period 2026-01

# Check readiness across all active clients
openclaw statements readiness-all --period 2026-01

# Show specific blockers for a client
openclaw statements blockers --afm EL123456789 --period 2026-01
```

### Amendments & Versioning
```bash
# Create amendment to an existing statement
openclaw statements amend --afm EL123456789 --period 2025-10 --reason "Late supplier invoice discovered"

# View version history for a client period
openclaw statements versions --afm EL123456789 --period 2025-10

# Compare two versions
openclaw statements diff --afm EL123456789 --period 2025-10 --v1 1 --v2 2
```

### Period Comparison & Analysis
```bash
# Compare current period to same period last year
openclaw statements compare --afm EL123456789 --period 2026-01 --vs 2025-01

# Compare current period to previous period
openclaw statements compare --afm EL123456789 --period 2026-01 --vs 2025-12

# Flag significant variances (default threshold: 15%)
openclaw statements variance-report --afm EL123456789 --period 2026-01 --threshold 15
```

### Output & Distribution
```bash
# Generate client-facing PDF pack
openclaw statements export-pdf --afm EL123456789 --period 2026-01 --language greek

# Generate bilingual PDF (Greek primary, English annotations)
openclaw statements export-pdf --afm EL123456789 --period 2026-01 --bilingual

# Queue statement for client delivery via communication engine
openclaw statements send-to-client --afm EL123456789 --period 2026-01 --via email
```

## Completeness Gate

The completeness gate runs automatically before every statement generation. It checks all required data sources and halts generation if any are incomplete. The gate cannot be bypassed without `--force-partial --confirm`.

### Gate Checks

```yaml
Completeness_Gate:
  banking_reconciliation:
    check: "Banking reconciliation exists and status is 'complete' for the period"
    source: "/data/clients/{AFM}/compliance/ or /data/banking/"
    blocker_if: "missing or status != complete"
    
  vat_filing:
    check: "VAT filing data exists for the period"
    source: "/data/compliance/vat/{AFM}_{period}_vat_return.xml"
    blocker_if: "missing"
    
  efka_contributions:
    check: "EFKA contribution data exists and status is 'calculated' or 'submitted'"
    source: "/data/efka/"
    blocker_if: "missing or status == 'pending'"
    
  ocr_queue:
    check: "No documents for this client are pending in the OCR queue"
    source: "/data/processing/ocr/queued/"
    blocker_if: "pending_count > 0"
    
  prior_period:
    check: "Prior period statement exists (unless this is the first period)"
    source: "/data/clients/{AFM}/financial-statements/"
    blocker_if: "missing and not first_period"
    warning_if: "prior period has unresolved amendments"
```

### Gate Output

When blocked:
```json
{
  "afm": "EL987654321",
  "period": "2026-02",
  "gate_result": "BLOCKED",
  "blockers": [
    {
      "check": "banking_reconciliation",
      "status": "not_started",
      "resolve_command": "openclaw banking reconcile --afm EL987654321 --period 2026-02"
    },
    {
      "check": "ocr_queue",
      "status": "4 items pending",
      "items": ["invoice_0234.pdf", "receipt_0891.pdf", "invoice_0235.pdf", "bank_charge_0012.pdf"],
      "resolve_command": "openclaw ocr process-queue --afm EL987654321 --priority"
    }
  ],
  "ready_items": ["vat_filing", "efka_contributions"],
  "recommendation": "Resolve blockers before generating statements. Run: openclaw statements blockers --afm EL987654321 --period 2026-02 for details."
}
```

Blocked results are logged to `/data/memory/failures/` with `failure_type: completeness_gate_failed`.

## ΕΓΛΣ — Greek Chart of Accounts Integration

All financial statements use the Greek General Chart of Accounts (ΕΓΛΣ) classification system. Account codes map directly to standard Greek accounting categories.

### Account Classes

```yaml
EGLS_Account_Classes:
  class_1_assets:
    "10": "Εδαφικές εκτάσεις (Land)"
    "11": "Κτίρια - εγκαταστάσεις (Buildings)"
    "12": "Μηχανήματα - τεχνικές εγκαταστάσεις (Machinery)"
    "13": "Μεταφορικά μέσα (Transport)"
    "14": "Έπιπλα - λοιπός εξοπλισμός (Furniture & equipment)"
    "16": "Ασώματες ακινητοποιήσεις (Intangible assets)"
    
  class_2_current_assets:
    "20": "Εμπορεύματα (Merchandise)"
    "21": "Προϊόντα (Finished goods)"
    "24": "Πρώτες ύλες (Raw materials)"
    "25": "Αναλώσιμα (Consumables)"
    "30": "Πελάτες (Trade debtors)"
    "33": "Χρεώστες διάφοροι (Other debtors)"
    "38": "Χρηματικά διαθέσιμα (Cash and equivalents)"
    
  class_4_equity_and_liabilities:
    "40": "Κεφάλαιο (Share capital)"
    "41": "Αποθεματικά (Reserves)"
    "42": "Αποτελέσματα εις νέο (Retained earnings)"
    "44": "Προβλέψεις (Provisions)"
    "45": "Μακροπρόθεσμες υποχρεώσεις (Long-term liabilities)"
    "50": "Προμηθευτές (Trade creditors)"
    "53": "Πιστωτές διάφοροι (Other creditors)"
    "54": "Υποχρεώσεις από φόρους (Tax liabilities)"
    "55": "Ασφαλιστικοί οργανισμοί (Social security payable)"
    
  class_6_expenses:
    "60": "Αγορές (Purchases)"
    "61": "Μεταβολή αποθεμάτων (Inventory changes)"
    "62": "Παροχές τρίτων (Third-party services)"
    "63": "Φόροι - τέλη (Taxes and duties)"
    "64": "Λοιπά έξοδα (Other expenses)"
    "65": "Τόκοι και συναφή έξοδα (Interest and related)"
    "66": "Αποσβέσεις (Depreciation)"
    
  class_7_income:
    "70": "Πωλήσεις εμπορευμάτων (Sales of merchandise)"
    "71": "Πωλήσεις προϊόντων (Sales of finished goods)"
    "73": "Πωλήσεις υπηρεσιών (Service revenue)"
    "74": "Επιχορηγήσεις - επιδοτήσεις (Grants and subsidies)"
    "75": "Λοιπά έσοδα (Other income)"
    "76": "Έσοδα κεφαλαίων (Investment income)"
```

### P&L Structure — Αποτελέσματα Χρήσεως

```yaml
PL_Structure:
  revenue:
    label_gr: "Κύκλος εργασιών"
    label_en: "Revenue / Turnover"
    accounts: ["70", "71", "73"]
    
  other_income:
    label_gr: "Λοιπά συν