Sistem entegrasyonu
Ayrı ayrı çalışan sistemleri birbirine bağlıyoruz: ödeme, kargo, muhasebe, ERP ve pazaryeri. Amaç aynı veriyi ikinci kez elle girmemek.
Entegrasyon neden gerekiyor
Çoğu şirkette veri tek yerde durmaz. Sipariş web sitesinden gelir, stok ayrı bir programda tutulur, fatura muhasebe yazılımında kesilir, kargo firmasının kendi ekranı vardır, pazaryeri siparişleri ise bambaşka bir panelden akar. Bu sistemlerin hiçbiri yanlış değildir; sorun, aralarında köprü olmadığı için aynı bilginin üç dört kez elle girilmesidir.
Elle girişin maliyeti yalnızca harcanan zaman değil. İki sistemdeki sayı farklı olduğunda hangisinin doğru olduğu tartışılır; satılmış bir ürün stokta görünmeye devam eder; kargo takip numarası müşteriye ulaşmaz; faturalanmamış sipariş gözden kaçar. Şirket büyüdükçe bu farkları kapatmak için ayrı bir iş gücü oluşur.
Entegrasyon bu köprüyü kurar. Doğru kurulduğunda bir sipariş geldiğinde stok düşer, kargo kaydı açılır, takip numarası müşteriye gider ve muhasebeye aktarılacak kayıt hazırlanır — kimse ikinci kez veri girmez. Yanlış kurulduğunda ise elle girişten daha kötüsü olur: iki sistem birbirine yanlış veri yazar ve hatayı bulmak zorlaşır. Bu yüzden entegrasyonun asıl işi veri taşımak değil, hata durumunda ne olacağına karar vermektir.
Hangi entegrasyonları yapıyoruz
Ödeme tarafında sanal POS ve ödeme kuruluşu entegrasyonları: ödeme alma, taksit seçenekleri, 3D doğrulama akışı, iptal ve iade çağrıları, ödeme sonucunun siparişe işlenmesi. Burada en çok dikkat edilmesi gereken nokta ödemenin alındığı ama siparişin yazılamadığı durumdur; bu ihtimali baştan ele almayan entegrasyon bir süre sonra kaybolan sipariş üretir.
Kargo tarafında gönderi oluşturma, barkod ve etiket alma, takip durumunun otomatik güncellenmesi ve teslim bilgisinin siparişe işlenmesi. Pazaryeri tarafında ürün ve fiyat gönderimi, stok eşitlemesi, sipariş çekme ve durum güncellemesi yapıyoruz; buradaki asıl zorluk pazaryerinin ürün modelinin sizin ürün modelinizle birebir aynı olmamasıdır, dolayısıyla iş bir alan eşleme çalışmasıyla başlar.
Muhasebe ve ERP tarafında cari hesap, ürün, fatura ve tahsilat kayıtlarının aktarılması. Kendi grubumuzda muhasebe ve e-fatura tarafını ayrı bir sistemle, kargo tarafını kargo firmasının servisiyle, bilgilendirme tarafını SMS ve WhatsApp servisleriyle entegre ederek işletiyoruz — yani bu entegrasyonları önce kendi üzerimizde çalıştırdık.
Bir sınırımızı baştan söylüyoruz: fatura kesme ve muhasebeleştirme işini üstlenmiyoruz. Geliştirdiğimiz sistemler faturanın kesilip kesilmediğini takip eder ve gereken kaydı muhasebe sistemine aktarır; faturayı kesen ve resmî kaydı tutan sistem ayrıdır. Bu bilinçli bir kapsam kararı.
Hata olduğunda ne oluyor
Entegrasyonun kalitesi her şeyin yolunda gittiği günde değil, karşı sistemin cevap vermediği günde belli olur. Servis kapalıysa, yavaşsa, beklenmeyen bir cevap döndüyse ya da aynı isteği iki kez aldıysa ne olacağına baştan karar verilmelidir. Bunu çözmek için kurduğumuz düzen şu: her istek bir kuyruğa yazılır, başarısız olan belirli aralıklarla yeniden denenir, aynı kaydın iki kez işlenmesi engellenir ve belirli sayıda denemeden sonra da başarısız olan kayıt bir listeye düşer.
O liste önemlidir, çünkü sessizce başarısız olan entegrasyon en pahalı entegrasyondur. Eşleşmeyen kayıtların görülebildiği bir ekran olmadan, sistemin çalışmadığı ancak bir müşteri aradığında anlaşılır. Bu yüzden her entegrasyona bir izleme ekranı ve eşleşmeyen kayıt raporu koyuyoruz.
Kimlik bilgileri tarafında da bir kuralımız var: API anahtarları ve servis parolaları site dosyalarının içinde, web'den okunabilecek bir yerde durmaz. Bunun neden önemli olduğunu biliyoruz, çünkü devraldığımız sistemlerde tam bu durumla karşılaşıyoruz.
Devralınan entegrasyonlar
Bazı projelerde iş sıfırdan entegrasyon yazmak değil, çalışan ama kimsenin anlamadığı bir entegrasyonu devralmak oluyor. Bu durumda önce mevcut akışı ölçüyoruz: hangi çağrı nereye gidiyor, hangi alan neye eşleniyor, hangi kısım aslında hiç çalışmıyor. Çıktı bir alan eşleme tablosu ve hangi parçanın sökülüp hangisinin korunacağına dair bir plan olur.
Söküm sırası konusunda net bir kuralımız var: bir bağlantı sökülmeden önce yerine geçecek olanın hazır ve ölçülmüş olması gerekir. Önce yeni uç yazılır, çalıştığı doğrulanır, sonra eski bağ kaldırılır. Tersini yapmak sistemi kaynaksız bırakır.
Sık sorulanlar
Kullandığım program entegrasyona kapalıysa ne olur?
Önce gerçekten kapalı olup olmadığını ölçüyoruz. Belgelenmiş bir API'si olmayan programların çoğunda yine bir yol bulunur: veritabanına doğrudan okuma, zamanlanmış dosya alışverişi (CSV veya XML) ya da programın kendi dışa aktarma ekranının otomatikleştirilmesi. Hiçbiri mümkün değilse bunu baştan söylüyoruz; çalışmayacak bir entegrasyonu satmıyoruz.
İki sistemdeki sayılar tutmazsa nasıl anlarız?
Her entegrasyona bir izleme ekranı ve eşleşmeyen kayıt raporu koyuyoruz. Başarısız olan çağrı sessizce kaybolmaz, listeye düşer. Sessizce başarısız olan entegrasyon en pahalı entegrasyondur: çalışmadığı ancak bir müşteri aradığında anlaşılır.
Entegrasyon bozulursa siparişlerim kaybolur mu?
Bu ihtimali baştan ele alıyoruz. Her istek bir kuyruğa yazılır; karşı sistem cevap vermezse kayıt silinmez, belirli aralıklarla yeniden denenir. Aynı kaydın iki kez işlenmesi de engellenir, çünkü mükerrer sipariş ya da çift kargo kaydı da en az kayıp kadar sorun yaratır.
Fatura da kesilsin, olur mu?
Olmaz; bu bilinçli bir kapsam kararı. Geliştirdiğimiz sistem faturanın kesilip kesilmediğini takip eder ve gereken kaydı muhasebe sistemine aktarır, ama faturayı kesen ve resmî kaydı tutan sistem ayrıdır. Ödeme tahsilatı ve muhasebeleştirme için de aynısı geçerli.
Kapsam
Bu hizmette teslim edilenler. Kapsam görüşme sonunda yazılı hâle gelir; aşağıdaki liste başlangıç noktasıdır.
Entegrasyon için teklif alın
Ne yapmak istediğinizi anlatın; kapsamı birlikte netleştirip fiyat verelim.
