Trendyol Sipariş Durum Güncellemesi - Trendyol Php Api

08/04/2021

Trendyol Sipariş Durum Güncellemesi - Trendyol Php Api

Trendyol kullanan işletmeler eğer farklı bir muhasebe yazılımı ya da aynı zamanda kendilerine ait bir e-ticaret sitesi veya farklı pazaryerleri kullanıyorlar ise bu sistemlerini Trendyol ile entegre ederek, tek bir panelden hem kendilerine ait hem de Trendyol'dan gelen siparişlerini kolayca yönetebilirler. Ben de bu içeriğimde Trendyol siparişlerinin API ile nasıl güncellenebileceğini sizlere örnek kodlar ile anlatmaya çalışacağım. Konu ile ilgili ana kaynağı ve API döküman ve değerlerini https://developers.trendyol.com/tr/siparis-entegrasyonu/paket-statu-bildirimi linkinden inceleyebilirsiniz.

Trendyol uygulaması siparişlerinizin 2 değer statüsünü (status) dışardan API ile güncellemenize olanak sağlamaktadır. Bunlardan biri "Picking", diğeri ise "Invoiced"dir. Trendyol için bir siparişi Picking statüsüne getirdiğinizde anlaşmalı kargo firması ürünü teslim almak üzere sizin merkezinize yönlendirilir. Siparişi Invoiced statüsüne getirdiğiniz zaman ise ilgili siparişe ait faturalandırma yapıldığı sisteme kayıt edilir. Trendyol'un ana referans API dosyasında belirttiği üzere siparişlerin "invoiced" olarak belirtilmesi sipariş iptallerinin önüne geçilmesi için oldukça önemlidir. Trenyol ana kaynağından ilgili bilgilendirme: "Fatura kesme işleminin bildirilmesi, Trendyol Müşteri Hizmetlerine ulaşan, müşteri kaynaklı iptallerin önlenmesi için bir referanstır."

Öncelikle API oluştururken sipariş statüs güncellemesi için aşağıdaki URL'yi kullanmanız gereklidir ve bu URL içerisinde mağaza numarası ve sipariş idsini bulundurmanız gereklidir:

https://api.trendyol.com/sapigw/suppliers/{MagazaNo}/shipment-packages/{SiparisId}

MağazaNo alanı için size ait olan bilgiyi Trendyol panelinizden edinebilirsiniz. SiparisId olarak belirtilen bölüm ise güncelleme yapacağınız siparişin size Trendyol tarafından iletilen Id numarasıdır. Ekstra: bir başka bir içeriğimizde, ayrıca Trendyol üzerinden sipariş çekmeyi - listemeleyi ve incelemeyi ele alacağım.

Şimdi ise tamamen php kodlaması ile (aşağıdaki örnekte gösterildiği gibi) gerekli URLye bağlanmak için hazırlıklarımızı yapıyor, içinde Trendyol sipariş idsi bulunan ve status'u "Picking" olarak güncelleyecek CURL bağlantımızı oluşturuyor ve JSON satırlarımızı karşı sunucuya ileterek istediğimiz işlemi tamamlıyoruz:

$url="https://api.trendyol.com/sapigw/suppliers/$magazano/shipment-packages/$trendyolid";
$ch = curl_init($url);   
$json='{
    "lines": [{
        "lineId": '.$sipno.',
        "quantity": 1
    }],
    "params": {},
    "status": "Picking"
}'; 
curl_setopt($ch, CURLOPT_POST, $url);
$header = array(    
        'Authorization: Basic '. base64_encode('API-KEY'),
        'Content-Type: application/json'
    );
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
$result = curl_exec($ch);
curl_close($ch);

Bu uygulama ile ilgili siparişin durumunu kargoya verilmek üzere ya da Trendyol dili ile Picking durumuna getirebilirsiniz. Bu bildirim ile birlikte anlaşmalı kargo firması paketinizi teslim almak üzere sizlere ulaşacaktır. İlgili örnekte bulunan "$sipno" değeri Trendyol üzerindeki siparişe ait benzersiz id numarasıdır. Authorization bağlantısı yaparken kullandığımız API-KEY değeri ise Trendyol'un size tanımladığı API KEY'idir. Bu bilgiye de Trendyol mağaza yönetici panelinizden erişebilirsiniz.

{
    "lines": [{
        "lineId": {lineId},
        "quantity": 3
    }],
    "params": {
        "invoiceNumber": "INA2021000025208"
    },
    "status": "Invoiced"
}

Eğer siparişinize ait faturanızı oluşturduysanız yukarıdaki örnek ile siparişinizin durumunu faturalandırıldı yani Trendyol dili ile "Invoiced" statüsüne getirebilirsiniz. Burada sadece şunu unutmamalısınız, API ile çalışırken siparişe ait statüyü öncelikli Picking sonrasında Invoiced statüsüne getirmelisiniz.

Trendyol Entegrasyonu ve Bu Örnek Benim Ne İşime Yarar?

Bu örnekteki bir entegrasyon ile eticaret paneliniz üzerinden hem eticaret siparişlerinizi yönetebileceğiniz gibi eş zamanlı olarak Trendyol paneline girmeden Trendyol siparişleriniz için de güncelleme yapmanızı sağlar. Ya da bir efatura oluşturan ön muhasebe programı kullanıyorsanız faturalarınızı ve Trendyol siparişlerinizi daha hızlı ve kontrollü bir şekilde yönetmenize imkan verir. Veya şu da muhtemeldir ki; hem kendinize ait bir e-ticaret sitesine, hem fiziki dükkan üzerinden satış yapan bir mağazaya, hem de Trendyol üzerinden satış yaptığınız bir sistem düşünün. Her bir siparişi ayrı kanaldan güncellemek, kontrol etmek ya da faturalandırmak yerine tek bir yönetici merkezli bir entegrasyona sahip olmanız size ciddi bir zaman kazandıracaktır. Aynı şekilde daha hatasız bir kontrol ve operasyon için bu ve bunlara benzer entegrasyonlar kullanmanız işinizi geliştirmeniz için size hem zaman hem de tasarruf kazandıracaktır.

Trendyol uygulaması üzerinden satış yapıp, aynı zaman da kendi eticaret siteniz üzerinden de online satışlar yapıyor ve bunları faturalandırmak için ayrı bir muhasebe yazılı kullanıyorsanız Trendyol Entegrasyonu ile ilgilenmenizi öneririm. Trendyol entegrasyonu size zamansal ve maddi anlamda ciddi katkılar sağlayacaktır.

Trendyol Entegrasyonu için Profesyonel Destek İstiyorum

Trendyol konusunda profesyonel desteğe ihtiyacınız varsa bana ulaşabilirsiniz. Trendyol ile ilgili profesyonel olarak her türlü entegrasyon ihtiyaçlarınıza çözümler üretebilirim. Bana ulaşın.

Yorumlar
21/Nisan/2021 (09:06:30) tarihinde Gökçe Yılmaz yazdı:
Merhabalar, burada kullandığınız $trendyolid ve $sipno api dokümanlarındaki hangi idler. bilgi verebilir misiniz? teşekkürler
Cevaplar
25/Mayıs/2021 (08:50:59) tarihinde Mert Şener yazdı:
Merhaba evet, aynen yazdığınız şekildedir.
25/Mayıs/2021 (08:40:26) tarihinde Zeki yazdı:
Merhaba bu trendyol tarafında birçok ID bulunmaktadır. Konunun netleşmesi açısından soruyorum. $sipno trendyol tarafında orderNumber, $trendyolid ise trendyol tarafında id olarak verilenler midir? Teşekkürler
21/Nisan/2021 (14:56:17) tarihinde Mert Şener yazdı:
Merhaba, $sipno Trendyolun ürettiği sipariş numarası, $trendyolid ise siparişin Treendyol kısmındaki id veya benzersiz kayıt numarasıdır.
Bu yoruma cevap yaz
Yorum Yazın
Yorumunuz
Eposta (Yayınlanmayacaktır)
İsim
Web Sitesi

Konuyla alakalı ilginizi çekebilicek içerikler:

Desteğe mi ihtiyacınız Var?

Eticaret ve SEO konularında profesyonel hizmeti bizden alabilirsiniz.

Mert Şener Kimdir?

Eticaret ve SEO alanında 16 yıllık bir tecrübe ile yüzlerce firmaya hizmet vermiş, profesyonel bir geliştiricidir...