Start Now
shopinext

API Documentation

API Documentation
Error Codes SESSIONTOKEN Oluşturma Satış İşlemi Kur Alma Örnek Kodlar Test Kartları WooCommerce Ödeme Modülü Opencart Payment Module Mağaza Kuru İşlem Kontrolü WHMCS Ödeme Modülü
ERR001
Invalid store information - Check your shopinext mail, password and your store is active or not.
ERR002
You need to apply on the API Application Form.- You need to apply from the API application page in the panel.
ERR003Wrong key. Please check your apikey.
ERR004
You don’t have active API application. - Make sure that your application is active.
ERR005
Mandatory areas can’t be vacant. - Fill in the blanks with the error.
ERR006An error occured while creating SESSIONTOKEN.- Contact with Shopinext Management.
ERR007You can’t make business on unauthorized URL.- Send business on URL of which API application is approved.
ERR008You don’t have any active API application.- Make sure that your API application is active.
ERR009You don’t have any active Shopinext store.- Check your store active or not.
ERR010
There isn’t that mentioned session.- Check the SESSION that have been sent and refresh the procedure.
ERR011
Ödeme sırasında oluşan genel hatalar. - errorMsg kısmındaki detayı kontrol edin.
ERR012Mağazanın özel kart yetkisi bulunmamaktadır. - Shopinext yönetimi ile irtibata geçerek özel kart yetkisini açabilirsiniz.
ERR013
Mağazanın yurtdışı satış yetkisi bulunmamaktadır. - Shopinext yönetimi ile irtibata geçerek yurtdışı satış yetkisini açabilirsiniz.
ERR014Kayıtlı kart bulunamadı, lütfen manuel giriş yapın. - Sistemde kayıtlı kart bulunamadığı için kayıtlı kart ile ödeme işlemi geçersiz sonuçlanmıştır.

Örnek Session Sorgusu

Her SESSIONTOKEN 1 kez kullanılabilir. Oluşturulan SESSIONTOKEN süresi 60 dakikadır. 60 dakika içerisinde işleme alınmayan SESSIONTOKEN işleme kapatılır. 

POST Adresi: https://www.shopinext.com/api/v1

Gönderilen SorguBaşarılı Yanıt
'ACTION'=>'SESSIONTOKEN',
'APIKEY'=>'APIKEY', // Shopinext API Key - Test Ortamında Gerekmez
'SNID'=>'shopitest@shopinext.com', // Shopinext Mail Adresiniz - Test Ortamı Kullanıcı Adı
'SNPASS'=>'shopitest', // Shopinext Şifreniz - Test Ortamı Şifre
'PRICE'=>1499.99, // İşlem Tutarı - Kuruş aralığında nokta olmalı, virgül ile ayrılan kısım dahil olmaz. - Maks. 30 Karakter
'RETURNURL'=>'http://localhost/returnurl.php', // Geri Dönüş Sayfası - Maks. 256 Karakter 
'CUSTOMERNAME'=>'Shopi Next', // Alıcı Adı Soyadı - Maks. 30 Karakter
'CUSTOMEREMAIL'=>'alici@gmail.com', // Alıcı Mail Adresi - Maks. 64 Karakter
'CUSTOMERIP'=>'11.111.11.111', // Alıcı IP Adresi
'CUSTOMERUSERAGENT'=>$_SERVER['HTTP_USER_AGENT'],  - Maks. 512 Karakter 
'CUSTOMERPHONE'=>'5557774422', // Alıcı Telefon Numarası - Maks. 64 Karakter 
'BILLTOADDRESSLINE'=>'İstanbul Kadıköy', // Fatura Adresi - Maks. 255 Karakter 
'BILLTOCITY'=>'İstanbul', // Fatura Şehir - Maks. 32 Karakter 
'BILLTOCOUNTRY'=>'Türkiye', // Fatura Ülke - Maks. 32 Karakter 
'BILLTOPOSTALCODE'=>'34000', // Posta Kodu - Maks. 16 Karakter 
'BILLTOPHONE'=>'5557774422', // Fatura Telefon Numarası - Maks. 64 Karakter
'SHIPTOADDRESSLINE'=>'İstanbul Kadıköy', // Alıcı Adresi - Maks. 255 Karakter 
'SHIPTOCITY'=>'İstanbul', // Alıcı Şehir - Maks. 32 Karakter 
'SHIPTOCOUNTRY'=>'Türkiye', // Alıcı Ülke  - Maks. 32 Karakter
'SHIPTOPOSTALCODE'=>'34000', // Posta Kodu  - Maks. 16 Karakter
'SHIPTOPHONE' =>'5557774422', // Alıcı Telefon Numarası - Maks. 64 Karakter 
'ORDERNOTE' =>'A isimli üründen satın alındı.' //İşleme ait ek bilgi eklemek istediğinizde buraya ekleyebilirsiniz, sipariş detay sayfasında görünecektir.

[responseCode] => 00
[sessionToken] => O27UELANPFKSAF69WOURRNV7EU6FH5VTPJIMRBA2
[responseMsg] => Başarılı


Örnek Başarısız Yanıt
[errorCode] => ERR001
[responseCode] => 99
[errorMsg] => Geçersiz mağaza bilgisi
[responseMsg] => Reddedildi


Örnek Satış İşlemi

Oluşturduğunuz SESSIONTOKEN ile birlikte (SESSIONTOKEN Oluşturma) "https://www.shopinext.com/sale3d/SESSIONTOKEN" adresine POST olarak kart detaylarını göndermelisiniz.

Örnek HTML form kullanımı

<form action="https://www.shopinext.com/sale3d/SESSIONTOKEN" method="post">
    <input type="text" name="name" placeholder="Kart Üzerindeki Ad Soyad" autocomplete="off" maxlength="32" />
    <input type="text" name="number" placeholder="Kart Numarası" autocomplete="off" maxlength="19" />
    <input type="text" name="month" placeholder="Ay" />
    <input type="text" name="year" placeholder="Yıl" />
    <input type="text" type="input" name="cvv" placeholder="CVV" autocomplete="off" maxlength="4" />
    <!-- Taksit bölümünü göndermeyebilirsiniz. Göndermediğiniz takdirde peşin işlem yapacaktır. -->
    <input type="text" name="installment" placeholder="Taksit Sayısı" />
    <!-- Taksit bölümünü göndermeyebilirsiniz. Göndermediğiniz takdirde peşin işlem yapacaktır. -->
    <button type="submit">Gönder</button>
</form>
Başarılı İşlem Sonrası Dönüş URL'sine Dönecek Veri
[responseCode] => 00
[sessionToken] => OVK6NA59M8DTDJMAAG756HVRV4KCPRU632L0RMN8 // Başarılı sonuçlanan  SESSIONTOKEN
[orderID] => SN1W2NSH4FDF // Shopinext tarafından oluşturulmuş özel sipariş kodu
[responseMsg] => Başarılı
Başarısız İşlem Sonrası Dönüş URL'sine Dönecek Veri
[errorCode] => ERR011
[responseCode] => 99
[sessionToken] => L3S1RN38SJR251OOBBVMAGBGHSJ59HNEFAVAPQIB // Başarısız sonuçlanan SESSIONTOKEN
[errorMsg] => Üye iş yeri tarafından desteklenmeyen taksit sayısı belirtilmiştir. // Başarısız sonuçlanma sebebi
[responseMsg] => Reddedildi


Satış İşlemini Doğrulama (v1.1 ile 24 Haziran 2020 eklenmiştir.)

Başarılı işlem sonrası dönen SESSIONTOKEN'ı "https://www.shopinext.com/api/v1" adresine POST olarak göndererek o Session Token ile başlanan işlem başarılı bir şekilde tamamlanmış mı kontrol edebilirsiniz. Etmeniz kesinlikle önerilir. Örnek kodlara da ilgili bölüm eklenmiştir.

POST Adresi: https://www.shopinext.com/api/v1

Gönderilen SorguBaşarılı Yanıt
'ACTION'=>'ISDONE',
'SESID'=>$_POST['sessionToken'] // Başarılı işlem sonrası dönen Token
[responseCode] => 00
[sessionToken] => O27UELANPFKSAF69WOURRNV7EU6FH5VTPJIMRBA2
[responseMsg] => Başarılı


Örnek Başarısız Yanıt
[responseCode] => 99 
[sessionToken] => O27UELANPFKSAF69WOURRNV7EU6FH5VTPJIMRBA2
[responseMsg] => Bu SESSION ile sonlanmış bir sipariş mevcut değil.


Kur Alma 

Mağaza varsayılan satış kuruna göre farklı birimlerde satacağınız fiyat kuru.

Örneğin; 

Mağaza satış biriminiz USD ise ve CURRENCY ile TRY gönderirseniz TRY biriminin USD karşısında değeri dönecektir.

POST Adresi: https://www.shopinext.com/api/v1

Gönderilen SorguBaşarılı Yanıt
'ACTION'=>'CURRENCY',
'APIKEY'=>'APIKEY',
'SNID'=>'shopitest@shopinext.com', // Shopinext Mail Adresiniz
'SNPASS'=>'shopitest', // Shopinext Şifreniz
'CURRENCY'=>'USD' // Kur bilgisini almak isteğiniz para birimi (USD, EUR, TRY)


[amount] => 6.83

Örnek Başarısız Yanıt
[errorMsg] => Belirtilen kur bulunamadı!

Örnek PHP kodlarını indirmek için tıklayınız.

Session ve HTML form örneği
<?php
function GetSession() {
    $data = array(
        'ACTION'=>'SESSIONTOKEN',
        'APIKEY'=>'APIKEY', // Shopinext API Key - Test Ortamında Gerekmez
        'SNID'=>'shopitest@shopinext.com', // Shopinext Mail Adresiniz - Test Ortamı Kullanıcı Adı
        'SNPASS'=>'shopitest', // Shopinext Şifreniz - Test Ortamı Şifre
        'PRICE'=>1499.99, // İşlem Tutarı - Kuruş aralığında nokta olmalı, virgül ile ayrılan kısım dahil olmaz.
        'RETURNURL'=>'http://localhost/returnurl.php', // Geri Dönüş Sayfası
        'CUSTOMERNAME'=>'Shopi Next', // Alıcı Adı Soyadı
        'CUSTOMEREMAIL'=>'alici@gmail.com', // Alıcı Mail Adresi
        'CUSTOMERIP'=>'11.111.11.111', // Alıcı IP Adresi
        'CUSTOMERUSERAGENT'=>$_SERVER['HTTP_USER_AGENT'],
        'CUSTOMERPHONE'=>'5557774422', // Alıcı Telefon Numarası
        'BILLTOADDRESSLINE'=>'İstanbul Kadıköy', // Fatura Adresi
        'BILLTOCITY'=>'İstanbul', // Fatura Şehir
        'BILLTOCOUNTRY'=>'Türkiye',
        'BILLTOPOSTALCODE'=>'34000', // Posta Kodu
        'BILLTOPHONE'=>'5557774422', // Fatura Telefon Numarası
        'SHIPTOADDRESSLINE'=>'İstanbul Kadıköy', // Alıcı Adresi
        'SHIPTOCITY'=>'İstanbul', // Alıcı Şehir
        'SHIPTOCOUNTRY'=>'Türkiye',
        'SHIPTOPOSTALCODE'=>'34000', // Posta Kodu
        'SHIPTOPHONE' =>'5557774422'
    );
    $ch=curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://www.shopinext.com/api/v1");
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1) ;
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 20);
    $result = json_decode(curl_exec($ch));
    if(curl_errno($ch))
        die("Bağlantı hatası. err:".curl_error($ch));
    curl_close($ch);    
    return $result;
}
$session = GetSession();
if(isset($session->sessionToken)) {
    /** Bu kısımda sessiontokeni veritabanına kaydederek dönüş sonrasında işlem yapabilirsiniz. **/
} else {
    echo $session->errorMsg;
    die;
}
?>
<form action="https://www.shopinext.com/sale3d/<?=(isset($session->sessionToken))?$session->sessionToken:''?>" method="post">
    <input type="text" name="name" placeholder="Kart Üzerindeki Ad Soyad" autocomplete="off" maxlength="32" />
    <input type="text" name="number" placeholder="Kart Numarası" autocomplete="off" maxlength="19" />
    <input type="text" name="month" placeholder="Ay" minlength="2" maxlength="2" />
    <input type="text" name="year" placeholder="Yıl" minlength="4" maxlength="4" />
    <input type="text" type="input" name="cvv" placeholder="CVV" autocomplete="off" maxlength="4" />
     <!-- Taksit bölümünü göndermeyebilirsiniz. Göndermediğiniz takdirde peşin işlem yapacaktır. -->
    <input type="text" name="installment" placeholder="Taksit Sayısı" />
     <!-- Taksit bölümünü göndermeyebilirsiniz. Göndermediğiniz takdirde peşin işlem yapacaktır. -->
    <button type="submit">Gönder</button>
</form>
Geri dönüş sayfa örneği
<?php 

function sessiondogrula($token) {
        $data = array(
            'ACTION'=>'ISDONE',
            'SESID'=>$token
        );  
        $ch=curl_init();
        curl_setopt($ch, CURLOPT_URL, "https://www.shopinext.com/api/v1");
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1) ;
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 20);
        $result = json_decode(curl_exec($ch));
        if(curl_errno($ch))
            die("Bağlantı hatası. err:".curl_error($ch));
        curl_close($ch);
        return $result;
}

if(isset($_POST['responseCode']) && $_POST['responseCode'] == 00) {

    
    echo '<pre>';
    print_r($_POST);
    echo '</pre>';
   
    /**
        [responseCode] => 00
        [sessionToken] => OVK6NA59M8DTDJMAAG756HVRV4KCPRU632L0RMN8 // Başarılı sonuçlanan SESSIONTOKEN
        [orderID] => SN1W2NSH4FDF // Shopinext tarafından oluşturulmuş özel sipariş kodu
        [responseMsg] => Başarılı
    **/

    $token = $_POST['sessionToken'] ;
    $session =  sessiondogrula($token);  
    if(isset($session->responseCode) && $session->responseCode == 00 ) {
        echo 'Ödemeniz alındı teşekkürler.';
    } else {
        echo $session->responseMsg;
        die;
    /** Bu kısımda dönen sessionToken verisi ile veritabanındaki işlemi iptal edebilir veya başarısız sonuçlandırabilirsiniz. **/
    }
} elseif(isset($_POST['responseCode']) && $_POST['responseCode'] == 99) {
    /** Bu kısımda dönen sessionToken verisi ile veritabanındaki işlemi iptal edebilir veya başarısız sonuçlandırabilirsiniz. **/
    echo $_POST['errorMsg'];
}
BankaKart NumarasıS.K.TCVV3D Şifre
AKBANK-MASTER
5571135571135575
12/2030
000a
TEB-VISA
4402934402934406
12/2030
000a
TEB-MASTER
5101385101385104
12/2030
000a

WooCommerce Wordpress Ödeme Modülü

WooCommerce, WordPress'in özgür ve açık kaynak kod kaynaklı E-Ticaret eklentisidir. WooThemes tarafından yapılan ve Automattic tarafından geliştirilen eklenti, kolaylıkla tüm Wordpress kullanıcıları tarafından yönetilebilmektedir. Responsive özelliği bulunan birçok tema seçeneğine sahip WooCommerce ile müşterileriniz hem cep telefonlarından hem de bilgisayarlarından problem yaşamadan e-ticaret sitenizi ziyaret edebilir. Shopinext olarak WooCommerce kullanıcıları'nın Shopinext hesaplarını bir sanal pos gibi kullanabilmelerini sağlayan kolay kurulumlu bir modül geliştirdik.


Shopinext için hazırlanan WooCommerce Ödeme Modülü'nü kullanarak Shopinext'i sitenize kolaylıkla entegre edebilirsiniz. Shopinext modülünün kurulumu oldukça kolay ve hızlıdır. Kurulumu gerçekleştirmeniz için gereken adımları aşağıda listeledik. 



  1. Shopinext hesabınıza giriş yapınız. Shopinext hesabınız yoksa buraya tıklayarak hesabınızı oluşturabilirsiniz.

  2. Shopinext paneli üzerinden API Ayarları bölümünden API başvurunuzu gerçekleştirin. Başvurunuz en kısa sürede değerlendirilecektir, onay aldığınızda E-posta aracılığıyla size bilgi verilecektir. API anahtarınızı ve kullanıcı bilgilerinizi güvenli bir yere kaydedin.

  3. Buraya tıklayarak Shopinext eklentisini indirin. Shopinext eklentisi en son 23 Şubat 2021 tarihinde güncellenmiştir ve versiyonu 1.1’dır. En güncel eklentiyi kullanmanız hem güvenlik hem de özellik açısından önemlidir.

  4. Web sitenizi ve veritabanınızı olası problemlere karşı yedekleyin.

  5. Shopinext eklentisini zip olarak Wordpress panelinizdeki Eklentiler bölümünden Yeni Yükle kısmını kullanarak direk yükleyebilirsiniz. Otomatik yüklemelerde sıkıntı yaşıyorsanız zip içindeki tüm dosyaları wordpress dizininizde yer alan wp-content/plugins dizininize kopyalayınız ve Wordpress panelinizdeki Eklentiler bölümünde Shopinext eklentisini bulun ve eklentiyi kurun.

  6. WooCommerce ayarlarından Ödemeler sekmesinden Shopinext ödeme yönteminin ayarlarına giriniz ve Shopinext API anahtarınız, kullanıcı adınız ve şifrenizi ilgili alanlara giriniz.

  7. WooCommerce ayarlarından Ödemeler sekmesinde yer alan Shopinext ödeme yönteminin aktif olarak işaretlendiğinden emin olunuz. Artık Shopinext hesabınızı kullanarak internet siteniz üzerinden tüm ödemeleri alabileceksiniz.


Uyarılar ve Notlar


  • Shopinext Api V1.1’i kullanmakta olduğundan bazı özellikleri sınırlandırılmıştır. Kısıtlı özellikler şu şekilde listelenebilir:

    • Api V1.1’deki uçlarda taksitli alışveriş yer almaktadır; ancak taksitli alışverişte çekilen tutar WooCommerce’e gönderilmediğinden ötürü uyumsuzluklar yaşanabilmektedir. Faturalandırma işlemlerinizi Shopinext panelini kullanarak gerçekleştirecekseniz Api V1.1 dökümantasyonunda yer alan örnek kodlarda taksitle ilgili bölümü alıp wp-content/plugins/shopinext/shopinext.php klasöründe formun ilgili bölümüne ekleyerek taksitli satışı aktif edebilirsiniz; ancak yeni Api versiyonu çıkana kadar bu satış türü önerilmemektedir.

  • Kredi kartı bilgilerinin girildiği formu sitenize uygun tasarlamanız mümkündür. wp-content/plugins/shopinext/shopinext.php dosyasındaki forma çeşitli CSS özellikleri tanımlayarak kredi kartı bilgilerinin girileceği formu kendi sitenize uygun şekilde tasarlayabilirsiniz.


1- Extract the Zip file to the main directory where Opencart files are located.
2- Go to Extensions->Extensions section from the Opencart administrator panel.
3- Select Payments from the section choosing the plugin type
4- Find the Shopinext Payment Module and click the Install button.
5- Enter the Settings section by clicking Edit button.
6- After filling the necessary information, enabled the status and save.

You can send us errors and problems you have experienced through https://www.shopinext.com/panel/iletisim..

Our work continues for the missing versions.


VersionModule
Opencart
3.0.xDownload
Opencart2.3.xDownload
Opencart2.0.xDownload

Mağaza Kuru 

Mağazanın varsayılan satış kurunu sorgulayabilirsiniz.

POST Adresi: https://www.shopinext.com/api/v1

Gönderilen SorguBaşarılı Yanıt
'ACTION'=>'ALLOWCURRENCY',
'APIKEY'=>'APIKEY',
'SNID'=>'shopitest@shopinext.com', // Shopinext Mail Adresiniz
'SNPASS'=>'shopitest', // Shopinext Şifreniz


[currency] => USD

İşlem Kontrolü

Başarılı veya başarısız yanıt almayan işlemin durumunu SESSIONTOKEN ile kontrol edebilirsiniz.

POST Adresi: https://www.shopinext.com/api/v1

Gönderilen SorguBaşarılı Yanıt
'ACTION'=>'ISDONE',
'SESID'=>'SESSIONTOKEN' // İşlem için oluşturulmuş SESSIONTOKEN


[responseCode] => 00
[sessionToken] => SESSIONTOKEN // Gönderilen SESSIONTOKEN
[responseMsg] => Başarılı
Başarısız Yanıt
[responseCode] => 99
[sessionToken] => SESSIONTOKEN // Gönderilen SESSIONTOKEN
[responseMsg] => Bu SESSION ile sonlanmış bir sipariş mevcut değil.

Yaşadığınız hata ve sorunları Destek Merkezi üzerinden bize iletebilirsiniz.

Modülü İndir