Hoşgeldiniz
Version : 0.1.0b
Bu doküman websitenizi API aracılığı ile çalışacak Site Sahipleri/Entegratörler için oluşturulan ve
entegrasyonun
tamamlanması adına gerekli bütün bilgilerin iletildiği Softtr E-Ticaret Sistemleri entegrasyon doküman
sayfasıdır.
API'yi kullanmak veya görüşlerinizi bizimle paylaşmak isterseniz lütfen bizimle
destek@softtr.com
adresi üzerinden iletişime geçiniz.
Genel Bilgiler
- API endpointlerine ulaşmak için aksi belirtilmediği sürece https://www.domain.com/api adresini
kullanabilirsiniz.
- API, HTTP Basic Auth. ile korunmaktadır, istemci, kullanıcı adı ve şifreyi HTTP Authorization Header
bilgisinde göndermelidir.
- API Kullanıcı adı ve şifrenizi panelinizde "Genel Ayarlar" -> "Api Hesapları" sayfasından
oluşturabilirsiniz.
Genel Hata Mesajları
HTTP Status |
Hata Kodu |
Hata Mesajı |
401 |
401 |
Kullanıcı bilgileri eksik yada yanlış |
404 |
404 |
Geçersiz veya bulunamayan kaynak |
405 |
405 |
Geçersiz istek |
500 |
500 |
Beklenmedik bir sorun oluştu. |
Siparişler
Bu servis ile siparişlerinizi listeleyebilir, detaylı görüntüleyebilir, sipariş durumlarınızı
güncelleyebilirsiniz.
Siparişleri listeleme
Bu servis ile siparişlerinizi listeleyebilir
EndPoint(GET)
https://www.domain.com/api/orders
Parametre listesi :
Parametre |
Tip |
Zorunluluk |
Açıklama |
pageSize |
int |
Opsiyonel |
Bir sayfada görüntülenecek sipariş adedi (Max 100 , Varsayılan 100) |
page |
int |
Opsiyonel |
Görüntülenecek sayfa numarası |
startDate |
string |
Opsiyonel(endDate parametresi ile zorunlu) |
Siparişlerin listeneceği tarih Örneğin : 01-10-2022 |
endDate |
string |
Opsiyonel |
Siparişlerin listeneceği tarih Örneğin : 01-10-2022 |
Örnek endPoint :
https://www.domain.com/api/orders?pageSize=10&page=2&startDate=01-09-2022
Örnek Servis Cevabı :
{
"status": 200,
"message": {
"code": 200,
"detail": {
"requestID": "b668ea650cec4e7d4d5bde6c6f0af8a4"
}
},
"data": {
"orderCount": 25,
"pageCount": 3,
"size": 10,
"page": 3,
"content": [
{
"orderno": "01092022001221-AIK",
"orderAmount": 87.89,
"invoiceName": "Test Kullanıcısı Adı Soyadı",
"invoiceTitle": "Test Kullanıcısı Fatura Ünvanı",
"invoiceTaxOffice": "ATIŞALANI",
"invoiceTaxID": 1111111111,
"invoiceCivID": "",
"invoiceAddress": "Test kullanıcısı fatura adresi",
"invoiceDistrict": "Şişli",
"invoiceCity": "İstanbul",
"shipmentName": "Test Kullanıcısı Adı Soyadı",
"shipmentAddress": "Test kullanıcısı teslimat adresi",
"shipmentDistrict": "Çerkezköy",
"shipmentCity": "İstanbul",
"orderSource": "WEBSITE"
},
...
]
}
}
Açıklamalar :
Parametre |
Tip |
Açıklama |
status |
int |
Cevap HTTP Kodu |
message |
Object |
Cevaba ait detaylar |
message.code |
int |
Cevap kodu |
message.detail |
object |
Mesaj detayı |
message.detail.requestID |
string |
İsteğe ait benzersiz kayıt ID'si |
data |
Object |
|
data.orderCount |
int |
Toplam sipariş adedi |
data.pageCount |
int |
Toplam sayfa adedi |
data.size |
int |
Sayfada olabilecek maximum sipariş adedi |
data.page |
int |
İsteğin sayfa numarası |
data.content |
Array |
Siparişler |
data.content.orderno |
string |
Benzersiz sipariş numarası |
data.content.orderAmount |
float |
Toplam sipariş tutarı |
data.content.invoiceName |
string |
Fatura isim soyisim |
data.content.invoiceTitle |
string |
Fatura Ünvanı |
data.content.invoiceTaxOffice |
string |
Vergi Dairesi |
data.content.invoiceTaxID |
string |
Vergi Numarası |
data.content.invoiceCivID |
string |
TC Kimlik Numarası |
data.content.invoiceAddress |
string |
Fatura Adresi |
data.content.invoiceDistrict |
string |
Fatura İlçe |
data.content.invoiceCity |
string |
Fatura İl |
data.content.shipmentName |
string |
Alıcı Adı Soyadı |
data.content.shipmentAddress |
string |
Alıcı Adresi |
data.content.shipmentDistrict |
string |
Alıcı ilçe |
data.content.shipmentCity |
string |
Alıcı Şehir |
data.content.orderSource |
enum |
Sipariş Kaynağı [WEBSITE,N11,CICEKSEPETI,HEPSIBURADA,TRENDYOL] |
Sipariş Detayı
Bu servis ile siparişi detaylı görüntüleyebilirsiniz.
EndPoint(GET)
https://www.domain.com/api/order/{ORDERNO}
Örnek Servis Cevabı :
{
"status": 200,
"message": {
"code": 200,
"detail": {
"requestID": "72f0769ee515d8fa9c23b4e6bfe7159e"
}
},
"data": {
"content": {
"orderno": "28092022133621-AYD",
"orderAmount": 219.90,
"cargoCharge": 15.00,
"taxAmount": 16.29,
"discount_coupon": "SOFTTR1",
"partner_code": "SOFTTR",
"orderSource": "WEBSITE",
"paymentType": "Kredi Kartı",
"shipmentDetails": {
"shipmentName": "Alıcı Adı Soyadı",
"shipmentAddress": "Alıcı Adresi",
"shipmentDistrict": "Çerkezköy",
"shipmentCity": "İstanbul",
"shipmentGsm": "08503073393"
},
"invoiceDetails": {
"invoiceName": "Fatura Adı Soyadı",
"invoiceCompanyTitle": "Fatura Ünvanı",
"invoiceTaxID": "ATIŞALANI",
"invoiceTaxOffice": "111111111",
"invoiceAddress": "Fatura Adresi",
"invoiceDistrict": "Şişli",
"invoiceCity": "İstanbul",
"invoiceGsm": "08503073393",
"invoicePhone": "08503073393",
"invoiceMail": "destek@softtr.com"
},
"items": [
{
"itemTitle": "Ürün Adı",
"itemBrand": "Marka",
"itemCode": "A111111",
"itemTaxRate": 8,
"itemQuantity": 1,
"itemUnitPrice": 219.9
},
...
]
}
}
}
Açıklamalar :
Parametre |
Tip |
Açıklama |
status |
int |
Cevap HTTP Kodu |
message |
object |
Cevaba ait detaylar |
message.code |
int |
Cevap Kodu |
message.detail |
object |
Cevap detayı |
message.detail.requestID |
string |
Cevaba ait benzersiz ID |
data |
object |
|
data.content |
object |
|
data.content.orderno |
string |
Sipariş numarası |
data.content.orderAmount |
float |
Toplam Sipariş Tutarı |
data.content.cargoCharge |
float |
Kargo Ücreti |
data.content.taxAmount |
float |
KDV Toplamı |
data.content.discount_coupon |
string |
Kullanılan kupon kodu |
data.content.partner_code |
string |
Kullanılan partner kodu |
data.content.orderSource |
enum |
Sipariş Kaynağı [WEBSITE,N11,CICEKSEPETI,HEPSIBURADA,TRENDYOL] |
data.content.paymentType |
string |
Ödeme yöntemi |
data.content.shipmentDetails |
object |
Teslimat Detayları |
data.content.shipmentDetails.shipmentName |
string |
Alıcı Adı Soyadı |
data.content.shipmentDetails.shipmentAddress |
string |
Alıcı Adresi |
data.content.shipmentDetails.shipmentDistrict |
string |
Alıcı ilçe |
data.content.shipmentDetails.shipmentCity |
string |
Alıcı il |
data.content.shipmentDetails.shipmentGsm |
string |
Alıcı Telefon Numarası |
data.content.invoiceDetails |
object |
Fatura Detayları |
data.content.invoiceDetails.invoiceName |
string |
Fatura Adı Soyadı |
data.content.invoiceDetails.invoiceCompanyTitle |
string |
Fatura Ünvanı |
data.content.invoiceDetails.invoiceTaxID |
string |
Vergi Numrası |
data.content.invoiceDetails.invoiceTaxOffice |
string |
Vergi Dairesi |
data.content.invoiceDetails.invoiceAddress |
string |
Fatura Adresi |
data.content.invoiceDetails.invoiceDistrict |
string |
Fatura İlçe |
data.content.invoiceDetails.invoiceCity |
string |
Fatura il |
data.content.invoiceDetails.invoiceGsm |
string |
Fatura Telefon Numarası |
data.content.invoiceDetails.invoicePhone |
string |
Fatura Telefon Numarası |
data.content.invoiceDetails.invoiceMail |
string |
Fatura Mail Adresi |
data.content.items |
array |
Ürün Listesi |
data.content.items.itemTitle |
string |
Ürün Adı |
data.content.items.itemBrand |
string |
Ürün markası |
data.content.items.itemCode |
string |
Ürün Kodu |
data.content.items.itemTaxRate |
int |
Ürün KDV Oranı |
data.content.items.itemQuantity |
int |
Ürün Adedi |
data.content.items.itemUnitPrice |
float |
Ürün Birim Fiyatı |
Sipariş Durumu Güncelleme
Bu servis ile siparişlerinizin durumunu güncelleyebilirsiniz.
EndPoint(POST)
https://www.domain.com/api/orders/updateOrderStatus
Not:
Bir seferde en fazla 100 sipariş için istek gönderilebilir
Açıklamalar :
Parametre |
Tip |
Zorunluluk |
Açıklama |
orderno |
string |
Zorunlu |
Sipariş Numarası |
status |
enum |
Zorunlu |
Sipariş durumu [WAITING,PREPARING,PENDING,SHIPPED,DELIVERED,RETURNED,CANCEL] |
Örnek İstek :
[
{
"orderno": "01092022001821-DIK",
"status" : "WAITING"
},
{
"orderno": "01092022002448-ZKB",
"status" : "PREPARING"
},
{
"orderno": "01092022130509-SHE",
"status" : "PENDING"
},
...
]
Başarılı İşlem Cevabı :
{
"status": 200,
"message": {
"code": 200,
"detail": {
"requestID": "7045997c8e1cf4a3448e79b5a9ae0276"
}
}
}
Hata Mesajları :
HTTP Status |
Hata Kodu |
Hata Mesajı |
400 |
400 |
Geçersiz istek |
400 |
400 |
{parametre} Boş ya da Geçersiz |
400 |
400 |
Data sınırı aşıldı |
Ürünler
Bu servis ile ürünleri listeleyebilir, ürünlerinizin stok ve fiyatlarını güncelleyebilirsiniz.
Ürün Listeleme
Bu servis ile ürünleri listeleyebilirsiniz
EndPoint(GET)
https://www.domain.com/api/products/list
Stok ve Fiyat Güncelleme
Bu servis ile ürünlerinizin stok ve fiyatlarını güncelleyebilirsiniz.
EndPoint(POST)
https://www.domain.com/api/products/updateStokAndPrice
Not:
Bir seferde en fazla 100 ürün için istek gönderilebilir
Açıklamalar :
Parametre |
Tip |
Zorunluluk |
Açıklama |
barcode |
string |
Zorunlu |
Güncellenecek ürünün veya varyanın barkod değeri |
mainProductPrice |
float |
Zorunlu |
Ana Ürün Fiyatı |
variantPrice |
float |
Zorunlu |
Varyant Fiyatı |
stockAmount |
int |
Zorunlu |
Stok Adedi |
Örnek İstek :
[
{
"barcode":"8341101923840",
"mainProductPrice": 239.76,
"variantPrice": 0.00,
"stockAmount":50
},
{
"barcode":"8341101924244",
"mainProductPrice": 239.76,
"variantPrice": 0.00,
"stockAmount":50
},
{
"barcode":"8341101924648",
"mainProductPrice": 239.76,
"variantPrice": 0.00,
"stockAmount":50
},
...
]
Başarılı İşlem Cevabı :
{
"status": 200,
"message": {
"code": 200,
"detail": {
"requestID": "7045997c8e1cf4a3448e79b5a9ae0276"
}
}
}
Hata Mesajları :
HTTP Status |
Hata Kodu |
Hata Mesajı |
400 |
400 |
Geçersiz istek |
400 |
400 |
{parametre} Boş ya da Geçersiz |
400 |
400 |
Data sınırı aşıldı |
Sadece Stok Güncelleme
Bu servis ile ürünlerinizin ve varyantlarınızın stoklarını güncelleyebilirsiniz.
EndPoint(POST)
https://www.domain.com/api/products/updateStocks
Not:
Bir seferde en fazla 100 ürün için istek gönderilebilir
Açıklamalar :
Parametre |
Tip |
Zorunluluk |
Açıklama |
productId |
String |
Zorunlu |
Güncellenecek ürünün veya varyantın ID değeri |
stockAmount |
int |
Zorunlu |
Stok adedi |
Örnek İstek :
[
{
"productId":"1324",
"stockAmount":50
},
{
"productId":"V5723",
"stockAmount":50
},
{
"productId":"V3453",
"stockAmount":50
},
...
]
Başarılı İşlem Cevabı :
{
"status": 200,
"message": {
"code": 200,
"detail": {
"requestID": "7045997c8e1cf4a3448e79b5a9ae0276"
}
}
}
Hata Mesajları :
HTTP Status |
Hata Kodu |
Hata Mesajı |
400 |
400 |
Geçersiz istek |
400 |
400 |
{parametre} Boş ya da Geçersiz |
400 |
400 |
Data sınırı aşıldı |
Sadece Fiyat Güncelleme
Bu servis ile ürünlerinizin ve varyantlarınızın fiyatlarını güncelleyebilirsiniz.
EndPoint(POST)
https://www.domain.com/api/products/updatePrices
Not:
Bir seferde en fazla 100 ürün için istek gönderilebilir
Açıklamalar :
Parametre |
Tip |
Zorunluluk |
Açıklama |
productId |
String |
Zorunlu |
Güncellenecek ürünün veya varyantın ID değeri |
mainProductPrice |
float |
Zorunlu |
Ana ürün fiyatı |
variantPrice |
float |
Zorunlu |
Varyant ek fiyatı |
Örnek İstek :
[
{
"productId":"1324",
"mainProductPrice":50.00,
"variantPrice":10.00
},
{
"productId":"V5723",
"mainProductPrice":50.00,
"variantPrice":15.00
},
{
"productId":"V3453",
"mainProductPrice":250.00,
"variantPrice":50.00
},
...
]
Başarılı İşlem Cevabı :
{
"status": 200,
"message": {
"code": 200,
"detail": {
"requestID": "7045997c8e1cf4a3448e79b5a9ae0276"
}
}
}
Hata Mesajları :
HTTP Status |
Hata Kodu |
Hata Mesajı |
400 |
400 |
Geçersiz istek |
400 |
400 |
{parametre} Boş ya da Geçersiz |
400 |
400 |
Data sınırı aşıldı |
Sürüm Güncellemeleri
Bu alanda Softtr E-Ticaret Sistemleri tarafından API üzerinde yapılan güncellemeler ile bilgilendirmeler bulunacaktır.
0.1.0B
Beta sürüm yayına alındı