PHP code example of wiensa / trendyol-sp-api

1. Go to this page and download the library: Download wiensa/trendyol-sp-api 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/ */

    

wiensa / trendyol-sp-api example snippets


use TrendyolApi\TrendyolSpApi\Facades\Trendyol;

// Ürünleri listeleme
$products = Trendyol::products()->list(['page' => 0, 'size' => 50]);

// Sipariş bilgilerini alma
$orders = Trendyol::orders()->list(['status' => 'Created', 'startDate' => '2023-01-01', 'endDate' => '2023-12-31']);

// Kategorileri listeleme
$categories = Trendyol::categories()->list();

// Markaları arama
$brands = Trendyol::brands()->search('Apple');

// İadeleri listeleme
$returns = Trendyol::returns()->list(['startDate' => '2023-01-01', 'endDate' => '2023-12-31']);

// Müşteri sorularını listeleme
$questions = Trendyol::customerQuestions()->list(['status' => 'WAITING_FOR_ANSWER']);

// Şikayetleri/talepleri listeleme
$claims = Trendyol::claims()->list(['status' => 'OPEN']);

// Kargo firmalarını listeleme
$shipmentProviders = Trendyol::shipmentProviders()->list();

// Ürünleri listeleme
$products = trendyol()->products()->list(['page' => 0, 'size' => 50]);

// Sipariş bilgilerini alma
$orders = trendyol()->orders()->list();

// İadeleri listeleme
$returns = trendyol()->returns()->list();

// Müşteri sorusuna yanıt verme
$answer = trendyol()->customerQuestions()->answer(12345, 'Ürünümüz 2 yıl garantilidir.');

use TrendyolApi\TrendyolSpApi\Trendyol;

class ProductController extends Controller
{
    protected Trendyol $trendyol;
    
    public function __construct(Trendyol $trendyol)
    {
        $this->trendyol = $trendyol;
    }
    
    public function index()
    {
        return $this->trendyol->products()->list();
    }
}

use TrendyolApi\TrendyolSpApi\Exceptions\TrendyolApiException;

try {
    $products = Trendyol::products()->list();
} catch (TrendyolApiException $e) {
    // API hatası işlemleri
    $error_code = $e->getCode();
    $error_message = $e->getMessage();
} catch (\Exception $e) {
    // Diğer hatalar
}

// İadeleri listeleme
$returns = Trendyol::returns()->list([
    'startDate' => '2023-01-01',
    'endDate' => '2023-12-31',
    'status' => 'PENDING'
]);

// İade detayını görüntüleme
$returnDetail = Trendyol::returns()->get(12345);

// İade durumunu güncelleme (onaylama)
$updateStatus = Trendyol::returns()->updateStatus(12345, 'APPROVED');

// İade durumunu güncelleme (reddetme)
$updateStatus = Trendyol::returns()->updateStatus(12345, 'REJECTED', 'Ürün hasarlı geldi');

// İade kargo takip numarasını güncelleme
$updateTracking = Trendyol::returns()->updateTrackingNumber(12345, '1234567890');

// Müşteri sorularını listeleme
$questions = Trendyol::customerQuestions()->list([
    'status' => 'WAITING_FOR_ANSWER',
    'startDate' => '2023-01-01',
    'endDate' => '2023-12-31'
]);

// Soru detayını görüntüleme
$questionDetail = Trendyol::customerQuestions()->get(12345);

// Soruyu yanıtlama
$answer = Trendyol::customerQuestions()->answer(12345, 'Ürünümüz 2 yıl garantilidir.');

// Soruyu eskalasyon yapma/üst kademeye iletme
$escalate = Trendyol::customerQuestions()->escalate(12345, 'Teknik bilgi gerektiren bir soru');

// Talepleri listeleme
$claims = Trendyol::claims()->list([
    'status' => 'OPEN',
    'startDate' => '2023-01-01',
    'endDate' => '2023-12-31'
]);

// Talep detayını görüntüleme
$claimDetail = Trendyol::claims()->get(12345);

// Talebe not ekleme
$addNote = Trendyol::claims()->addNote(12345, 'Müşteri ile görüşüldü, çözüm sağlandı.');

// Talep durumunu güncelleme
$updateStatus = Trendyol::claims()->updateStatus(12345, 'SOLVED', 'Müşteriye yeni ürün gönderildi');

// Talebe döküman/delil yükleme (Base64 formatında dosya içeriği)
$uploadDocument = Trendyol::claims()->uploadDocument(
    12345,
    base64_encode(file_get_contents('kargo_fisi.pdf')),
    'kargo_fisi.pdf'
);

// Kargo firmalarını listeleme
$shipmentProviders = Trendyol::shipmentProviders()->list();

// Tedarikçi kargo hesaplarını görüntüleme
$supplierAccounts = Trendyol::shipmentProviders()->getSupplierAccounts();

// Sevkiyat çıkışlarını listeleme
$shipmentOutbounds = Trendyol::shipmentProviders()->getShipmentOutbounds([
    'startDate' => '2023-01-01',
    'endDate' => '2023-12-31'
]);

// Sevkiyat çıkışı detayını görüntüleme
$shipmentOutbound = Trendyol::shipmentProviders()->getShipmentOutbound(12345);

// Teslimat seçeneklerini görüntüleme
$deliveryOptions = Trendyol::shipmentProviders()->getDeliveryOptions();

// Kargo etiketi indirme
$shippingLabel = Trendyol::shipmentProviders()->downloadShippingLabel(12345);

// Toplu kargo etiketi indirme
$bulkShippingLabels = Trendyol::shipmentProviders()->downloadBulkShippingLabel([12345, 67890]);

// Sevkiyat çıkışı oluşturma
$createOutbound = Trendyol::shipmentProviders()->createShipmentOutbound([
    'shipmentProvider' => 'Aras',
    'packageDetails' => [
        // ...
    ]
]);
bash
php artisan vendor:publish --provider="TrendyolApi\TrendyolSpApi\Providers\TrendyolServiceProvider" --tag="config"