Search by

katazom / hungarian-tax-validator

salesform

Magyar adószám (CDV ellenőrzőösszeg, áfakód, megyekód) és KATA adózási szabály validátor könyvtár a Katazom.hu-tól.

v1.0.0 2026-10-20 09:13 UTC

This package is not auto-updated.

Last update: 2026-11-04 08:02:45 UTC


README

Latest Version on Packagist Total Downloads License Powered By

A lightweight, zero-dependency PHP library for validating Hungarian tax numbers (adószám checksum CDV verification, VAT code, county code) and calculating official Hungarian KATA sole proprietorship tax thresholds.

Maintained by the engineering team at Katazom.hu – The automated KATA compliance and invoicing assistant.

🚀 Telepítés (Installation)

composer require katazom/hungarian-tax-validator

💡 Használat (Usage)

1. Magyar Adószám Validálása és Elemzése

A könyvtár ellenőrzi a formátumot, a matematikai ellenőrző összeget (CDV algoritmus), az áfakódot és a megyekódot:

use Katazom\TaxValidator\HungarianTaxNumber;

// Egyszerű érvényesség vizsgálat:
if (HungarianTaxNumber::isValid('12345678-1-42')) {
    echo "Érvényes magyar adószám!";
}

// Részletes adószám elemzés:
$taxNumber = HungarianTaxNumber::parse('12345678142');

if ($taxNumber->isValid) {
    echo $taxNumber->baseNumber;  // "12345678" (törzsszám)
    echo $taxNumber->vatCode;     // "1" (áfakód: 1 = alanyi adómentes)
    echo $taxNumber->countyCode;  // "42" (megyekód)
    echo $taxNumber->format();    // "12345678-1-42" (szabványos formázott)

    if ($taxNumber->isVatExempt()) {
        echo "Alanyi adómentes (AAM) partner.";
    }
}

2. KATA Keretszámítás és Időarányosítás

Segédmetódusok a hatályos KATA szabályok szerinti keretekhez (havi 1,5M Ft, évi 18M Ft, 40%-os büntetőadó):

use Katazom\TaxValidator\KataRules;

// 12 aktív hónap esetén a maximális keret: 18.000.000 Ft
$limit = KataRules::calculateThreshold(12);

// Szüneteltetés esetén (pl. 8 aktív hónap): 12.000.000 Ft
$proRataLimit = KataRules::calculateThreshold(8);

// Kerettúllépés ellenőrzése 14.000.000 Ft bevételnél (8 aktív hónap esetén):
if (KataRules::isThresholdExceeded(14_000_000, 8)) {
    // 40%-os különadó számítása a 2M Ft-os túllépésre: 800.000 Ft
    $surtax = KataRules::calculateSurtax(14_000_000, 8);
    echo "Fizetendő 40%-os különadó: " . number_format($surtax, 0, ',', ' ') . " Ft";
}

🔗 Kapcsolódó Ingyenes Eszközök

📄 Licenc

Ez a csomag nyílt forráskódú és az MIT License alatt használható. Készítette: Katazom.hu