Sanal posun lazım olduğu yerlerde kullandığım basit bir sınıfım vardı. Biraz düzenleyip sizlerle paylaşmak istedim. Esasında benim yaptığım bir şey yok, sadece bankaların verdiği kodları bir araya topladım. Projenize basitçe ekleyebilir ve kullanabilirsiniz. Şimdilik şu bankaların posları bulunuyor;
- İş Bankası
- Garanti Bankası
- Vakıfbank
- Akbank
- Yapı Kredi
- FinansBank
- DenizBank
Projenin Git sayfası https://github.com/apoStyLEE/aSanalPos
Örnek Kullanım;
public void Cekim() {
// kullanıcıdan kart bilgilerini alıyoruz.
PosForm pf = new PosForm {
ay = 1,
yil=2011,
guvenlikKodu = 123,
kartNumarasi = 1234567891234568,
kartSahibi = "kart sahibi",
taksit = 3,
tutar = 1.00
};
// Poslarımıza yukarıdaki bilgileri gönderiyoruz.
Pos p = new Pos();
// Örnek gönderim;
p.Akbank(pf);
//p.GarantiBankasi(pf);
//p.VakifBank(pf);
//p.YapiKredi(pf);
//p.IsBankasi(pf);
// Poslardan geriye dönen bilgileri alıyoruz.
if (p.sonuc)
{
// Çekim işlemi başarılı ise, geri dönen bilgileri alıyoruz.
// Genellikle bu bilgiler veritabanında saklanır.
// Bankadan bankaya değişiklik göstereceği için, alanlardan bazıları boş gelebilir.
Response.Write(p.referansNo);
Response.Write(p.groupId);
Response.Write(p.transId);
Response.Write(p.code);
}
else
{
// Çekim işlemi herhangi bir sebepden dolayı olumsuz sonuçlanmışsa, bankadan dönen hatayı alıyoruz.
// Hata kodlarının açıklamaları ilgili banka dökümantasyonunda belirtilmiştir.
Response.Write(p.sonuc);
Response.Write(p.hataMesaji);
Response.Write(p.hataKodu);
}
}





Garanti sistemini değiştirdi. ePayment.dll artık kullanılmıyor. Garanti, kullanıcı için servisler üzerinde bir abstraction sunmuyor. Servis adreslerini, request ve response yapılarını veriyor, gerisini sen yap diyor.
Doğrudur konudan haberim yok, eğer gün gelir elime geçerse gerekli düzenlemeyi yaparım ;)
projeden garanti kısmını kaldırmak şu anlık en dpğrusu olur bence, ilk kullanıcı için kafa karıştırıcı olabilir :s
Çıkartayım sorun değilde, daha 3-4 gün önce bu şekilde bir yerde kullandım, problemsiz çalışıyor, çok da ciddi bir şekilde kullanılıyor :S
02.03.2011
Ben :
“Şu anda eski versiyonu kullanmaktayız. Bu şekilde bir süre daha devam edebilirmiyiz?”
Garanti :
“Mart ayı sonuna kadar eski sistem üzerinden işlem göndermeye devam edebilirsiniz.”
Ben onların yalancısıyım valla :s
yeni sanalPos yönetim alanı :
https://sanalposweb.garanti.com.tr/gvpsui/login/LoginStart.jsp
Allah Allah, ben bunu ilgililere ileteyim o zaman sonradan başımız ağrımasın. Bilgilendirme için çok teşekkürler.