İşbankası Sanal Pos Epayapi.DLL Kullanım ve Kurulum Kılavuzu, bu bölümde tüm detaylar anlatılmıştır.
A) KURULUM VE KURULUMUN KALDIRILMASI
Kurulum:
SSLlib.dll , epayapi.dll dosyalarını silinmeyecek bir dizine kopyalayın.
register etmek icin su komutlari calistirin.
regsvr32 epayapi.dll
Kurulumun kaldırılması:
regsvr32 -u epayapi.dll
DİKKAT: Ancak kurulumu kaldirdiktan sonra dll dosyalarini silebilirsiniz.
B) KULLANIM
Epayapi.dll register edildikten sonra programlama dili içinden createobject fonksiyonu ile çağrılır.
Örneğin visual basic script ve asp için aşağıdaki şekilde bir obje yaratabilirsiniz.
Set pay = CreateObject(“epayapi.payment”)
COM destekleyen bir client ile (ASP, visual basic, c++ gibi) nesneyi yaratıp ilgili parametrelerini set ettikten sonra
Processorder()
Metodunu cagirdiginizda odeme islemini yapip, sonucu alıp almadığını döner.
Dönen sonuç 1 ise bankanız ile başarılı sekilde bağlantı kurulmuştur, eğer 0 dönerse banka ile bağlantı kurulamamıştır. Bu durumda network ayarlarınızı kontrol etmeniz ve yazdığınız host parametresini kontrol etmeniz gerekmektedir.
Otorizasyon İşleminin başarılı olup olmadığı, dönüş alanlarından anlaşılır.
Epayapi.dll fonksiyonları:
1) addItem(BSTR id, BSTR desc, BSTR price, BSTR quantity,BSTR itemnumber,BSTR productcode,BSTR total);
Vrilen parametreler ile bir ürünün sanalpos raporlarında görüntülenmesini sağlar.
Kullanılması opsiyonel bir alandır.
Id Siparişe eklenen ürünün id’si
Desc Siparişe eklenen ürün için açıklama
Price Ürün fiyatı
Quantity Üründen kaç adet alınmış
ItemNumber Ürun sira numarasi
Productcode Ürün kodu
Total Toplam tutar
2) putExtra(BSTR FieldName,BSTR FieldValue)
FieldName adinda, FieldValue değerinde bir alanı göndermek için kullanılır.
Putextra fonksiyonu ile puan sorgulama ,puan kullanma ve extra puan verme işlemlerini yapabilirsiniz.
İşbankası Sanal POS uygulamasında, ayrıca, mal veya hizmet satışına aracılık etmek sureti ile, tutarın belli oranının aracı firmaya aracı firma ÜİY çalışma koşulları ile, geri kalan oranın ise mal veya hizmet sahibi firmaya kendi ÜİY çalışma iş koşulları ile ödeneceği yapı mevcuttur. Kısaca bu, bir işlem 2 ayrı ÜİY’ne farklı çalışma koşullarında muhasebe yaratabilecek özelliktir. Arzu edildiği takdirde, uygulamanın detayları hakkında bilgi verilebilir.
3) Processorder()
Girilen parametrelerle bankaya işlemi gönderir. Eğer bu çagrı başarılı bir şekilde sonuçlanmışsa dönüs alanlarını okuyabilirsiniz.
Metodu çağırdığınızda ödeme işlemini yapıp sonucu alıp almadığını döner.
Dönen sonuç 1 ise bankanız ile başarılı şekilde bağlanti kurulmustur, eger 0 dönerse banka ile bağlantı kurulamamıştır. Bu durumda network ayarlarınızı kontrol etmeniz ve yazdığınız host parametresini kontrol etmeniz gerekmektedir.
Otorizasyon işleminin başarılı olup olmadığı, dönüş alanlarından (pay.appr) anlaşılır.
C) GÖNDERİLMESİ ZORUNLU ALANLAR
Bütün alanlar string olarak gönderilmelidir.
(Objeadı.alanadı = “Alanin değeri“)
Örnek:
Pay.subtotal = “12.14
–
Host Banka sunucusu adresi
Name Uyeisyeri kullanici adi
Password Uyeisyeri sifresi
Clientid Uyeisyeri numarasi
OrderResult 0 olursa gercek islem 1 olursa test islemi yapar
ChargeType Auth PreAuth PostAuth Credit Void olabilir Bu islem tiplerinin aciklamalari ayri bir bolum olarak verilmistir.
cardnumber Kredi karti numarasi
expmonth Kredi karti son kullanim ayi
expyear Kredi karti son kullanim yili
cv2 CVV veya CVC2
subtotal Islem tutari
currency Parabirimi (YTL icin 949, Dolar icin 840, Eruo için 978)
Charge Type (İşlem tipleri)
Provizyon (PreAuth)
Karttan provizyon alınır ve kart limiti işlemi yapan üye işyeri adına bloke edilir. Kredi kartı sahibinin limiti provizyon alınan tutar kadar azalır. Provizyon işlemi işyeri tarafından onaylanmadıkça üye işyeri hesabına hesaplara yansımaz, kredi kartı sahibinin ekstresinde görünmez
İşyeri Onayı (PostAuth)
Provizon alınmış işlemi onaylamak ve para transferini gerçekleştirmek için kullanılır.
İşyeri onayı verilen işlem otomatik olarak saat 22:00’de gerçekleşen günsonu işleminden sonra muhasebeleşerek işyeri hesabına ve kredi kartı hesabına yansır.
Provizyonlara onay verilmez ise kredi kartına konan bloke tutar maksimum 14 gün sonra kalkar.
Satış (Auth)
Provizyon ve işyeri onayı işlemlerini aynı anda yapar. Satış işlemi otomatik olarak saat 22:00’de gerçekleşen günsonu işleminden sonra muhasebeleşerek , üye işyeri hesabına ve kredi kartı hesabına yansır.
Provizyon İptali (Void)
Onay almış Provizyon işlemini iptal eder. Provizyon iptali işlemi yalnızca gün içerisinde yapılmış provizyonlar için yapılabilir. Provizyon iptali yapıldığında kredi kartı limitine konan bloke tutar serbest kalır.Provizyon ve provizyon iptali işlemleri kredi kartı ekstresinde görünmez.
Üzerinden gün geçmiş bir provizyonu kaldırmak için önce o provizyona onay vermeli ve ardından iade işlemini yapmalısınız.
İşyeri Onayı İptali (Void)
Gün içerisinde yapılan capture işlemini iptal eder. İptal edilen capture işlemleri hesaplara yansımaz.
Satış iptali (Void)
Onay almış Satış işlemini iptal eder. İptal edilen satış işlemi kredi kart ekstresine yansımaz.
İade (Credit)
İade işlemi işyeri onayı yapılmış siparişlere ve satış işlemlerine yapılabilir.
Taksitli satışlar gün içerisinde iade edilemez ancak ertesigün iade edilebilir.
Parapuan kullanılarak yapılan satışlar online olarak iade edilemez bu işlemleri iade etmek için şubenizle görüşmelisiniz.
D) GÖNDERILMESI İSTEĞE BAĞLI ALANLAR
Bütün alanlar string olarak gönderilmelidir.
(Objeadı.alanadı = “Alanın değeri“)
Örnek:
Pay.Taksit = “5“
Taksit Taksit sayisi bu alandan gönderilir. Taksit parametresi hiç gonderilmez ise peşin işlem yapılır.Taksit sadece İşbankası maximum kartlara yapılabilir. Taksitli işlem gönderirken vade farkı hesaplanıp tutara eklenmelidir.
Eğer taksitli ve puan kullanilan islem yapılıyorsa ve puan tutardan az ise,
sadece kalan limit taksitlendirilir.
Oid Siparis numarasi, biricik (unique) olmalidir, bos gonderilirse sistem tarafindan uretilir. PostAuth isleminde muhakkak dolu olmalidir.
groupid Siparis grup numarasi bos gonderilirse oid ile ayni olur.
ip Siparis veren musterinin ip adresi
userid Siparis veren musterinin kullanici numarasi
email Siparis veren musterinin Email adresi
phone Siparis veren musterinin telefon numarasi
Bname Musteri fatura adi
Baddr1 Musteri fatura adres 1
Baddr2 Musteri fatura adres 2
Baddr3 Musteri fatura adres 3
Bcity Musteri fatura sehir
Bzip Musteri fatura posta kodu
Bstate Musteri fatura eyalet
Bcountry Musteri fatura ulke
Sname Musteri teslimat adi
Saddr1 Musteri teslimat adres 1
Saddr2 Musteri teslimat adres 2
Saddr3 Musteri teslimat adres 3
Scity Musteri teslimat sehir
Szip Musteri teslimat posta kodu
Sstate Musteri teslimat eyalet
Scountry Musteri teslimat ulke
Verified By Visa icin kullanilan alanlar
PayerAuthenticationCode
CardholderPresentCode
PayerSecurityLevel
PayerTxnId
E) GERİ DÖNEN ALANLAR
Processorder() fonksiyonu dll in calisip calisamadigi ile ilgili deger doner
1 : Com objesi banka ile mesaj transferini gerçekleştirmiş demektir. Transfer mümkün olmus olsa dahi işlem başarılı olmamış olabilir (appr nin değerinin “Approved” olmasi gerekiyor!!)
0: Mesaj transferi gerceklesemedi. Baglanti veya kurulum hatasi.
Processorder fonksiyonu ile odeme islemi gerceklestikten sonra okunabilecek alanlar
oid siparis numarasi
groupid grup numarasi
transid islem numarasi
appr Sonuc: (Approved ise onaylandi, Declined ise reddedildi, Error ise hata demektir)
code provizyon numarasi
refno referans numarasi
err bankadan gelen cevap kodu
errmsg islem aciklama
Extra(BSTR FieldName)
FieldName adındaki Extra field in değerini return eder. Processorder fonksiyonundan sonra cağırılmalıdır.
Puan kullanıldığı zaman ne kadar puan kullanildığı , ne kadar limit kullanildığı ve kalan puan bu fonksiyon ile alınabilir.
ben akbank için pos kurulumu yapacam. zaten akbanktakinin aynısı yukarıdaki metin. lakin şu sıkıntı , bu DLL dosyasının kurulumundaki kodu nereye yazacazda , kurulum yapacaz.
Başlat / Çalıştır / Cmd komut satırından yapmanız gerekmektedir.