shoplemo/php-sdk

shoplemo checkout api php client

1.3.0 2020-04-06 13:07 UTC

This package is auto-updated.

Last update: 2025-07-21 22:27:57 UTC


README

Latest Stable Version Build Status

Bu kütüphaneyi kullanmak için onaylı bir shoplemo satıcı hesabına ve mağazasına sahip olmanız gerekmektedir. Shoplemo'ya https://www.shoplemo.com adresinden ulaşabilirsiniz.

Bu servisle ile ilgili doküman https://payment.shoplemo.com/doc adresindedir.

Gereklilik

PHP 5.6 ve üzeri.

Kurulum

Composer

Composer aracılığı ile kullanmak için bu komutu yürütün:

composer require shoplemo/php-sdk

Tanımlamak için Composer autoload dosyasını çağırın:

require_once('vendor/autoload.php');

Composer Olmadan

Composer kullanmak istemiyorsanız, sdk'nin son sürümünü latest release adresinden indirebilirsiniz. Daha sonra kullanmak için indirdiğiniz klasörün içinde yer alan Bootstrap.php dosyasını projenize dahil etmeniz yeterli olacaktır.

require_once('/path/to/php-sdk/Bootstrap.php');

Kullanım Örneği

$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('test@shoplemo.tdl'); // ö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.
}

Daha fazla örnek yakında eklenecektir.