Türkiye KDV / Stopaj Hesaplama
Türkiye'de geçerli KDV oranları (2026 itibarıyla %1, %10, %20) ve stopaj/tevkifat hesaplamalarını doğru ve gösterilebilir biçimde yapar. Hesaplamalar için scripts/kdv.py yardımcı betiğini kullanabilir.
Ne zaman kullanılır
- KDV hariç tutardan KDV dahil tutara (veya tersine) geçmek
- Bir fiyatın içindeki KDV tutarını ayrıştırmak
- Doğru oranı seçmek (temel gıda %1, belirli hizmetler %10, genel %20)
- Stopaj/gelir vergisi tevkifatı sonrası net/brüt bulmak
Temel formüller
- KDV hariçten dahile:
dahil = haric * (1 + oran) - KDV dahilden harice:
haric = dahil / (1 + oran) - Dahil tutardaki KDV:
kdv = dahil - dahil / (1 + oran) - KDV tutarı (hariçten):
kdv = haric * oran - Stopaj (brütten net):
net = brut * (1 - stopaj_orani);kesinti = brut * stopaj_orani
Oranlar ondalık olarak: %20 → 0.20, %10 → 0.10, %1 → 0.01.
Yardımcı betik (scripts/kdv.py)
Hesabı elle yapmak yerine, doğruluk için betiği çağır:
# KDV hariç 1000 TL, oran %20 -> dahil tutar ve KDV
python3 scripts/kdv.py haric-to-dahil 1000 20
# KDV dahil 1200 TL, oran %20 -> hariç tutar ve içindeki KDV
python3 scripts/kdv.py dahil-to-haric 1200 20
# Brüt 10000 TL üzerinden %20 stopaj
python3 scripts/kdv.py stopaj 10000 20
Betik, tutarları 2 ondalık basamağa yuvarlayıp KDV matrahını, KDV tutarını ve toplamı yazdırır.
Girdi doğrulama
Betik geçersiz girdileri reddeder ve stderr'e Türkçe hata yazıp çıkış kodu 2 döndürür:
- Tutar negatif olamaz (KDV/stopaj için anlamsız).
- Oran %0 ile %100 arasında olmalı (negatif veya aşırı oranlar reddedilir;
-100oranı ayrıca sıfıra bölme hatasını önler). nan/infgibi sonlu olmayan değerler reddedilir.
Testler: cd scripts && python3 test_kdv.py
Oran seçimi (özet rehber)
- %1: Temel gıda maddeleri, gazete/dergi, bazı tarımsal ürünler, ikinci el araç (KDV mükellefinden) — duruma göre.
- %10: Belirli gıda ve hizmetler, tekstil, konaklama, bazı sağlık hizmetleri.
- %20: Genel oran; çoğu mal ve hizmet.
Oran mevzuata ve ürün/hizmet sınıfına göre değişir. Emin değilsen kullanıcıya hangi oranı varsaydığını açıkça belirt ve doğrulamasını öner.
Çıktı beklentisi
- Matrah, oran, KDV tutarı ve toplamı net biçimde göster (mümkünse küçük tablo).
- Para birimini (TL) ve yuvarlamayı belirt.
- Birden fazla kalem varsa satır satır göster, sonra topla.
- Hesabı betikle yaptıysan komutu ve sonucu birlikte ver.
Örnek
İstek: "KDV hariç 1.000 TL'lik danışmanlık, %20 KDV. Toplam ne olur?"
Çıktı:
| Kalem | Tutar |
|---|---|
| Matrah (KDV hariç) | 1.000,00 TL |
| KDV (%20) | 200,00 TL |
| Genel toplam | 1.200,00 TL |