KMD + KMD INF + EC Sales List for EMTA
A complete Estonian VAT declaration workflow that produces all three filing components: the KMD (VAT return) with all 13 lines, the KMD INF annex with partner-level transaction details, and the EC Sales List (Form VD) for intra-community B2B supplies. Tax codes are dynamically discovered and classified — never hardcoded — so the plugin adapts to your specific tax code setup. Includes reverse charge handling, intra-community acquisition calculations, and VAT GL account reconciliation. Generates XML files ready for direct upload to the EMTA portal.
/prepare-vat-declarationExecute the full monthly VAT declaration workflow and generate XML files for EMTA. Discovers and classifies tax codes dynamically, fetches posted transactions, verifies coverage, calculates KMD Lines 1-13, aggregates KMD INF partners (threshold EUR 1,000), prepares EC Sales List, reconciles VAT GL accounts, and produces KMD/KMDINF/VD XML files.
/validate-vat-returnRun pre-submission validation checks without generating the full filing package. Checks: transaction completeness (no drafts, all tax codes assigned), KMD calculation integrity, KMD INF partner data, EC Sales List reconciliation, VAT GL reconciliation. Reports issues by severity (Blocker/Warning/Info).
/prepare-ec-sales-listPrepare the EC Sales List (Form VD) for intra-community B2B supplies. Discovers tax codes indicating IC supply, fetches AR invoices, groups by customer VAT number, classifies supply type (Goods/Services/Triangular), validates EU VAT numbers, and reconciles with KMD Lines 3.1/3.2.
Discover and classify tax codes dynamically — map each to the appropriate KMD line
Fetch all posted AR invoices, AP invoices, credit notes, and journal entries with VAT impact
Verify tax code coverage — flag any transaction lines with missing or inactive tax codes
Calculate KMD Lines 1-13: output VAT by rate, input VAT, reverse charge, IC acquisitions, adjustments, net VAT payable/overpaid
Prepare KMD INF Annex: group sales (Part A) and purchase (Part B) partners above EUR 1,000 threshold
Prepare EC Sales List (Form VD): identify intra-community supplies, classify type (Goods/Services/Triangular)
Reconcile calculated KMD amounts with GL VAT account balances
Generate XML files: KMD, KMD INF, and VD — ready for EMTA upload
Provide filing guidance — deadline is 20th of the following month
Every run must pass these checks before proceeding. If any checkpoint fails, the workflow stops and reports the issue.
All transactions for the period are posted (no drafts remain)
All transaction lines have tax codes assigned
KMD calculations balance: output VAT minus input VAT equals net VAT
KMD INF totals reconcile with KMD output VAT lines
EC Sales List reconciles with KMD Lines 3.1 (goods) and 3.2 (services)
Structured knowledge files that drive the plugin's logic. These contain formulas, templates, and regulatory rules — not hardcoded values.
tax-codes-ee.md
Dynamic tax code classification rules: check reporting_code_override, then classify by rate, reverse charge, recoverability, type, and scope
kmd-form-structure.md
Complete KMD form structure with Lines 1-13 formulas and transaction classification decision tree
kmd-inf-annex.md
KMD INF Part A (sales) and Part B (purchases) structure; EUR 1,000 threshold; registration code validation
ec-sales-list.md
Form VD structure for IC supplies; supply type classification (Goods/Services/Triangular); VAT number validation
vat-rates-ee.md
Estonian VAT rates (24% standard, 13%/9% reduced, zero-rated) and reverse charge rules
validation-checklist.md
Pre-submission validation checks with severity levels and resolution guidance
emta-filing-guide.md
Step-by-step EMTA portal filing instructions; deadline 20th of following month; digital signature requirement
This plugin is designed to work out-of-the-box with the Artifi MCP server for full automation — Claude fetches your data, runs calculations, validates results, and submits entries automatically.
You can also download and adapt it to your own needs. The skills, commands, validation logic, and reference data are all open source. Swap the MCP tool calls for your own backend, or use the reference files as standalone knowledge resources for your Claude projects.
Subscribe to new posts
Get notified when we publish new insights on AI-native finance.