yakgelsin.com’u nasıl geliştirdik: bir yakacak firmasının e-ticareti

yakgelsin.com, Ödemiş’te kömür, odun, çam peleti ve soba satan bir yakacak firmasının online sipariş sitesi. Müşterimiz için geliştirdiğimiz bu iş, sıradan bir vitrin sitesinden fazlası olmak zorundaydı: Ürünler ağır, fiyatlar sık değişiyor, teslimat bölgeye göre farklılaşıyor ve müşterilerin önemli bir kısmı telefondan, kısa sürede karar veriyor. Bu yazıda verdiğimiz kararları ve her birinin nedenini anlatıyoruz.

Müşteri
Ödemiş/İzmir merkezli yakacak firması
Ürünler
Kömür, odun, çam peleti, mangal kömürü, soba ve aksesuar
Altyapı
Next.js, Supabase, Vercel
Dil
Türkçe ve İngilizce
Site
yakgelsin.com

İşin kendisi: ağır ürün, değişken fiyat, bölgesel teslimat

Yakacak satışı, kargo kutusuna sığan ürünlerin e-ticaretine benzemiyor. Bir sipariş çoğu zaman tonla ölçülüyor, firmanın kendi araçlarıyla adrese teslim ediliyor ve fiyatı mevsime, kura ve tedarike göre değişiyor. Bu yüzden işe tasarımdan değil, işletmenin günlük işleyişinden başladık: Siparişler nasıl alınıyor, kim teyit ediyor, hangi ürün hangi bölgeye araçla, hangisi kargoyla gidiyor?

Teknik tarafta sayfaları Next.js ile kurduk; siparişler, fiyat güncellemeleri ve başvurular Supabase veritabanında tutuluyor, site Vercel üzerinde yayınlanıyor. Kısacası sayfalar önceden hazırlanıp hızlı sunuluyor, değişen veriler ise ayrı ve korumalı bir veritabanında duruyor.

Fiyatı dürüst göstermek: KDV dahil tutar her zaman görünür

Sitenin ilk halinde ürün fiyatları KDV hariç görünüyor, ödeme adımında üstüne %20 ekleniyordu. Müşteri sepette beklemediği bir rakamla karşılaşıyordu; Google’ın alışveriş listelerinde gösterilen fiyatla ödeme sayfasındaki tutar da birbirini tutmuyordu.

Bunu tek bir kurala bağladık: Tahsil edilen her fiyat KDV dahildir ve bu tutar sitenin hiçbir yerinde atlanmaz. Ürün kartında ve sayfasında KDV hariç fiyatın yanında “KDV dahil” tutar da yazıyor; sepet ve ödeme sayfasında ara toplam, KDV ve genel toplam ayrı satırlarda görünüyor. Hesap tek bir yerden yapılıyor, böylece kart, sepet, ödeme ve Google’a giden ürün listesi aynı rakamı söylüyor.

Fiyatı yazılı olmayan ürün WhatsApp’a gidiyor

Bazı ürünlerin fiyatı o an kesinleşmemiş olabiliyor: yeni gelen bir parti, teyit bekleyen bir tedarik ya da paletli büyük alımlar gibi. Yanlış bir fiyatı sepete koymak, hem müşteriyle hem tüketici mevzuatıyla sorun çıkarır. Bu yüzden kural basit: Fiyatı panelde yazılı olan ürün sepete eklenir; yazılı değilse düğme kendiliğinden “Fiyat için WhatsApp”a döner. Bu kontrol yalnızca ekranda değil sunucuda da var; fiyatsız bir ürün sipariş olarak kaydedilemiyor.

WhatsApp, bu bölgedeki müşterilerin zaten kullandığı kanal. Sepetteki sipariş de WhatsApp mesajı olarak gönderilebiliyor, ama önce sipariş veritabanına kaydediliyor. Böylece mesaj yarıda kalsa bile işletmenin elinde sipariş kaydı bulunuyor.

Sipariş akışı ve güvenlik

Bir sitede en kolay atlanan nokta, tarayıcıdan gelen sepet tutarına güvenmektir. yakgelsin.com’da sipariş geldiğinde ürünler ve fiyatlar sunucuda katalogla karşılaştırılıyor, toplam yeniden hesaplanıyor; tutmayan bir sipariş işletmeye “kontrol edin” notuyla işaretli düşüyor. Müşteri verisi dışarıdan okunamıyor, yönetim işlemleri ayrı bir oturum ve hız sınırıyla korunuyor, kullandığımız çatının güvenlik güncellemelerini de çıktıkça uyguluyoruz.

Müşteri tarafında da iki küçük ama önemli kolaylık ekledik. Sipariş henüz “Alındı” aşamasındayken müşteri kendisine gelen güvenli bağlantıyla tek tıkla iptal edebiliyor; hazırlık başladıysa aynı bağlantı bir iptal talebine dönüşüyor. Kapıda ödemede nakit yanında kredi kartı da kabul ediliyor; bazı ürünler ise panelden “ön ödemeli” olarak işaretlenebiliyor ve o ürünlerde kapıda ödeme seçeneği kendiliğinden kapanıyor.

İşletme sahibi için panel: fiyatı değiştir, “yayınla”ya bas

Fiyatı haftada birkaç kez değişen bir işte, her güncelleme için yazılımcı aramak sürdürülebilir değil. Bu yüzden işletmeye bir yönetim paneli kurduk: fiyat, stok durumu (stokta, sınırlı stok, sipariş üzerine, tükendi), ürün fotoğrafı ve açıklaması buradan değiştiriliyor. Panelden yeni ürün de eklenebiliyor; taslak olarak hazırlanıp hazır olunca yayına alınıyor.

Değişiklikler anında değil, “Siteye yayınla” düğmesine basıldığında topluca canlıya çıkıyor. Bu bilinçli bir tercih: Sahibi birkaç ürünü birden düzenleyip kontrol edebiliyor, yarım kalmış bir fiyat müşteriye görünmüyor. Dövizle alınan ürünlerde kur da yalnızca yayın anında uygulanıyor. Siparişler, bayilik başvuruları ve kurumsal talepler aynı panelde listeleniyor.

Neden ilçe ilçe teslimat sayfaları?

Yakacak arayan biri çoğu zaman ürünle birlikte yerini de yazıyor: “Bornova odun”, “Kuşadası kömür fiyatı” gibi. Firma da kendi araçlarıyla İzmir ve çevre illere teslimat yapıyor. Bu yüzden ürün ve ilçe eşleşmeleri için teslimat sayfaları oluşturduk; hangi ilçelerin araçla teslim bölgesinde kaldığını tahmine değil, gerçek karayolu mesafesine göre belirledik. Araçla ulaşılamayan yerler ve küçük siparişler için kargo seçeneği ayrıca anlatılıyor.

Birbirinin kopyası yüzlerce sayfa hem okura hem arama motoruna değer katmaz. Bu yüzden İzmir, Aydın ve Muğla’nın ilçeleri için ayrı bölge metinleri yazdık, her ilçe sayfasına o yere özgü bilgiler ekledik. Öne çıkmasını istemediğimiz zayıf sayfaları arama dizininin dışında tuttuk.

Arama motoru ve Google Alışveriş

Bir site ayakta olsa da Google’ın onu doğru anlaması ayrı bir iş. Sitede yaptığımız kapsamlı bir denetimde eskiden beri duran ciddi bir hata bulduk: Sayfaların “asıl adres” etiketi (canonical) tüm alt sayfaları ana sayfaya gösteriyordu. Google’a kısaca “bu sayfanın aslı ana sayfadır” deniyordu; blog yazıları ve sıkça sorulan sorular bu yüzden dizine girmiyordu. Etiketi her sayfanın kendi adresini gösterecek şekilde düzelttik.

  • Sıkça sorulan sorular, Google’ın doğrudan okuyabileceği yapı verisiyle (FAQ şeması) sayfanın sunucu tarafında üretilen HTML’ine eklendi.
  • Google Merchant Center için ürünlerin fiyat, stok ve görsel bilgisini içeren bir ürün akışı (feed) hazırladık; böylece ürünler Google’ın ücretsiz alışveriş listelerine siteyle aynı fiyatla gidiyor.
  • Kömür, odun, pelet ve soba için müşterilerin gerçekten sorduğu sorulara cevap veren rehber yazıları yazdık; teknik değerleri ürün beyanlarıyla karşılaştırarak kontrol ettik.

Hız: ağır görseller ve telefon kullanıcıları

Ziyaretçilerin büyük kısmı telefondan geliyor. Ürün görsellerini modern WebP biçimine çevirdik; görsellerin toplam boyutu yaklaşık 23 MB’tan 5 MB’a indi. Ürün listesinde ilk 16 ürün hemen, devamı kaydırdıkça yükleniyor. Sayfa stillerini HTML’in içine gömdüğümüzde ürün listesinde ilk görüntünün ekrana gelme süresi ölçümlerimizde yaklaşık 3 saniyeden 1 saniyeye indi.

Müşteriyi geri getiren küçük özellikler

  • Sadakat damgası: Her teslim edilen siparişte müşterinin kartına damga ekleniyor; damga teslimde verildiği için iptal edilen siparişler sayılmıyor.
  • Bölgeye göre bildirim: İzin veren ziyaretçilere tarayıcı bildirimi gönderilebiliyor; kampanyalar yalnızca ilgili bölgeye gidiyor.
  • Bayilik başvurusu: Firmanın ürünlerini satmak isteyenler siteden başvuru bırakıyor, başvurular panelde toplanıyor.
  • Hesaplama araçları: Kaç ton kömür ya da hangi güçte soba gerektiğini hesaplayan sayfalar, müşterinin telefonla sormadan önce fikir sahibi olmasını sağlıyor.

Sahte rozetleri kaldırdık

Devraldığımız sitede doğrulanamayan müşteri yorumları, “binlerce müşteri” gibi ifadeler ve ürünlerde kalıcı olarak duran “Tükenmek üzere” rozetleri vardı. Bunları kaldırdık; stok durumu artık yalnızca panelden, gerçek duruma göre geliyor. Sitedeki iddiaları da tek tek gözden geçirip işletmenin teyit etmediği teslimat sözlerini metinlerden çıkardık. Kısa vadede daha az parlak görünen bir site, müşteri kapıda karşılaştığı durumla sayfada okuduğunun aynı olduğunu gördüğünde daha çok güven kazanıyor.

Bir e-ticaret sitesinde müşteriye en çok güven veren şey, ekranda gördüğü fiyatın, stoğun ve teslimat sözünün gerçeğe uymasıdır.

Bakım: yayından sonra da sürüyor

yakgelsin.com bir kez teslim edilip bırakılan bir iş olmadı. Sitede fiyat hesabı, sipariş kontrolü ve sayfa metinleri gibi kritik kurallar yaklaşık 2.900 otomatik testle korunuyor; bir değişiklik eski bir kuralı bozarsa yayından önce fark ediliyor. Sobalar, aksesuarlar ve yeni ilçe sayfaları gibi eklemeler bu güvenceyle yapılıyor.

Siz de benzer bir iş düşünüyorsanız

Ürünleriniz ağır, fiyatlarınız değişken ya da müşterileriniz çoğunlukla WhatsApp’tan yazıyorsa, hazır bir e-ticaret şablonu işinizi tam olarak karşılamayabilir. İşinizin nasıl yürüdüğünü birlikte konuşalım; info@rogday.com adresinden bize yazabilirsiniz. Bitmiş işi görmek isterseniz yakgelsin.com’a göz atabilirsiniz.

Diğer yazılar

  1. Küçük işletmeler için web sitesi rehberi: yaptırırken nelere bakmalıWeb sitesi ya da sipariş sitesi yaptıracak işletme sahibi için somut kontrol listesi: alan adı, erişim, hız, fiyat, Google, KVKK ve dürüst satış.
  2. e-Arşiv Fatura uygulamasını neden ve nasıl geliştirdikTelefondan GİB e-Arşiv portalı üzerinden fatura kesmeyi sağlayan uygulamamızı neden yaptık, hangi kararları verdik, nelerle uğraştık.
  3. Astral: motorcular için geliştirdiğimiz uygulamanın hikâyesiSürüş kaydı, konvoy, kaza algılama ve topluluk: Astral’ı geliştirirken aldığımız kararlar ve bu kararların nedenleri.