PHP code example of shoplemo / php-sdk

1. Go to this page and download the library: Download shoplemo/php-sdk library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

shoplemo / php-sdk example snippets






$config = new \Shoplemo\Config();
$config->setAPIKey('TEST');
$config->setSecretKey('TEST');
$config->setServiceBaseUrl('https://payment.shoplemo.com');

// kredi kartı ile ödeme başlatmak için;
$request = new \Shoplemo\Paywith\CreditCard($config);

$request->setUserEmail('[email protected]'); // ödemeyi yapacak kullanıcının email adresi
$request->setCustomParams(json_encode(['custom_param1' => 'deneme'])); // ödeme işlemi başlamadan önce işlemi takip etmek isteyebileceğiniz parametreleri iletebilirsiniz. Bu parametre Json formatında olmalıdır.

// dil seçimi yapmak isterseniz; aşağıdaki parametreyi eklemeniz gerekir.
$request->setLanguage('tr'); // en: İngilizce, tr: Türkçe

// başarılı ödeme sonrası kullanıcınızı sitenizdeki başka bir adrese yönlendirmek istiyorsanız; bu parametreyi ayarlamanız gerekir.
$request->setRedirectUrl("https://www.siteniz.com/hedef");

// başarısız ödemeler için ise bunu eklemelisiniz;
$request->setFailRedirectUrl("https://www.siteniz.com/hedef");

// callback yani IPN adresinizi Shoplemo mağaza panelinizden ayarlayabilirsiniz. İlgili adresleri sadece Shoplemo teslimat botları ziyaret ve kullanıcınız görmez. Siparişle ilgili işlemleri callback adresinizde yaptırmalısıız.

//sepet oluşturuyoruz;
$basket = new \Shoplemo\Model\Basket;
$basket->setTotalPrice(2000); // sepetteki ürünlerin toplam tutarını iletiyoruz. Bu aynı zamanda kullanıcıdan alınacak ödeme tutarıdır. (toplam tutar * 100)

//sepet eklemek için ürün oluşturuyoruz;
$item1  = new \Shoplemo\Model\BasketItem;
$item1->setName('Test 1');
$item1->setPrice(1000); //price *100
$item1->setType(\Shoplemo\Model\BasketItem::DIGITAL); // dijital ürün
$item1->setQuantity(1);

$item2  = new \Shoplemo\Model\BasketItem;
$item2->setName('Test 2');
$item2->setPrice(1000); // price * 100
$item2->setType(\Shoplemo\Model\BasketItem::PHYSICAL); // fiziksel ürün
$item2->setQuantity(1);

// oluşturduğumuz ürünleri, sepete ekliyoruz.
$basket->addItem($item1);
$basket->addItem($item2);

// alıcı ile ilgili elimizde olan bilgileri paylaşabilirsiniz. (opsiyonel)
$buyer = new \Shoplemo\Model\Buyer;
$buyer->setIdentityNumber('TC_KIMLIK'); // kişiye ait vatandaşlık numarası (kyc prosedürü gerektiren durumlar için yollayabilirsiniz.)
$buyer->setName('Emrah');
$buyer->setSurname('ÖZDEMİR');
$buyer->setGsm('905300000000'); // telefon numarası (doğru bir biçimde ilettiğinizde ödeme ekranında kullanıcıdan bu bilgi talep edilmez.)
$buyer->setCity('Izmir'); // şehir
$buyer->setCountry('Turkey'); // ülke
// (opsiyonel)
$shipping = new \Shoplemo\Model\Shipping; 
$shipping->setFullName('EMRAH OZDEMIR'); // alıcının adı
$shipping->setPhone('905300000000'); // alıcının telefon numarası 
$shipping->setAddress('PHP Caddesi No:7/4 Daire:10'); // Adres
$shipping->setPostalCode('35000'); // posta kutusu
$shipping->setCity('Izmir'); //şehir
$shipping->setCountry('Turkey'); // ülke
// (opsiyonel)
$billing = new \Shoplemo\Model\Billing; 
$billing->setFullName('EMRAH OZDEMIR'); // fatura kesilecek kişinin yada kurumun adı
$billing->setTaxNumber('XXXXXXXX'); // kurumlar için vergi numarası, şahıslar için vatandaşlık numarası
$billing->setTaxHouse('IZMIR'); // kurumlar için vergi dairesi, şahıslar için yaşadığı şehir
$billing->setPhone('905300000000'); // atura kesilecek kişinin telefon numarası 
$billing->setAddress('PHP Caddesi No:7/4 Daire:10'); // atura kesilecek kişinin adresi
$billing->setPostalCode('35000'); // posta kutusu
$billing->setCity('Izmir'); //şehir
$billing->setCountry('Turkey'); // ülke

// yapılan tanımlamaları $request içerisine aktarıyoruz.
$request->setBasket($basket);
$request->setBuyer($buyer);
$request->setShipping($shipping);
$request->setBilling($billing);

if($request->execute()){ // request'i işleme alıyoruz.
   echo $request->getResponse(); // başarılı sonuç alınırsa json formatında yanıt döner.
}else{
   echo $request->getError(); // hata durumunda, hata mesajını yazdırır.
}

bash
composer