Katalog servisi için WSDL adresi: https://api.n11.com/ws/CatalogService.wsdl
Çoklu Katalog Arama (SearchCatalog)
n11 katalog toplu ürün sorgulama yapılmasına sağlayan servistir.
Dikkat Edilmesi Gerekenler;
- Ürün adı(Title), Kategori ID, GTIN/Barcode, Marka ve Katalog ID alanları ile toplu ürün arama yapılabilir.
- Kategori ID girildiğinde Marka veya Ürün adı’ndan en az biri zorunlu olarak girilmelidir.
- Ürün adı girildiğinde, Kategori ID girilmesi zorunludur.
- Bir istekte birden fazla Kategori ID girilemez.
- Bir istekte birden fazla Marka girilemez.
- Ürün adı, GTIN/Barcode ve Katalog ID için bir istekte birden fazla değer gönderilebilir. Gönderilebilecek azami değer sayısı her bir parametre için 10 adettir.
- Ürün adı ile yapılan aramalarda, 10 karakter ve üzeri olan ürün adları için servisten cevap dönülecektir.
- Çoklu parametre girişlerinde servis alttaki kurguya göre cevap verecektir;
- Katalog ID girilmiş ise sadece bu alana bakılarak arama yapılır. Diğer alanlara bakılmaz.
- Katalog ID girilmemiş, GTIN/Barcode girilmiş ise sadece bu alana bakılarak arama yapılır. Diğer alanlara bakılmaz.
- Katalog ID ve GTIN değerleri girilmediği çoklu aramalarda, birden fazla parametre ile arama yapıldığında servis cevabında kesişim dönülür.
| Parametre | Açıklama |
| Auth.appKey | API Key |
| Auth.appSecret | API Secret |
| productTitles | Ürün adları, virgülle ayrılarak maksimum 10 adet olacak şekilde toplu girilebilir. |
| categoryId | Kategori Id |
| uscs | GTIN/Barcode, virgülle ayrılarak maksimum 10 adet olacak şekilde toplu girilebilir. |
| brandName | Marka |
| catalogIds | Katalog Id, virgülle ayrılarak maksimum 10 adet olacak şekilde toplu girilebilir. |
| currentPage | Mevcut sayfa no |
| Parametre (Cevap) | Açıklama |
| result.status | İşlem sonucu durum bilgisini gösterir. “success” ya da “failure” bilgilerini döner. |
| searchResponses.searchResponse.products.product.catalogId | Ürünün katalog id bilgisi |
| searchResponses.searchResponse.products.product.categoryId | Ürünün kategori id bilgisi |
| searchResponses.searchResponse.products.product.categoryName | Ürünün kategori adı |
| searchResponses.searchResponse.products.product.productTitle | Ürünün adı |
| searchResponses.searchResponse.products.product.usc | Ürünün GTIN/Barcode bilgisi |
| searchResponses.searchResponse.searchRequest.usc | Arama yapılan GTIN/Barcode bilgisi |
| searchResponses.searchResponse.searchRequest.categoryId | Arama yapılan kategori id bilgisi |
| searchResponses.searchResponse.searchRequest.productTitle | Arama yapılan ürün adı |
| searchResponses.searchResponse.searchRequest.catalogId | Arama yapılan katalog id bilgisi |
| searchResponses.searchResponse.searchRequest.brandName | Arama yapılan marka |
Örnek Request
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:sch="http://www.n11.com/ws/schemas">
<soapenv:Header/>
<soapenv:Body>
<sch:SearchCatalogRequest>
<auth>
<appKey>***</appKey>
<appSecret>***</appSecret>
</auth>
<productTitles></productTitles>
<categoryId></categoryId>
<uscs></uscs>
<brandName></brandName>
<catalogIds>966491, 964912</catalogIds>
<currentPage>0</currentPage>
</sch:SearchCatalogRequest>
</soapenv:Body>
</soapenv:Envelope>
Örnek Response
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<ns3:SearchCatalogResponse
xmlns:ns3="http://www.n11.com/ws/schemas">
<result>
<status>success</status>
</result>
<searchResponses>
<searchResponse>
<products>
<product>
<catalogId>966491</catalogId>
<categoryId>1000001832</categoryId>
<categoryName>İç Cephe</categoryName>
<productTitle>description test</productTitle>
</product>
</products>
<searchRequest>
<catalogId>966491</catalogId>
</searchRequest>
</searchResponse>
<searchResponse>
<products>
<product>
<catalogId>964912</catalogId>
<categoryId>1000001832</categoryId>
<categoryName>İç Cephe</categoryName>
<productTitle>Filli Boya İndeko-Home Küf Önleyici İç Cephe Boyası Test</productTitle>
</product>
</products>
<searchRequest>
<catalogId>964912</catalogId>
</searchRequest>
</searchResponse>
</searchResponses>
</ns3:SearchCatalogResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
POSThttps://api.n11.com/ms/product/tasks/product-create
CreateProduct ürün yükleme servisimiz üzerinden belirli parametreleri eleyerek barcode ya da catalogId bazında hızlı ürün yükleyebilirsiniz.
- Authorization no auth seçiniz.
- Headers alanına appKey ve appSecret bilgisini eklemeniz gerekir.
- HTTP isteğinizi POST methoduyla ilgili endpoint’e gönderin.
- İsteğinizi JSON formatında body de raw olarak aşağıdaki örnek desende iletiniz.
- Tek seferde maximum 1000 sku gönderebilirsiniz.
- Servise yapılan her başarılı istek için response’ta ID (taskId) değeri dönmektedir. TaskDetails servisi ile yapılan işlemin kontrolü sağlanabilir.
Dikkat Edilmesi Gerekenler;
- SearchCatalog servisinden dönen n11’e kayıtlı catalogId ya da barcode alanını bu serviste gönderebilirsiniz.
- Ürün bazlı shipmentTemplate (kargo şablon adı) gönderilmelidir.
- Request içerisinde barcode ya da catalogId alanı zorunludur.Her ikisi de dolu ise catalogId öncelikli baz alınacaktır.
- n11 kataloğundan eşleşen üründe kataloga kayıtlı açıklama alanıvar ise n11 açıklaması ürüne eklenecektir. Katalog açıklaması yok ise Request içerisinden gelen description alanı baz alınacaktır.
- Barcode ile gönderimde, gönderilen barcode değerine sahip ürünün n11 kategorisi ile Request içerisinde gelen categoryId alanı farklı ise ürün satıcı panelinde Aksiyon Bekleyenler > Satıcı Onayı Bekliyor statüsü ile kayıt edilecektir.
| Parametre | Zorunlu | Açıklama | Tip |
| integrator | Evet | API Kullanıcı/Entegratör Firma ismini yazınız. Tüm gönderimlerinizde aynı ismi iletiniz. |
string |
| description | Evet | Ürüne ait açıklamaları ekleyiniz. | HTML-string |
| categoryId | Evet | GetCategories servisinden aldığınız kategorinin en alt kırılım id değerini yazınız. |
long |
| productMainId | Evet | Ürüne ait tüm modeller için aynı id değerini yazınız. | string |
| preparingDay | Evet | Ürünün kargoya verilmesi için gereken süredir. | integer |
| shipmentTemplate | Evet | Hesabım > Teslimat Bilgilerim alanında oluşturduğunuz kargo şablon ismini yazınız. |
string |
| maxPurchaseQuantity | Hayır | Maksimum tekil alıcı başına satın alım adedidir. | integer |
| stockCode | Evet | Ürüne ait belirlediğiniz uniq değerdir. | string |
| catalogId | Hayır : barcode alanı dolu ise | n11’in kataloğundaki id değeridir. | long |
| barcode | Hayır : catalogId alanı dolu ise | n11 kataloğuna kayıtlı barcode değeri. | string |
| quantity | Evet | Stok miktarı. Maksimum değer 999.999. | integer |
| salePrice | Evet | Ürün satış fiyatı | amount |
| listPrice | Evet | Ürün liste fiyatı | amount |
| currencyType | Evet | Fiyatlandırmanızı TL, USD, EUR para birimlerini kullanabilirsiniz.USD ve EUR para birimi Merkez Bankası kur oranına göre güncellenir. | string |
| vatRate | Evet | Ürün KDV oranı 0, 1, 10, 20 değerlerini alabilir. | integer |
| Parametre (Cevap) | Açıklama | Tip |
| id | TaskDetails‘de bu idye göre sorulanmalıdır. | long |
| type | SKU_UPDATE (Stok Fiyat Güncelleme) PRODUCT_UPDATE (Ürün Güncelleme) PRODUCT_CREATE (Ürün Yükleme) PRODUCT_DELETE (Ürün Silme) |
string |
| status | IN_QUEUE (Task İşleniyor, TaskDetails’den sorgulayınız.) REJECT (Task İşlenmemiştir, reasons alanını kontrol ediniz.) |
string |
| reasons | Status bilgisine göre nedenler yazmaktadır. Task işleme alındığında “X sku işlenmeye alındı.” dönecektir (X=Task ürün sayısı). | list of string |
Örnek Request
{
"payload": {
"integrator": "Entegratör isminizi yazınız",
"skus": [
{
"description": "BB test test",
"categoryId": 1000476,
"productMainId": "test1",
"preparingDay": 3,
"shipmentTemplate": "1",
"maxPurchaseQuantity": 5,
"stockCode": "md01g4141",
"catalogId": null,
"barcode": 8806094924862,
"quantity": 10,
"salePrice": 2000,
"listPrice": 2200,
"listPrice": 2200,
"currencyType": "TL",
"vatRate": 10
}
]
}
}
Örnek Response
{
"id": 1092,
"type": "PRODUCT_CREATE",
"status": "IN_QUEUE",
"reasons": [
"1 sku işlenmeye alındı."
]
}