greek-financial-statements

TotalClaw 作者 openclaw-greek-accounting v1.0.0

希腊企业财务报表生成技能,支持损益表、资产负债表、增值税摘要,集成 ΕΓΛΣ 科目表。完整性关卡防止不完整输出,支持版本管理与双语报表。

安装 / 下载方式

TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~satoshistackalotto-greek-financial-statements
cURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~satoshistackalotto-greek-financial-statements/file -o satoshistackalotto-greek-financial-statements.md
## 概述(中文)

希腊企业财务报表生成技能,支持损益表、资产负债表、增值税摘要,集成 ΕΓΛΣ 科目表。完整性关卡防止不完整输出,支持版本管理与双语报表。

## 技能正文

# 希腊财务报表

本技能为希腊企业生成专业财务报表,集成 ΕΓΛΣ(Ελληνικό Γενικό Λογιστικό Σχέδιο — 希腊通用会计科目表),并强制执行严格的完整性关卡,防止不完整或不准确的输出。每份报表均版本化、双语(面向客户用希腊语,内部用英语),并包含完整审计追踪。


## 安装配置

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

无需外部凭证。从 OPENCLAW_DATA_DIR 中的数据生成财务报表(损益表、资产负债表、现金流量表)。包含完整性关卡,若源数据不完整则阻止生成。


## 核心理念

- **完整性优先**:源数据不完整时绝不生成报表——停止并报告阻塞项
- **ΕΓΛΣ 原生**:所有科目按希腊会计科目表标准分类
- **版本化且不可变**:一经发布永不覆盖——修订创建新版本
- **双语输出**:面向客户的文档用希腊语标签,内部使用英语
- **资产负债表必须平衡**:资产必须等于权益加负债——任何不匹配即停止
- **人工监督**:所有生成的报表均为草稿,须经高级会计师审核发布后生效

## OpenClaw 命令

### 报表生成
```bash
# 生成完整财务报表包(损益表 + 资产负债表 + 增值税摘要)
openclaw statements generate --afm EL123456789 --period 2026-01

# 生成特定报表类型
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

# 强制部分生成(需明确人工确认)
openclaw statements generate --afm EL123456789 --period 2026-01 --force-partial --confirm
```

### 完整性与就绪检查
```bash
# 检查单个客户就绪状态
openclaw statements readiness --afm EL123456789 --period 2026-01

# 检查所有活跃客户就绪状态
openclaw statements readiness-all --period 2026-01

# 显示客户具体阻塞项
openclaw statements blockers --afm EL123456789 --period 2026-01
```

### 修订与版本管理
```bash
# 对现有报表创建修订
openclaw statements amend --afm EL123456789 --period 2025-10 --reason "Late supplier invoice discovered"

# 查看客户期间版本历史
openclaw statements versions --afm EL123456789 --period 2025-10

# 对比两个版本
openclaw statements diff --afm EL123456789 --period 2025-10 --v1 1 --v2 2
```

### 期间对比与分析
```bash
# 将当前期间与去年同期对比
openclaw statements compare --afm EL123456789 --period 2026-01 --vs 2025-01

# 将当前期间与上一期间对比
openclaw statements compare --afm EL123456789 --period 2026-01 --vs 2025-12

# 标记显著差异(默认阈值:15%)
openclaw statements variance-report --afm EL123456789 --period 2026-01 --threshold 15
```

### 输出与分发
```bash
# 生成面向客户的 PDF 包
openclaw statements export-pdf --afm EL123456789 --period 2026-01 --language greek

# 生成双语 PDF(希腊语为主,英语注释)
openclaw statements export-pdf --afm EL123456789 --period 2026-01 --bilingual

# 通过沟通引擎排队发送报表给客户
openclaw statements send-to-client --afm EL123456789 --period 2026-01 --via email
```

## 完整性关卡

完整性关卡在每次报表生成前自动运行,检查所有必需数据源,若有缺失则停止生成。未经 `--force-partial --confirm` 无法绕过。

### 关卡检查项

```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"
```

### 关卡输出

被阻止时:
```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."
}
```

被阻止结果记录到 `/data/memory/failures/`,`failure_type: completeness_gate_failed`。

## ΕΓΛΣ — 希腊会计科目表集成

所有财务报表使用希腊通用会计科目表(ΕΓΛΣ)分类体系,科目代码直接映射到标准希腊会计类别。

### 科目类别

```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)"
```

### 损益表结构 — Αποτελέσματα Χρήσεως

```yaml
PL_Structure:
  revenue:
    label_gr: "Κύκλος εργασιών"
    label_en: "Revenue / Turnover"
    accounts: ["70", "71", "73"]
    
  other_income:
    label_gr: "Λοιπά συνήθη έσοδα"
    label_en: "Other ordinary income"
    accounts: ["74", "75", "76"]
    
  cost_of_sales:
    label_gr: "Κόστος πωλήσεων"
    label_en: "Cost of sales"
    accounts: ["60", "61"]
    
  gross_profit:
    label_gr: "Μικτό κέρδος"
    label_en: "Gross profit"
    calculation: "revenue + other_income - cost_of_sales"
    
  operating_expenses:
    label_gr: "Λειτουργικά έξοδα"
    label_en: "Operating expenses"
    accounts: ["62", "63", "64", "66"]
    
  operating_profit:
    label_gr: "Λειτουργικά αποτελέσματα"
    label_en: "Operating profit"
    calculation: "gross_profit - operating_expenses"
    
  financial_expenses:
    label_gr: "Χρηματοοικονομικά έξοδα"
    label_en: "Financial expenses"
    accounts: ["65"]
    
  net_profit_before_tax:
    label_gr: "Κέρδη προ φόρων"
    label_en: "Net profit before tax"
    calculation: "operating_profit - financial_expenses"
    
  income_tax:
    label_gr: "Φόρος εισοδήματος"
    label_en: "Income tax"
    rate: "22% for AE/EPE, graduated for OE/EE"
    
  net_profit:
    label_gr: "Καθαρά κέρδη μετά φόρων"
    label_en: "Net profit after tax"
    calculation: "net_profit_before_tax - income_tax"
```

### 资产负债表结构 — Ισολογισμός

```yaml
Balance_Sheet_Structure:
  assets:
    label_gr: "ΕΝΕΡΓΗΤΙΚΟ"
    label_en: "ASSETS"
    
    fixed_assets:
      label_gr: "Πάγια στοιχεία ενεργητικού"
      label_en: "Fixed assets"
      accounts: ["10", "11", "12", "13", "14", "16"]
      show: "gross_value, accumulated_depreciation, net_book_value"
      
    current_assets:
      label_gr: "Κυκλοφοριακά στοιχεία ενεργητικού"
      label_en: "Current assets