Closed irfanevrens closed 8 years ago
Merhaba,
Neden 2.5'i kullanmak istiyorsunuz? 2.0 stabil çalışıyor.
"require": { "omnipay/common": "~2.0" },
Eğer versiyonu manuel tanımlamadıysanız komut satırına aşağıdaki komutu yazarak 2.0 yükleyerek sorunsuz çalıştırabilirsiniz.
composer require yasinkuyu/omnipay-nestpay:~2.0
Örnek uygulama
paytest.php
require DIR . '/vendor/autoload.php';
use Omnipay\Omnipay;
$gateway = Omnipay::create('NestPay');
$gateway->setBank("denizbank"); $gateway->setUserName("DENIZTEST"); $gateway->setClientId("800100000"); $gateway->setPassword("DENIZTEST123"); $gateway->setTestMode(TRUE);
$options = [ 'number' => '5406675406675403', 'expiryMonth' => '12', 'expiryYear' => '2017', 'cvv' => '000', 'email' => 'yasinkuyu@gmail.com', 'firstname' => 'Yasin', 'lastname' => 'Kuyu' ];
try {
$response = $gateway->purchase(
[
//'installment' => '', # Taksit
//'moneypoints' => 1.00, // Set money points (Maxi puan gir)
'amount' => 12.00,
'type' => 'Auth',
'orderid' => 'ORDER-3651233',
'card' => $options
]
)->send();
if ($response->isSuccessful()) {
echo "Successful";
} elseif ($response->isRedirect()) {
$response->redirect();
} else {
exit($response->getMessage());
}
} catch (\Exception $e) { exit('Sorry, there was an error processing your payment. Please try again later.'); }
~2.0 olunca ve composer update yapınca 2.5'i yüklüyor. sanırım ~ işaretinden kaynaklı bir durum. Bir de kuveytturk kendi sistemini kullanıyormuş. Buradaki kuveytturk eskide kalmış olabilir mi. Bunu ilgili firmaya sordum şöyle bir cevap verdiler;
Merhaba İrfan Bey,
Artık tarafımızdan Kuveyt Türk Sanal Pos desteği verilmemektedir.
Banka kendi altyapısını kullanmaya başladı.
Konu ile ilgili bankayla iletişime geçebilirsiniz.
İyi çalışmalar dilerim.
Enes Malik ÖZBELLİ
Asseco SEE Teknoloji A.Ş.
Yukarıda dediğim şekilde yaparsanız 2.5 güncellenmez. Boş bir klasörü komut satırında açın ve bu komutu yazın
composer require yasinkuyu/omnipay-nestpay:~2.0
Kararlı sürüm 2.0 resmi sitesinde ve github sayfasında o şekilde yer alıyor.
Kuveyttürk'ün veya diğer bankaların sanal pos ve test kullanıcı bilgilerini gönderebilirseniz müsait bir zamanda entegrasyon hazırlayabilirim.
composer require yasinkuyu/omnipay-nestpay:~2.0
bu komut yasinkuyu/omnipay-nestpay
paketinin içindeki composer.json'da omnipay/common
paketini şuanda v2.5.0
olarak yüklüyor. Çünkü composer.json içinde;
"require": {
"omnipay/common": "~2.0"
},
Buradaki ~2.0
ibaresi omnipay/common
paketinin 2.5.0
versiyonunu yükletiyor.
Diğer konuya gelince, omnipay-kuveytturk gibi ayrı bir paket olacak sanırım değil mi?
"omnipay/common": "~2.0"
kullanıldığı için şuan aktif olarak 2.5 versiyonunu yüklemekte ve aşağıdaki hatayı vermekte.Class must be declared abstract or implement methods 'completeAuthorize', 'deleteCard', 'completePurchase', 'createCard', 'updateCard'