Ana içeriğe geç

Karayolu Sipariş Oluşturma - createRoadOrder()

Karayolu Sipariş Oluşturma

Horoz Lojistik E-İhracat Entegrasyonu üzerinde bulunan createRoadOrder() metodu, karayolu taşımacılığında yer alacak yurt içinden yurt dışına yapılacak micro ve macro ihracat için işleme alınması gereken kayıtları oluşturmak için kullanılmalıdır. createRoadOrder() metodu ile ilgili önemli bilgiler ve Horoz sisteminde karayolu ihracat siparişi oluşturulurken dikkat edilmesi gerekenler liste halinde aşağıda istemcilerin bilgisine sunulmuştur.

  • Sipariş oluşturma yapısının içinde yer alan özellikle micro ihracatın bağlı belgelerinin FTP üzerinden öncelikle gönderilmiş olması sipariş kaydının sisteme eklenmesinde yapılacak ilk kontroldür.

  • Sipariş kayıt işleminin özellik açısından faturası kesilmiş belgeleri tamamlanmış ve sevkiyat süreci kesinleşmiş kayıtlardan oluşması gerekir.

  • Horoz Lojistik E-İhracat Entegrasyonu Webservis kütüphanesinde siparişin iptal edilmesi veya güncellenmesi gibi metotlar bulunmamaktadır. Horoz sistemine belgeleri ve sipariş isteği başarılı olarak gönderilmiş bir kayıt için herhangi bir nedenden dolayı siparişin iptal edilmesi gereken durumda satıcının HOROZ e-ihracat MT görevlisiyle iletişime geçerek iptal işlemini manuel olarak ilerletmesi gerekir.

  • Başarılı olarak gönderilmiş bir siparişin kayıtlı bilgilerinden herhangi biri değiştirilmek istenirse önce üstte bildirilen iptal sürecinin tamamlanması ardından bu metotla yeni bir sipariş olarak o siparişe bağlı olan belgelerin de FTP üzerinden gönderilmesi ile yeni bir sipariş olarak açılması gerekmektedir.

  • Sipariş girişinde ihracat tipi micro ise fatura değeri, 15.000 € fatura değerine eşit veya altında ve sipariş ağırlığı, 300 kg sipariş toplam ağırlığına eşit veya altında olması gerekmektedir. Macro ihracat seçimi ise bir kurala tabi değildir.

  • Her bir sipariş alıcı bazında tekil olmak zorundadır. Alım tipi, varış ülkesi, ürün adet ve desi-kg bilgisi siparişin fiyatlaması için ve oluşacak ek maliyetlerin belirlenmesi için önemli bilgilerdir.

  • Micro ihracat tipi seçiminde ATR Dolaşım Belgesi seçimi durumunda 10 € ATR düzenleme maliyeti oluşacaktır. Sipariş giriş özelliklerinde YDG seçimi yapılmış ise alıcı tipine göre bir yurtdışı gümrük bedeli uygulanacaktır. Macro ihracat tipi seçilmiş ise ATR seçimi yapılmayacak Gümrük Hizmeti seçimi yapılacaktır. Bu seçime göre satıcıya ATR belgesi ve konşimento belgesi Horoz tarafından düzenlenip gönderilecektir. Bu belgelerin sipariş üstüne ek doküman olarak eklenmesi sağlanacaktır. 29 Ürünlerin fiyatlama aşamasında istif durumları, paket tipleri, boyutları ek maliyet oluşması için kontrol edilmektedir.

  • createRoadOrder metodu için istemciden beklenen içerik; temel olarak gönderici, alıcı, sipariş bilgileri ve ürün bilgilerinden oluşur. Sipariş iletimi yapılırken gönderen bilgilerinin istemci tarafından dolu geçilip geçilmemesi; serbest gönderim yapılıp, yapılmaması (isFreeSenderInfo: yes/no) ve alım tipi (receptionType : itWillBring/receivedFromAddress) seçeneğine bağlı olarak değişir.

  • Serbest seçimi (isfreeSenderInfo: yes/no) fark etmeksizin her oluşacak kayıtta alım tipi kendisi getirecek (receptionType: itWillBring) ise outletLocationId bilgisine horoz toplama noktası tanımlarından (selectCollectionPoints) collectionPointId bilgisi geçilir. Sipariş girişinde kendisi getirecek seçimi yapıldığında varış ülkesine göre ürünün hangi Horoz noktasına getirileceğinin selectCollectionPoints içerisinden belirlenmesi gerekir.

  • Serbest seçimi yapılmadıysa (isFreeSenderInfo= no) ve alım tipi adresten alınacak (receptionType: receivedFromAddress) ise satıcının daha önceden tanımlı bir adresten çıkış yapmak istediğini gösterir. O nedenle listSellerAddressPoints()'te bulunan adreslerden seçim yapılması ve outletLocationId bilgisine listSellerAddressPoints metodundaki sellerAddressPointId bilgisi geçilmesi gerekir.

  • Serbest seçimi sistemde tanımlı bir duruma tabi olmadan bir çıkış noktası kullanmak demektir. Serbest seçimi yapıldıysa ve alım tipi adresten alınacaksa; bu satıcının örneğin, sadece bir kereliğine tanımladığı adresten ürünün alınmasını istediğini ifade etmek için geçici bir bilgi olarak siparişi gönderen bilgileri (sender bilgileri) ile doldurmasını gerektirir. Bu durumda createRoadOrder() metodu içerisindeki zorunlu gönderen bilgilerinin (senderTitle, senderCountryName, senderCityName, senderCountyName..vb) dolu olarak geçilmesi beklenir. Bu sebeple outletLocationId bilgisinin bir değer olarak gelmesi beklenmez.

  • Eğer isFreeSenderInfo: yes geçildi ise ve receptionType: receivedFromAddress olarak geçildi ise siparişe ait gönderen bilgileri istemcinin göndereceği bilgilerden beslenir, bu nedenle bu durumda createRoadOrder() metodu içerisindeki zorunlu gönderen bilgilerinin (senderTitle, senderCountryName, senderCityName, senderCountyName..vb) dolu olarak gönderilmesi beklenir.

  • Eğer isFreeSenderInfo: yes/no(farketmeksizin) geçildi ise ve receptionType: itWillBring olarak geçildi ise gönderene ait ülke, il, ilçe, adres ve posta kodu bilgileri selectCollectionPoints metodundan GET olarak alınabilen Horoz depo tanımlarından ilgili outletLocationId için alınır. Eğer geçilen outletLocationId bilgisi Horoz depo tanımlarında mevcut değilse; TANIMSIZ TOPLAMA NOKTASI hatası dönülür.

  • Eğer isFreeSenderInfo: no geçildi ise ve receptionType: receivedFromAddress olarak geçildi ise gönderene ait ülke, il, ilçe, adres ve posta kodu bilgileri listSellerAddressPoints metodundan GET olarak alınabilen Horoz çıkış noktaları tanımlarından ilgili outletLocationId için alınır. Eğer geçilen outletLocationId bilgisi satıcı adres tanımlarında mevcut değilse; TANIMSIZ ÇIKIŞ NOKTASI hatası dönülür. TANIMSIZ ÇIKIŞ NOKTASI hatası ve TANIMSIZ TOPLAMA NOKTASI hatası sistemden seçilen sellerAdressPointId ya da collectionPointId dışında bir tanımın outletLocationId parametresine geçilmesi durumunda gönderilir.

  • receptionType alanına itWillBring, receivedFromAddress bilgilerinden başka bir bilgi geçilemez, aksi halde receptionType BİLGİSİ receivedFromAddress/itWillBring DIŞINDA BİR DEĞER GEÇİLEMEZ. hatası dönülür.

  • Alıcı bilgileri için; eğer destinationLocation bilgisi dolu geçildi ise alıcıya ait ülke, il, ilçe, adres ve posta kodu bilgileri listHorozWareHouses metodundan GET olarak alınabilen Horoz depo tanımlarından ilgili destinationLocation için alınır. Eğer geçilen destinationLocation bilgisi Horoz depo tanımlarında mevcut değilse; TANIMSIZ VARIŞ NOKTASI hatası dönülür. WMS modülü ile bu kullanım anlamlı olacaktır.

  • Eğer destinationLocation bilgisi boş geçildi ise siparişe ait alıcı bilgileri istemcinin göndereceği bilgilerden beslenir, bu nedenle bu durumda createRoadOrder metodu içerisindeki zorunlu alıcı bilgilerinin (recipientTitle, recipientCountryName, recipientCityName, vb) dolu olarak gönderilmesi beklenir.

  • Entegrasyon üzerinden Horoz sistemine iletilecek karayolu siparişleri için gönderilecek fatura tutarı para birimi bilgilerinin; TRY (Türk Lirası), EUR (Avrupa Birliği Para Birimi), USD (Amerikan Doları) ve GBP (İngiliz Sterlini) olarak gönderilmesi beklenir. Aksi halde istemciye hata dönülür.

  • Sipariş bilgilerinde alıcı bilgileri içerisindeki alıcı ülkenin posta kodu fiyatlama açısından varış bilgilerinin içerisine girilmesi zorunlu olmalıdır ve bu girilen değerin sayısal olması zorunludur.

Karayolu ihracat siparişlerinin yürütülmesi için gerekli belgeler ve bu belgelere ait açıklama ve ihracat tipleri aşağıdaki gibidir;

GEREKLİ BELGELERAÇIKLAMAİHRACAT TİPİ
ETGBMikro ihracat için gümrük belgesiMİKRO İHRACAT
EN FaturaSatıcı tarafından satışa istinaden alıcıya kesilen ingilizce faturaMİKRO, MAKRO İHRACAT
TR FaturaSatıcı tarafından satışa istinaden alıcıya kesilen Türkçe faturaMİKRO, MAKRO İHRACAT
Gümrük Temsil BelgesiSatıcı tarafından yılda bir kere gümrük işlemleri için verilen izin belgesiZORUNLU DEĞİL
POA BelgesiAlıcının yurt dışı gümrüğü için verdiği izin belgesiMİKRO (ALICI TİPİ B2C)
  • Sipariş girişinde alım tipi kendisi getirecek olarak seçildiğinde çıkış noktasının sistemde tanımlı olan çıkış noktalarından uygun olanının seçilmiş olması beklenir. Adresten alınacak seçiminde siparişin toplam ağırlığı 30 kg altında ise Yurtiçi kargo tarafından taşınması gerekir. Satıcının bu durumda Yurtiçi Kargo teslim belgesi ile ürünlerini en yakın Yurtiçi Kargo şubesine götürmesi gerekir.

Yurtiçi Kargo operasyonunda kullanılan barkod etiketi aşağıdaki gibidir;

Horoz Örnek Barcode 10X10

  • 30 kg üstündeki yükler için HOROZ Yurtiçi Dağıtım operasyon birimi çıkış noktası bilgisine göre ilgili adresten ürünlerin alımını gerçekleştirir. Bu aşamada sellerAddressPointList()'ten seçilen adres bilgileri siparişin içindeki çıkış adres alanlarını doldurmasını beklenir.

  • Siparişe eklenecek ürünler createProduct() metoduyla HOROZ sistemine tanımlanmış ürünlerin ana kayıtları içinden yapılmalıdır. (Bileşenli ürünlerin ana tanımları Gardırop gibi) HOROZ sistemine tanımlanmamış ürünler sipariş kayıt aşamasında hata uyarısı alacaktır. Siparişin içinde kap ve eşya adeti ETGB’nin üstünde yer alacak olan bilgilerden olup kap adeti fiziksel olarak taşınacak parçayı, eşya adeti ise faturaya tabi olmuş satılan ürün adetini ifade etmelidir.

  • Micro ihracattaki B2C satışlarında POA belgesi alıcı tarafından imzalanarak satıcının göndermesi gereken belgelerden biridir. Gümrük Temsil Belgesi mikro ihracat içinde yer alıp yıllık olarak iletilmesi gereken belgedir. Sürecin başlangıcında HOROZ tarafından satıcıyla yapılacak olan kontratta bu belge alınacaktır.

  • Temsil belgesi FTP üzerinden gönderilmesi beklenen bir belge değildir. Macro ihracat seçiminde Gümrük Hizmeti İstiyorum seçimi yapıldığında satıcıya ATR ve konşimento belgeleri düzenlenecektir.


POST createRoadOrder()

Parametre Açıklamaları & Kuralları

Aşağıdaki tabloda createRoadOrder() işleminin giriş ve çıkış parametreleri ve bu parametrelerin tür ve formatları listelenmiştir.

ParametreAçıklamaVeri TipiUzunlukAlan YeriZorunluluk
processKeyİstemci için tanımlanan processKey bilgisistring100HeaderZorunlu
customerOrderNumberMüşteri sipariş numarasıstring50inBody RequestZorunlu
isFreeSenderInfoGönder bilgileri serbest geçilebilir miEnum50inBody RequestZorunlu
outletLocationIdÇıkış yeri Id (receptionType ve isFreeSenderInfo ’ya bağlı)Integer-inBody RequestZorunlu
senderTitleGönderen unvan (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string100inBody RequestZorunlu
senderCountryNameGönderen ülke adı (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string100inBody RequestZorunlu
senderStateNameGönderen eyalet adı (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string100inBody RequestZorunlu
senderCityNameGönderen il adı (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string100inBody RequestZorunlu
senderCountyNameGönderen ilçe adı (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string100inBody RequestZorunlu
senderAddressGönderen adres (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string500inBody RequestZorunlu
senderPostCodeGönderen posta kodu (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string20inBody RequestZorunlu
senderOfficialPersonGönderen yetkili kişi (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string100inBody RequestZorunlu
senderPhone1Gönderen telefon 1 (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string20inBody RequestZorunlu
senderPhone2Gönderen telefon 2 (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string20inBody RequestZorunlu
senderEmailGönderen email (isFreeSenderInfo = Yes ve receptionType = receivedFromAddress ise)string200inBody RequestZorunlu
destinationLocationVarış yeri (Horoz / Satıcı depolarına sevkiyat yapılacağı zaman kullanılmalı)string30inBody RequestOpsiyonel
recipientTitleAlıcı unvanstring100inBody RequestZorunlu
recipientTypeAlıcı tipistring100inBody RequestZorunlu
recipientCountryNameAlıcı ülke adı (destinationLocation ‘ a bağlı)string100inBody RequestZorunlu
recipientStateNameAlıcı eyalet adı (destinationLocation ‘ a bağlı)string100inBody RequestZorunlu
recipientCityNameAlıcı il adı (destinationLocation ‘ a bağlı)string100inBody RequestZorunlu
recipientFloorAlıcı kat (destinationLocation ‘ a bağlı)Integer-inBody RequestOpsiyonel
recipientApartmentAlıcı daire (destinationLocation ‘ a bağlı)Integer-inBody RequestOpsiyonel
recipientAddressAlıcı adres (destinationLocation ‘ a bağlı)string500inBody RequestZorunlu
recipientPostCodeAlıcı posta kodu (destinationLocation ‘ a bağlı)string20inBody RequestZorunlu
recipientOfficialPersonAlıcı yetkili kişi (destinationLocation ‘ a bağlı)string100inBody RequestZorunlu
recipientPhone1Alıcı telefon 1 (destinationLocation ‘ a bağlı)string20inBody RequestZorunlu
recipientPhone2Alıcı telefon 2 (destinationLocation ‘ a bağlı)string20inBody RequestZorunlu
recipientEmailAlıcı email (destinationLocation ‘ a bağlı)string200inBody RequestZorunlu
totalQuantityToplam adet (Satış adeti)Integer-inBody RequestZorunlu
totalDesiToplam desiFloat-inBody RequestZorunlu
totalWeightToplam ağırlıkFloat-inBody RequestZorunlu
chargeableWeightFiyatlanabilir ağırlık (Desi ile ağırlığın karşılaştırılmasında büyük olan değer)Float-inBody RequestZorunlu
totalContainerToplam kap adeti (Barkod basılacak fiziki taşımaya tabi görünen parça sayısı)Integer-inBody RequestZorunlu
orderNotesSipariş notustring1000inBody RequestOpsiyonel
deliveryPersonTeslim eden kişistring20inBody RequestOpsiyonel
shippingTypeNakliye tipiEnum100inBody RequestZorunlu
deliveryMethodTeslimat tipiEnum100inBody RequestZorunlu
recordTypeKayıt tipiEnum100inBody RequestZorunlu
receptionTypeAlım tipiEnum100inBody RequestZorunlu
invoiceNumberFatura numarasıEnum100inBody RequestZorunlu
invoiceDateFatura tarihiDate-inBody RequestZorunlu
invoiceAmountFatura tutarıFloat-inBody RequestZorunlu
invoiceCurrencyUnitFatura para birimistring5inBody RequestZorunlu
exportTypeİhracat tipiEnum100inBody RequestZorunlu
paymentMethodÖdeme yöntemiEnum100inBody RequestZorunlu
isAtrATR mi (Micro ihracat seçimine bağlı)Enum100inBody RequestZorunlu
isInsuredSigortalı mıEnum100inBody RequestZorunlu
isYdgYurt dışı gümrüklemeEnum100inBody RequestZorunlu
isCustomServiceGümrük Hizmeti (Macro ihracat seçimine bağlı)Enum100inBody RequestZorunlu
orderDetailSipariş detayıArray-inBody Request-------
productCodeÜrün kodustring50inBody RequestZorunlu
productNameÜrün adıstring100inBody RequestZorunlu
quantityÜrün satış adetiInteger-inBody RequestZorunlu
containerPiecesKap adetiInteger-inBody RequestZorunlu

createRoadOrder metodu içerisinde beklenen enum değerler için aşağıda detaylı bilgi verilmiştir.

ENUM ALAN ADIENUM ALAN ADI (Türkçe)AÇIKLAMA
isFreeSenderInfoGönderen bilgisi serbest miİstek içerisinde bulunan gönderen bilgilerinin serbest geçilip, geçilemeyeceği yes/no seçimine bağlı olarak set edilebilir.
shippingTypeNakliye tipieconomic, express değerlerinden sipariş için uygun olan değer geçilerek nakliye tipi bildirilebilir. (economic : ekonomi, express : ekspres)
deliveryMethodTeslimat yöntemicurbFront, deliveryToFloor, deliveryToFloorAndAssembly değerlerinden sipariş için uygun olan değer geçilerek teslimat yöntemi bildirilebilir. (curbFront : kaldırım önü teslimat, __deliveryToFloor : kata teslim, deliveryToFloorAndAssembly : kata teslim ve montaj)
recordTypeKayıt tipidirect, partial değerlerinden sipariş için uygun olan değer geçilerek kayıt tipi bildirilebilir. (direct : direkt, partial : parsiyel/kısmi)
receptionTypeAlım tipireceivedFromAddress, itWillBring değerlerinden sipariş için uygun olan değer geçilerek alım tipi bildirilebilir. (receivedFromAddress : adresten alınacak, itWillBring : kendisi getirecek)
paymentMethodÖdeme yöntemiadvance, free değerlerinden sipariş için uygun olan değer geçilerek ödeme yöntemi bildirilebilir. (advance: peşin, free : ücretsiz)
İsAtrATR mi ?yes, no değerlerinden biri geçilerek sipariş için uygun olan ATR durumu bildirilebilir. Micro ihracat tipinde aktiftir.
isYdgYurtdışı gümrükleme mi ?yes, no değerlerinden biri geçilerek sipariş için uygun olan YDG durumu bildirilebilir.
isInsuredSigortalı mı ?yes, no değerlerinden biri geçilerek sipariş için sigortalı olup/olmama durumu bildirilebilir.
exportTypeİhracat tipimacro, micro değerlerinden biri geçilerek sipariş için ihracat tipi durumu bildirilebilir. (macro : makro, micro : mikro)
isCustomServiceGümrük hizmeti var mı ?yes, no değerlerinden biri geçilerek sipariş için uygun olan customService durumu bildirilebilir. Macro ihracat tipinde aktiftir.

Servis Cevapları

Servise ait başarılı/başarısız servis cevaplarına buradan erişebilirsiniz.