Türkiye'de bir WooCommerce mağazası işletiyorsanız, ürün fiyatlarını doğru göstermek ile vergiyi doğru hesaplamak birbirinden farklı iki iştir. Müşteri sepette 1.200 TL görüyorsa, bu tutarın içinde ne kadar KDV olduğu, faturaya nasıl yansıyacağı ve raf fiyatının vergiyle mi vergisiz mi girildiği tamamen sizin yaptığınız ayarlara bağlıdır. Yanlış yapılandırılmış bir vergi ayarı, ya müşteriye beklediğinden fazla ödeme yaptırır ya da sizi her satışta cebinizden KDV ödemek zorunda bırakır. İkisi de mağazanın kârlılığını doğrudan etkiler.
Bu rehberde WooCommerce'in vergi motorunu sıfırdan, Türkiye şartlarına göre yapılandıracağız: vergiyi etkinleştirmekten başlayıp fiyatların KDV dahil mi hariç mi girileceğine, standart ve indirimli vergi sınıflarına, oran tablosunun nasıl doldurulacağına, sepet ve ödeme sayfasında verginin nasıl gösterileceğine ve son olarak resmi e-fatura entegrasyonunun neden ayrı bir katman olduğuna kadar ilerleyeceğiz. Amacımız, ayarları bir kez doğru kurup bir daha geriye dönüp bakmak zorunda kalmayacağınız bir düzen oluşturmak.
Vergi Özelliğini Etkinleştirmek#
WooCommerce kurulumu tamamlandığında vergi hesaplaması varsayılan olarak kapalı gelir. Bu bilinçli bir tercihtir; her ülkenin vergi kuralı farklı olduğu için WooCommerce hiçbir varsayım yapmaz ve kararı size bırakır. İlk yapmanız gereken bu motoru açmaktır.
Yönetim panelinde WooCommerce > Ayarlar > Genel sekmesine gidin. Burada "Vergileri Etkinleştir" (Enable taxes) kutucuğunu işaretleyip kaydedin. Bu kutucuğu işaretlediğiniz anda ayar menüsünde daha önce görünmeyen yeni bir Vergi sekmesi belirir; asıl yapılandırmanın büyük kısmını orada yapacağız.
Etkinleştirmeden önce dikkat etmeniz gereken bir nokta var: mağazanıza daha önce ürün eklediyseniz ve fiyatları KDV hakkında hiç düşünmeden girdiyseniz, vergiyi açtıktan sonra bu fiyatların nasıl yorumlanacağı bir sonraki bölümdeki "fiyata dahil mi hariç mi" ayarına bağlı kalacaktır. Bu yüzden ürünleri toplu girmeden önce vergi ayarlarını netleştirmek, sonradan yüzlerce fiyatı elle düzeltmekten çok daha kolaydır.
Eğer mağazanız henüz kurulum aşamasındaysa ve WooCommerce'e yeni başlıyorsanız, önce WooCommerce ile e-ticaret sitesi kurma rehberindeki temel adımları tamamlamanızı, ardından bu yazıya dönmenizi öneririm. Vergi ayarı, ürün ve ödeme yapısı oturduktan sonra ele alınması en sağlıklı konudur.
Fiyatları KDV Dahil mi Yoksa Hariç mi Girmeli?#
Bu, tüm vergi yapılandırmasının en kritik kararıdır ve WooCommerce Vergi sekmesinde "Fiyatları vergi dahil mi girdiniz?" (Prices entered with tax) seçeneğiyle belirlenir. İki seçenek vardır: "Evet, fiyatları vergi dahil gireceğim" ve "Hayır, fiyatları vergi hariç gireceğim". Türkiye'deki B2C (son tüketiciye satış yapan) mağazaların büyük çoğunluğu için doğru cevap vergi dahiltir.
Nedenini bir örnekle açalım. Diyelim ki bir ürünü rafta 120 TL olarak göstermek istiyorsunuz ve bu ürün %20 KDV'ye tabi.
- Vergi dahil seçerseniz: Ürün fiyatı alanına
120yazarsınız. WooCommerce bu 120 TL'nin içinden KDV'yi ayrıştırır. Müşteri 120 TL öder, faturada 100 TL mal bedeli + 20 TL KDV görünür. Raf fiyatı her zaman tam istediğiniz gibi, yuvarlak durur. - Vergi hariç seçerseniz: Ürün fiyatı alanına
100yazarsınız. WooCommerce ödeme anında üzerine %20 ekler ve müşteri 120 TL öder. Ama ürün listelerinde vergi gösterimini "hariç" bıraktıysanız müşteri rafta 100 TL görür, sepette 120 TL'ye çıkar; bu da alışverişi terk oranını artıran bir sürpriz yaratır.
Aşağıdaki tablo iki yaklaşımı özetliyor:
| Kriter | Vergi Dahil Girme | Vergi Hariç Girme |
|---|---|---|
| Kimin için uygun | Son tüketici (B2C) mağazaları | Toptan / B2B satış |
| Fiyat alanına yazılan | Nihai satış fiyatı (120) | Vergisiz taban (100) |
| Raf fiyatı yuvarlaklığı | Kontrol sizde, temiz görünür | Vergi eklenince küsuratlı çıkabilir |
| Müşteri sürprizi riski | Yok | Sepette fiyat artışı olarak görünür |
Genel kural şudur: Türkiye'de nihai tüketiciye satış yapıyorsanız fiyatları KDV dahil girin. Yalnızca kurumsal müşterilere, vergi mükelleflerine toptan satış yapan bir yapıysanız vergi hariç girmeyi değerlendirebilirsiniz. Karışık bir müşteri kitleniz varsa (hem bireysel hem kurumsal), fiyatları dahil girip gösterimi rol bazında ayarlamak genelde en az sorun çıkaran yoldur.
Standart ve İndirimli Vergi Sınıfları#
WooCommerce, her ürüne tek bir sabit oran uygulamaz; bunun yerine vergi sınıfı (tax class) kavramını kullanır. Vergi sınıfı, "bu ürün hangi oran tablosuna tabi?" sorusunun cevabıdır. Kutudan çıktığı haliyle üç sınıf gelir:
- Standart (Standard) — varsayılan sınıf. Aksini belirtmediğiniz her ürün buraya düşer.
- İndirimli oran (Reduced rate) — düşük KDV'ye tabi ürünler için.
- Sıfır oran (Zero rate) — vergiden muaf veya %0 KDV'li ürünler için.
Türkiye'de KDV oranları ürün grubuna göre değişir. Bu ayrımı WooCommerce'in sınıflarıyla şöyle eşleştirmek pratik bir yöntemdir:
| Vergi Sınıfı | Tipik Kullanım | Örnek Oran |
|---|---|---|
| Standart | Elektronik, giyim, genel ürünler | %20 |
| İndirimli oran | Gıda, kitap, bazı temel ürünler | %10 veya %1 |
| Sıfır oran | İhracat, muaf ürünler | %0 |
Kendi ürün kataloğunuzda birden fazla KDV oranı varsa, ihtiyacınıza göre yeni vergi sınıfı da ekleyebilirsiniz. WooCommerce > Ayarlar > Vergi sekmesindeki "Ek vergi sınıfları" (Additional tax classes) kutusuna her satıra bir sınıf adı yazarak yeni sınıflar tanımlarsınız. Örneğin gıda satan bir mağaza şöyle bir liste tutabilir:
Indirimli Oran
Sifir Oran
Ozel Iletisim Vergisi
Her yeni sınıf, ayar menüsünde kendi oran tablosu sekmesini açar. Bir ürünü belirli bir sınıfa atamak için ürün düzenleme ekranında Ürün verisi > Genel > Vergi sınıfı alanından ilgili sınıfı seçmeniz yeterlidir. Ürün, o sınıfın oran tablosundaki kurala göre vergilendirilir.
KDV Oran Tablosunu Oluşturmak#
Sınıfları tanımladıktan sonra sıra her sınıfın içine gerçek oranları girmeye gelir. WooCommerce > Ayarlar > Vergi > Standart oranlar (Standard rates) sekmesine girin ve "Satır ekle" (Insert row) butonuyla yeni bir oran satırı oluşturun. Bir oran satırı şu sütunlardan oluşur:
- Ülke kodu — Türkiye için
TR. Boş bırakılırsa tüm ülkelere uygulanır. - Eyalet/Bölge kodu — Türkiye için genelde boş bırakılır (il bazlı KDV yoktur).
- Posta kodu — genelde boş.
- Şehir — genelde boş.
- Oran % — vergi yüzdesi. %20 için
20.0000yazın. - Vergi adı — faturada ve sepette görünecek etiket, örneğin
KDV. - Öncelik — aynı bölgeye birden fazla vergi uygulanacaksa sıralama; tek KDV için
1bırakın. - Bileşik (Compound) — vergi üstüne vergi hesaplanacaksa işaretlenir; standart KDV'de işaretlenmez.
- Kargo (Shipping) — kargo ücretine de bu vergi uygulanacaksa işaretli kalmalıdır.
Türkiye için tipik bir standart oran satırı şöyle görünür:
Ulke: TR | Oran: 20.0000 | Ad: KDV | Oncelik: 1 | Bilesik: hayir | Kargo: evet
Aynı işlemi indirimli oran sekmesinde %10 veya %1 için tekrarlarsınız. Çok sayıda oranı elle girmek yerine WooCommerce'in CSV içe aktarma özelliğini de kullanabilirsiniz; oran sekmesinin altındaki "CSV içe aktar" bağlantısı, aşağıdaki gibi bir dosyayı kabul eder:
country,state,postcode,city,rate,name,priority,compound,shipping
TR,,,,20.0000,KDV,1,0,1
Oranları girdikten sonra mutlaka gerçek bir test siparişi oluşturup sepette hesaplamayı doğrulayın. Yaygın bir hata, "Kargo" kutusunu unutup kargo bedelini vergisiz bırakmak veya oranı 20 yerine 0.20 gibi yanlış formatta yazmaktır — WooCommerce oranı yüzde olarak bekler, ondalık kesir olarak değil.
Vergi hesaplamasının "hangi adrese göre" yapılacağını da unutmayın. Ayarlar > Vergi sekmesindeki "Vergiyi şuna göre hesapla" (Calculate tax based on) seçeneği; müşterinin fatura adresi, teslimat adresi veya mağaza adresi arasından seçim yapmanızı sağlar. Türkiye içi tek oranlı bir yapıda hangisini seçtiğiniz sonucu değiştirmez, ama yurt dışına da satış yapıyorsanız bu ayar kritik hale gelir.
Sepet ve Ödeme Sayfasında Vergi Gösterimi#
Oranlar doğru hesaplansa bile, müşterinin sepette ne gördüğü ayrı bir ayardır. WooCommerce Vergi sekmesinin alt kısmındaki gösterim (display) ayarları, verginin fiyatlara nasıl yansıtılacağını belirler ve müşteri deneyimini doğrudan etkiler.
Üç ana ayar vardır:
- Mağazada fiyat gösterimi (Display prices in the shop) — ürün listelerinde ve ürün sayfasında fiyatın "Vergi dahil" mi "Vergi hariç" mi görüneceği.
- Sepet ve ödemede fiyat gösterimi (Display prices during cart and checkout) — sepet ve ödeme adımlarında aynı seçim.
- Vergi toplamını göster (Display tax totals) — verginin tek kalem olarak mı yoksa her oran için ayrı satır olarak mı listeleneceği.
Türkiye'deki bir B2C mağaza için önerilen kombinasyon nettir: hem mağazada hem sepette "Vergi dahil" gösterin. Böylece müşteri baştan sona aynı fiyatı görür, sepette sürpriz bir artış yaşamaz. Vergi toplamı satırında ise "Tek toplam olarak göster" seçeneği, faturada KDV: 20,00 TL gibi temiz bir kalem oluşturur.
Aşağıdaki tablo iki tipik senaryoyu karşılaştırır:
| Ayar | B2C (bireysel) mağaza | B2B (kurumsal) mağaza |
|---|---|---|
| Mağazada fiyat | Vergi dahil | Vergi hariç |
| Sepette fiyat | Vergi dahil | Vergi hariç |
| Vergi toplamı | Tek toplam (KDV) | Oran bazlı ayrık |
| Amaç | Sürprizsiz nihai fiyat | Vergisiz taban + net KDV |
Vergi etiketinin yanında bir açıklama metni de gösterebilirsiniz. "Fiyat gösterim eki" (Price display suffix) alanına örneğin (KDV Dahil) yazarsanız, tüm fiyatların yanında bu ibare belirir. Dinamik değer de kullanılabilir; {price_including_tax} gibi yer tutucular WooCommerce tarafından otomatik doldurulur. Küçük bir dokunuş gibi görünse de, "KDV Dahil" ibaresi müşterinin fiyat konusunda kafasının rahat olmasını sağlar ve destek taleplerini azaltır.
Bir uyarı: fiyat gösterimini değiştirdiğinizde, sayfa önbelleği (cache) eski fiyatları göstermeye devam edebilir. Bir önbellekleme eklentisi veya sunucu tarafı cache kullanıyorsanız, ayarları değiştirdikten sonra önbelleği temizlemeyi unutmayın. Performans ve önbellek eklentileri konusunda WordPress eklenti önerileri rehberi işinize yarayacaktır.
Kargo, Kupon ve Küsurat Yönetimi#
Vergi yalnızca ürün bedelini değil, çoğu zaman kargo ücretini de kapsar. Yukarıda oran satırındaki "Kargo" kutusundan bahsetmiştik; bu kutu işaretliyse WooCommerce kargo bedeline de aynı oranı uygular. Türkiye'de kargo hizmeti KDV'ye tabi olduğu için bu kutuyu genelde işaretli tutmak doğrudur. Ancak kargo için farklı bir KDV oranı geçerliyse, kargo yöntemine ayrı bir vergi sınıfı atayabilirsiniz.
Kuponlarda da dikkat edilecek bir nokta var. WooCommerce'te bir kupon oluştururken "İndirimden önce vergiyi hesapla" davranışı, indirimin brüt fiyata mı yoksa vergisiz tabana mı uygulanacağını etkiler. Yüzde bazlı bir indirim kuponu (örneğin %10) verirken, indirimin KDV dahil tutar üzerinden mi yoksa mal bedeli üzerinden mi işleyeceğini bir test siparişiyle doğrulamak, sonradan "hesap tutmuyor" şikayetlerini önler.
Bir başka klasik sorun küsurat/yuvarlamadır. Vergi dahil fiyatlarla çalışırken, WooCommerce her satırın vergisini hesaplar ve toplarken kuruş düzeyinde yuvarlama farkları oluşabilir. Bunu tutarlı kılmak için Ayarlar > Vergi sekmesindeki "Alt toplam düzeyinde yuvarla" (Round tax at subtotal level) seçeneğini kullanın. Bu seçenek işaretliyse WooCommerce vergiyi her satırda ayrı ayrı değil, sepet alt toplamı üzerinden bir kez yuvarlar; bu da faturadaki toplamın beklenen tutarla birebir örtüşmesini sağlar. Muhasebe programınızla veya e-fatura sağlayıcınızla tutarlılık için bu ayarı sağlayıcınızın yuvarlama mantığına göre seçmeniz önemlidir.
Küçük bir örnekle netleştirelim. 100 TL + 100 TL iki üründe %20 KDV:
- Satır bazlı yuvarlama: her satırda 20,00 + 20,00 = 40,00 TL KDV.
- Alt toplam bazlı yuvarlama: 200 TL üzerinden bir kez %20 = 40,00 TL.
Bu örnekte fark yok; ama fiyatlar 33,33 TL gibi küsuratlı olduğunda satır bazlı ve alt toplam bazlı yuvarlama birkaç kuruş fark üretebilir. Muhasebe tarafında sıfır fark isteniyorsa alt toplam yuvarlaması genelde daha güvenli tercihtir.
E-Fatura ve Yasal Entegrasyon İhtiyacı#
Burada net bir sınır çizmek gerekir: WooCommerce'in vergi motoru bir hesaplama ve gösterim aracıdır, resmi bir fatura düzenleme aracı değil. Yani WooCommerce müşteriye sepette KDV'yi doğru gösterebilir, sipariş özetinde vergiyi ayırabilir; ancak Türkiye'de yasal olarak geçerli bir e-Arşiv Fatura veya e-Fatura kesmek, GİB (Gelir İdaresi Başkanlığı) sistemine bağlı ayrı bir entegrasyon gerektirir.
Pratikte iş akışı şöyle işler: Müşteri WooCommerce'te siparişi tamamlar, WooCommerce KDV'yi hesaplar ve sipariş verisini oluşturur. Ardından bir e-fatura entegrasyon eklentisi (özel entegratör firmaların WooCommerce eklentileri) bu sipariş verisini alır, GİB uyumlu bir fatura oluşturur ve müşteriye resmi belgeyi gönderir. WooCommerce'teki vergi ayarlarınızın doğru olması, bu entegrasyonun da doğru faturaları üretmesinin ön koşuludur; çünkü entegratör, WooCommerce'in hesapladığı mal bedeli ve KDV tutarlarını temel alır.
Bu yüzden şu sıralamaya dikkat edin:
- Önce WooCommerce vergi ayarlarını (oran, sınıf, dahil/hariç) doğru kurun.
- Bir test siparişiyle mal bedeli + KDV ayrışmasının doğru olduğunu görün.
- Sonra e-fatura entegratörünüzün eklentisini kurup WooCommerce verisiyle eşleştirin.
- Entegratörün ürettiği ilk resmi faturayı, WooCommerce sipariş özetiyle satır satır karşılaştırın.
Entegrasyon eklentileri düzenli olarak GİB servislerine bağlanır ve arka planda dış API çağrıları yapar. Bu tür entegrasyonların kesintisiz çalışması için kararlı bir sunucu altyapısı önemlidir; yoğun sipariş alan bir mağazada fatura kuyruğunun takılmaması adına yeterli kaynağa sahip bir WordPress hosting veya kontrolü tamamen elinizde tutmak isterseniz bir sanal sunucu tercih etmek mantıklıdır. Ayrıca ödeme ve fatura verisinin güvenliği için mağazanızda geçerli bir SSL sertifikası ve düzenli yedekleme planı bulunması, yasal ve teknik açıdan olmazsa olmazdır.
Son olarak, vergi mevzuatı değişebilir. KDV oranları resmi düzenlemelerle güncellendiğinde, WooCommerce oran tablonuzu ve gerekiyorsa ürün fiyatlarınızı elle güncellemeniz gerekir. Bu yüzden vergi ayarlarını "bir kez kur, unut" değil, mevzuat değişikliklerinde gözden geçirilecek canlı bir yapı olarak görmek en doğrusudur.
Sıkça Sorulan Sorular#
WooCommerce fiyatlarını KDV dahil mi girmeliyim?#
Türkiye'de son tüketiciye satış yapan bir mağazaysanız fiyatları KDV dahil girmeniz önerilir. Böylece raf fiyatını istediğiniz gibi yuvarlak tutar, müşteri sepette sürpriz bir fiyat artışıyla karşılaşmaz ve WooCommerce girdiğiniz tutarın içinden KDV'yi otomatik ayrıştırır. Yalnızca kurumsal müşterilere toptan satış yapıyorsanız vergi hariç girmeyi değerlendirebilirsiniz.
Farklı ürünlere farklı KDV oranı nasıl uygularım?#
WooCommerce'in vergi sınıfı (tax class) sistemini kullanırsınız. Standart, indirimli ve sıfır oran sınıflarına farklı oran tabloları tanımlar, ardından her ürünü düzenleme ekranındaki "Vergi sınıfı" alanından ilgili sınıfa atarsınız. Örneğin elektronik ürünleri standart %20 sınıfına, gıda ürünlerini indirimli %10 sınıfına koyabilir, hatta gerekirse ek vergi sınıfları oluşturabilirsiniz.
Kargo ücretine de KDV uygulanıyor mu?#
Uyguluyor, çünkü vergi oran satırındaki "Kargo" kutusu varsayılan olarak işaretlidir ve kargo bedeline de aynı oranı yansıtır. Türkiye'de kargo hizmeti KDV'ye tabi olduğu için bu kutuyu işaretli tutmak genelde doğrudur. Kargo için farklı bir oran geçerliyse, kargo yöntemine ayrı bir vergi sınıfı atayarak bunu ayarlayabilirsiniz.
WooCommerce tek başına e-fatura kesebilir mi?#
Kesemez. WooCommerce yalnızca KDV'yi hesaplar ve sipariş özetinde gösterir; Türkiye'de yasal olarak geçerli bir e-Arşiv veya e-Fatura kesmek için GİB sistemine bağlı bir entegratör eklentisi gerekir. Bu eklenti, WooCommerce'in hesapladığı mal bedeli ve KDV tutarını alıp resmi faturayı oluşturur, dolayısıyla önce WooCommerce vergi ayarlarınızın doğru olması şarttır.
Sepetteki toplam ile faturadaki tutar kuruş farkı gösteriyor, neden?#
Bu genellikle yuvarlama (küsurat) farkından kaynaklanır. WooCommerce vergiyi her satırda ayrı hesaplayıp toplarken kuruş düzeyinde farklar oluşabilir. Ayarlar bölümündeki "Alt toplam düzeyinde yuvarla" seçeneğini etkinleştirirseniz vergi, sepet alt toplamı üzerinden bir kez yuvarlanır ve toplam beklenen tutarla birebir örtüşür. Muhasebe veya e-fatura sağlayıcınızın yuvarlama mantığıyla uyumlu olan seçeneği tercih edin.
Vergi ayarını değiştirdim ama fiyatlar güncellenmedi, ne yapmalıyım?#
Büyük ihtimalle sayfa önbelleği eski fiyatları gösteriyordur. Bir önbellekleme eklentisi veya sunucu tarafı cache kullanıyorsanız, vergi gösterim ayarlarını değiştirdikten sonra önbelleği temizleyin. Ardından tarayıcınızda sert yenileme yapıp bir test siparişiyle hesaplamayı doğrulayın; sorun sürüyorsa oran satırındaki değerlerin ve dahil/hariç ayarının doğru olduğunu tekrar kontrol edin.
Kapanış#
WooCommerce'te vergi yapılandırması, tek seferlik bir ayar ekranından çok daha fazlasıdır: fiyatı dahil mi hariç mi gireceğiniz, hangi ürünün hangi sınıfa düşeceği, oran tablosunun doğruluğu, sepet gösterimi ve e-fatura entegrasyonu bir bütün olarak çalıştığında mağazanız hem müşteriye net bir fiyat sunar hem de sizi vergi sürprizlerinden korur. Bu adımları bir kez doğru kurup bir test siparişiyle doğruladığınızda, günlük satış akışında vergi tarafı arka planda sorunsuz işler.
Böyle bir yapının sağlam çalışması için altyapının da güvenilir olması gerekir. E-fatura entegrasyonu, ödeme akışı ve yoğun sepet trafiği kaynak ister; mağazanızı büyütürken kaynak sıkışıklığı yaşamamak için performanslı WordPress hosting paketlerimize göz atabilir, tam kontrol ihtiyacında bir sanal sunucu tercih edebilirsiniz. Mağazanızın güvenliği için SSL sertifikası, verilerinizin korunması için düzenli yedekleme çözümlerimizi de aynı çatı altında değerlendirebilirsiniz. Doğru altyapı üzerinde doğru yapılandırılmış bir WooCommerce, hem sizin hem müşterinizin işini kolaylaştırır.