Sanal Pos Kütüphanesi

13 Ocak 2010

Tüm dünyada da aynı mıdır bilmiyorum ama Türkiye’de düşünmeyi sevmeyen ve sıcak para gelsinde nasıl olursa olsun diye düşünen bir girişimci kitlesi vardır. Bu kitlenin müdavimlerini çeşitli şekillerde gördük ve görmeye devam edeceğiz elbette. Buna birkaç örnek vermek gerekirse; Sucular, İnternet Kafeler ilk aklıma gelenlerden birkaçı.

Birçok sektör gibi yazılım şirketlerinde de durum pek farklı değil. Türkiye’de her yazılımcı bir dönem Muhasebe yazılımları ile köşe olmayı düşünmüş ve bu alanda yazılımlar geliştirmiş ve sonunda batmıştır :) İşini hakkıyla yapan AirTies, SesTek, Sobee gibi şirketleri bunun dışında tutmak istiyorum tabii. Onlar gerçekten göğsümüzü kabartan güzel şirketler.

Bu durum internet sektöründe de neredeyse böyle. Internet’te dönemsel olarak popüler olan konular hep olmuştur. Şirket sitesi yapanlar, e-ticaret sitesi yapanlar bunun en büyük örneği. E-ticaret belkide en zahmetli ve uçtan uca hizmet vermeyi gerektiren, güvene dayalı olduğu düşünülürse fırsatlar ve riskler kendini hemen belli eden bir konu olduğu halde, en çok uğraş verilen ve yukarıdaki saydıklarım göz önünde bulunmadan girilen bir iş modeli. E-ticaret bu yazının ana konusu değil, bu yüzden e-ticaretin sorunlarına bu yazıda değinmeyeceğim. Ama bu kadar çok üzerinde konuşulan, araştırmalar yapılan ürünler geliştirilen sektörde neden Magento, OpenCart gibi açık kaynak projelerin Türkiye’den çıkmadığını merak ediyorum doğrusu!? Tamam bu çok büyük bir proje ama hazır yemeğe alışan bizler defalarca POS kütüphanesi yazdığımız halde bunu neden açık kaynak kodlarını yayınlamıyoruz?!

Türkiye’nin önde gelen birkaç e-ticaret platformunun altyapısını geliştirenlerden biri olarak bu soruyu kendime yönelttiğim de, en azından Türk yazılım camiasına böyle bir katkıda bulunmam gerektiğine karar verdim. İyimi ettim, kötü mü ettim zaman gösterecek elbette!. Geliştirdiğim API kütüphanesinin kullanıcı rehberi belgeyi yakında tamamlayacağım. Bu konuda ki gelişmeleri @HasanOzgan(benim) ya da @dahius‘un twitter hesabından takip edebilirsiniz.

Sanal Pos Kütüphanesi (vpos4php)

Bu kütüphane aynı zamanda PEAR kütüphanesi hazırlamaya, paketlemeye, Phing ve phpDocumentory kullanımı için bir örnektir. PHPUnit‘de kullanımı ile ilgili örnekleri TestCase’lerinide ileride ekleyeceğim.

Türkiye’de Sanal POS altyapısını sunan 2 firma bulunmaktadır. EST ve POSNET. Birçok banka bu iki firmanın altyapısını kullanır. EST altyapısını kullanan bankalara Garanti, İşbankası, Axess, HSBC, Finansbank; POSNET altyapısını kullanan bankalara ise YapıKredi örnek verilebilir. Yani bu firmaların API’lerini kullanan her bankada bu kodlar çalışacaktır. Başka bir şirketin yaptığı altyapıyıda desteklemek için dökümanı bana gönderebilirsiniz.

Yapılan işlemler aşağı yukarı tüm POS altyapılarında aynı olunca bunları aynı veritabanları gibi tek bir arayüz üzerinden çalıştırmak gerekmektedir. İşte bunun için; projeyi geliştirilirken, tasarım kalıplarından(design patterns), fabrika (Factory Pattern) kullanılmıştır.

Kütüphane aşağıdaki methodları desteklemektedir.

  1. provision($request) methodu, kredi kartından çekilen para miktarı, kart limitinden düşürülür. Ama hesabınıza geçmez. Bazı firmalar kart doğrulama gibi işlemler için bunu kullanırlar. Bankalar arasında farklılık gösterse de, eğer daha sonra disposal methodu ile finanslaştırılmazsa tutarın kart üzerindeki blokesi kaldırılır.
    3D secure işlemi desteklenir.
  2. sale($request) methodu, $request nesnesi içerisinde belirtilen tutar kredi kartı limitinden düşürülür ve hesabınıza geçer.
    3D secure işlemi desteklenir.
  3. disposal($request) methodu, daha önce provision methodundan geri dönen işlem numarası (transactionId) ile birlikte finanslaştırmaya yarar. Yani daha önce kart limitinizden düşürülen para hesabınıza geçer.
  4. reversal($request) methodu, daha önce disposal ya da sale methoduyla finanslaştırdığınız işlemlerde kısmi iadeler yapmayı sağlar. Yani fiyatı güncelleştirebilirsiniz.
  5. refusal($request) methodu, daha önce yaptığınız bir işlemi iptal etmeyi sağlar.
  6. complete($request) methodu ise, 3DSecure işlemlemini tamamlamayı sağlar.

Bu api ile ilgili her türlü sorularınızı bana yöneltebilirsiniz. Fırsat buldukça size yardım etmeye çalışacağım.

vpos4php kütüphanesinin proje sayfasına buradan indirebilirsiniz.

Kategori



Eğer yazıyı beğendiyseniz ya da ekleyecekleriniz varsa, lütfen yorumunuz yazın veya RSS aboneliği ile yeni yazılardan anında haberdar olun.

'Sanal Pos Kütüphanesi' için 2 Yorum

Burak Yüce
Ağustos 24, 2010

Sanırım, geliştirdiğimiz programlar sadece bize kalsın şeklinde düşünüyoruz. Ya adam bunu alıp, daha iyisini geliştirip beni geçerse korkusu da var.

Emre
Ocak 8, 2012

çok güzel bir konuya deyinmişsiniz. Öncelikle bu yazınızı okuduktan sonra sizi yolda görsem elinizi öpecek saygıyı size göstereceğimi belirtmek isterim :)

herşey şimdi bir yana, bir haftaya yakın bir zamandır e-ticaret sistemleri üzerinde duruyorum. İkili güvene dayanıyor gerçektende ama müşterilerimi sıkıntıda bırakmamak adına hazır sistemleri tercih ediyorum. gerekirse ücretleri modulleri satın alıyorum onlara en iyi hizmeti vermeye çalışıyorum fakat yinede takılıp kaldığım çok yer oluyor. işte böyle zamanlarda sizin gibi insanların yazıları yetişiyor yardımıma :) sanal pos yapısı çok yabancı olduğum bir kavram ama bir haftada kafamı okadar çok şişirdiki halada kavrayabilmiş değilim. mail adresimi formda belirttim finansbank sanalposunu kullanmak istiyorum. gerekli araştırma ve bilgiye sahip olduğumu düşünsemde birtürlü atağa geçemiyorum bir türlü güvenemiyorum kendime en azından bana yol gösterebilirsiniz diye düşünüyorum. mail adresimden benimle itribat kurarsanız gerçekten çok sevinirim :)

Yorum yapın