Vakıf Bank
Vakıf Bankasının php dilinde yazılmış olan maksimum düzeyde geliştirilebilir ve entegre edilebilir kütüphane versiyonudur.
Kullanım
Aşağıdaki örnek kod ile vakif bankasının sanalposunu kolay bir şekilde kullanılabilir hale getirebilirsiniz.
use ISProject\VirtualPos\Banks\VakifBank;
use ISProject\VirtualPos\Exception\VirtualPosException;
include "vendor/autoload.php";
$vakifbank = new VakifBank();
3D Olmadan Ödeme Çekme
3D Olmadan ödeme çekmek isterseniz bu kodları kullanabilirsiniz.
use ISProject\VirtualPos\Banks\VakifBank;
use ISProject\VirtualPos\Exception\VirtualPosException;
try {
$vakifbank = new VakifBank();
$vakifbank->setMerchantId("xxxxxxxxxxxx");
$vakifbank->setTerminalNo('xxxxxxx');
$vakifbank->setPassword(123456);
$vakifbank->setTestMode(true);
$vakifbank->setPrice(10.25);
$creditCard = "428945018654xxxx";
$cardMonth = "02";
$cardYear = "2023";
$cardCvv = "060";
$response = $vakifbank->payment($creditCard, $cardMonth, $cardYear, $cardCvv);
if($response->isSuccess()) {
echo 'Ödeme başarıyla çekildi.';
echo 'Ödeme Detayları;';
echo '<pre>';
print_r($response->getData());
echo '<pre>';
} else {
echo '<br>Ödeme çekilirken bir sorun oluştu; ';
echo '<br>Hata Kodu: ' . $response->getCode();
echo '<br>Hata Mesajı: ' . $response->getMessage();
}
} catch (VirtualPosException $e) {
echo 'Hata => ' . $e->getMessage();
}
3D Olarak Ödeme Çekme
3D ile ödeme çekerken 2 adımlı doğrulama yapılmaktadır. Kullanıcı bilgilerini doğru bir şekilde girdikten sonra Bankanın 3d şifresini gireceği bölüme yönlendirilir. Bu bölümde şifre girildikten sonra successurl ve failurl olarak belirttiğimiz 2 url adresinden adresinden birine duruma göre yönlendirilir. Eğer ödeme başarılı ise successurl sayfasında son 1 kez ödeme doğrulanır.
Adım 1
Bu adımda 3d kart bilgilerini aldıktan sonra bankanın 3d sayfasına yönlendirilmek üzere bir form oluşturulur ve başarılı olursa $response->getData(); geriye bu formu döndürür ve siz formu post edersiniz.
use ISProject\VirtualPos\Banks\VakifBank;
use ISProject\VirtualPos\Exception\VirtualPosException;
try {
$vakifbank = new VakifBank();
$vakifbank->setMerchantId("xxxxxxxxxxxx");
$vakifbank->setTerminalNo('xxxxxxx');
$vakifbank->setPassword(123456);
$vakifbank->setTestMode(true);
$vakifbank->setSuccessUrl('https://sanalpos.botbenson.com/successUrl.php');
$vakifbank->setFailureUrl('https://sanalpos.botbenson.com/failureUrl.php');
$vakifbank->setOrderId("1234567890123");
$vakifbank->setPrice(10.25);
$creditCard = "428945018654xxxx";
$cardMonth = "02";
$cardYear = "2023";
$cardCvv = "060";
$response = $vakifbank->payment3D($creditCard, $cardMonth, $cardYear, $cardCvv);
if($response->isSuccess()) {
echo $response->getData();
} else {
echo '<br>Form oluşturulurken bir sorun oluştu; ';
echo '<br>Hata Kodu: ' . $response->getCode();
echo '<br>Hata Mesajı: ' . $response->getMessage();
}
} catch (VirtualPosException $e) {
echo 'Hata => ' . $e->getMessage();
}
Adım 2
Bu adım son aşamadır. Bu aşamada bankadan gelen yanıt incelenir ve tekrar bankaya otomatik istek atılır. Banka bu adımda olumlu/olumsuz yanıtı döner. İşlem tamamlanır.
use ISProject\VirtualPos\Banks\VakifBank;
use ISProject\VirtualPos\Exception\VirtualPosException;
try {
$vakifbank = new VakifBank();
$vakifbank->setMerchantId("xxxxxxxxxxxx");
$vakifbank->setTerminalNo('xxxxxxx');
$vakifbank->setPassword(123456);
$vakifbank->setTestMode(true);
$response = $vakifbank->paymentCallBack();
if($response->isSuccess()) {
echo 'Ödeme başarıyla çekildi.';
echo 'Ödeme Detayları;';
echo '<pre>';
print_r($response->getData());
echo '<pre>';
} else {
echo '<br>3D Ödeme Onaylanırken bir sorun oluştu; ';
echo '<br>Hata Kodu: ' . $response->getCode();
echo '<br>Hata Mesajı: ' . $response->getMessage();
}
} catch (VirtualPosException $e) {
echo 'Hata => ' . $e->getMessage();
}
Last updated
Was this helpful?