Skip to main content

Create Barcode – createBarcode()

Barcode Creation

createBarcode() method, available on the Horoz Logistics Domestic Distribution Integration, is a web service integration method that approves a shipping order that has been previously created successfully in the Horoz Logistics system by means of the createShipping() method, and creates a goods acceptance entry (ATF - Warehouse Entry Slip) and returns barcode label information to the client as based on the goods acceptance entry.

During the Horoz Logistics domestic distribution operations, the shipping order approval and goods acceptance process is carried out step by step by the operation officers, and such processes may be bypassed within a shipping order entry that has been successfully created by making use of the createBarcode() method. Important information about the createBarcode() method and the points to be considered when creating a goods acceptance entry (ATF entry) for a shipping order that has been sent previously to the Horoz system by means of the createShipping() method and obtaining barcode label information are listed below for the information of the clients.

  • createBarcode() method is a RESTful web service method that receives data in JSON format via the POST method.

  • By making use of the createBarcode() method, the client retrieves the barcode label information for an order, for which a shipping order has been sent previously via the Horoz Logistics Domestic Distribution Integration Web, through the createBarcode() method. By means of such information, the client can print its own barcode or the barcode used in Horoz Logistics domestic distribution operations.

  • As part of the Horoz Logistics domestic distribution operations, Horoz Logistics barcode labels can be printed in two ways. Firstly; the client can print barcodes by using the barcode printing module developed in its own ERP, by making use of the barcode information, it has received from the Horoz Logistics Domestic Distribution Integration Web Service by means of the createBarcode() method, and by entering the details, it has received, to the necessary fields in the barcode design as based on the barcode design as agreed upon by both parties. Secondly, a barcode can be printed by the Horoz personnel at the respective branch for the shipping order which has been forwarded previously to the Horoz Logistics system by making use of the createShipping() method upon the performance of the installation at the branch of the company following the integration of such company by Horoz Logistics. In the event that the company wishes to print its own barcode, then the barcode label design used during Horoz Logistics domestic distribution operations will be shared with the client, and the common barcode will be prepared by the client upon mutual agreement so that the areas determined by both parties will be formed on the barcode.

  • When the createBarcode() method is called by the client, in addition to the barcode information, it also returns to the client two barcode designs, 10x10 and 4x10, which are currently used in Horoz Logistics' domestic distribution operations and have operational routine, in zpl data format. If the client wishes to do so, it can obtain barcode labels for such designs by parsing the ZPL data in its own ERP.

  • By calling the createBarcode() method, the barcode label acquisition process as requested by the client must be done by making calls as many times as the number of pieces reported to the system via the integration (as many as the number of physical boxes to be transported). During such operation, the quantity of and/or the details about the products in the boxes to be carried within the delivery are not important.

  • createBarcode() method should be called for the products that have been invoiced by the client-merchant side and will be given to Horoz Logistics for transportation from the orders that have been sent previously to the Horoz Logistics system by means of the createShipping() method via the Horoz Logistics Domestic Distribution Integration Webservice. createBarcode() method should not be called for the products that have not been finalized to be delivered to Horoz Logistics.

  • After the createBarcode() method is called by the client for a shipping order that has been created previously by means of the createShipping() method in the Horoz Logistics system, the barcode label entry created as based on the goods acceptance entry (ATF entry) created in the Horoz Logistics system is always returned to the client as a single line for the 1st piece on delivery basis, regardless of how many boxes/pallets/products etc. (products to be physically transported) are included in the delivery.

  • When sending a barcode label to the Horoz Logistics system by means of the createBarcode() method, the number of the pieces is written in the quantity field available in the request. As based on such information sent, the number of barcode labels per piece can be obtained from the response content of the createBarcode() method.

  • One of the most important information about the use of the createBarcode() method is that the createBarcode() method does not need to be called as many times as the number of pieces of the products to be transported physically in the shipping order that has been sent previously by means of the createShipping() method. When barcode label acquisition is performed by calling the createBarcode() method; since the shipmentCount (total quantity) and totalDesi (total desi) details about the products pertaining to the shipping order is already known by the client which has sent the shipping order by means of the createShipping() method, it will be sufficient to call the createBarcode() method only once for the first piece. For the barcode label, received by the client for the first piece with the createBarcode() method, the client can create barcode labels for all pieces in its own ERP system by simply increasing the piece count details in the received barcode label information by 1, as much as the shipmentCount (total quantity) information it knows on its own side.

For Example;

Let's say that the total quantity details about a shipping order entry that has been sent previously to the Horoz Logistics system with the createShipping() method is shipmentCount: 6. If and when it is wished to print barcode labels for such shipping order by means of the createBarcode() method; the createBarcode() method is called once and the method returns the barcode label information for only the first piece to the client. Then, the next barcodes can be obtained by multiplexing the details returned in the first barcode information, the shipmentCount: details available on the client side, in up to 6 client ERP systems.

Example Barcode Number: 824490000100001358 (ATFNr + PartNr + ReceivingBranchCode)

  • ATFNr: 82449000010
  • PartNr: 0001
  • ReceivingBranchCode: 358

Barcodes Reproduced for a 6-Part Barcode Print Process:

  1. part: 824490000100001358 : (Obtained by calling createBarcode())
  2. part: 824490000100002358 : (82449000010|0001 +1|358)
  3. part: 824490000100003358 : (82449000010|0002 +1|358)
  4. part: 824490000100004358 : (82449000010|0003 +1|358)
  5. part: 824490000100005358 : (82449000010|0004 +1|358)
  6. part: 824490000100006358 : (82449000010|0005 +1|358)
  • If the total quantity details are not known by the client during the barcode label acquisition process by means of the createBarcode() method, then it is sufficient to call the createBarcode() method only twice for the first and last piece. Thus, other barcodes between the first barcode and the last barcode can be derived from such two barcode label details and printed in the client's ERP system.

  • createBarcode() method also allows the total quantity information to be updated for a delivery, the shipping order data of which has been sent previously to the Horoz Logistics system by means of the createShipping() method, the shipmentCount details of which have been sent incorrectly. For such purpose, when the barcode label is obtained by the client by means of the createBarcode() method; if the partNumber information in the request is entered as 0 and, the new/current/correct quantity information is written in the quantity information, the total quantity information of the relevant delivery can be updated by the client. In the createBarcode() calls made following the update process, the quantity information returned to the client will be the current total quantity information.

  • The barcode type of the barcode labels obtained by means of the createBarcode() method is Code128, and the character set is CharsetC.

  • The use of the createBarcode() method by the client bypasses the processes of approving the entry for which the barcode will be created by the customer representatives and issuing the ATF (Warehouse Entry Slip) by Horoz Logistics operations personnel in the domestic distribution operation. Since such process might cause problems during the course of the logistics process if it is not done in a controlled manner, an approval process must be passed if a customer wishes to integrate a common barcode. We cannot provide support for the common barcode integration for the companies that cannot pass the approval process.

  • Creating a barcode label for an order means that such order has been approved by our customer representatives on the Horoz Logistics side and an ATF (Warehouse Entry Slip) has been issued for such order by the Horoz Logistics domestic distribution operations personnel. For this reason, as of the moment when the barcode label is created, it means that the order has been accepted and the logistics process has begun for delivery. During thec course of performance of the integration, it is assumed that such information is known by the company and that such process has been approved, and the barcodes are expected to be printed according to such information through the integration.

  • When the createBarcode() method is called, the barcode information as well as the design of the barcode used in Horoz Logistics operations, created with the relevant information, is returned to the clients in ZPL data format. The client can access the design of the respective barcode label by encoding the returned ZPL data code in its own ERP system and print from barcode printers compatible with that barcode label. There are online portals on the web to encode codes in ZPL data format. You can view the barcode designs on such websites through the ZPL codes that have been prepared.

ZPL Encoding Portal : https://labelary.com/viewer.html

Example of ZPL data content for a 10x10 scale barcode label:

Example ZPL
^XA ^FO220,20^GFA,^FS^CF0,50\ ^FWB\ ^FO95,120 ^FDRUT-3^FS\ ^FO150,20 ^GB3,580,3^FS\ ^CFT,80,100\ ^CI28\ ^FO10,210 ^FDALICI İL BİLGİSİ^FS\ ^FWN\ ^FT170,160 ^A0,40,30 ^FDGÖNDERİCİ/SATICI UNVANI^FS ^FT170, 230 ^A0,60,50 ^FDALICI ADI SOYADI^FS ^FT170, 295 ^A0,30,20 ^FDKARGO^FS ^FT320, 295 ^A0,30,20 ^FDİRSALİYE TARİHİ^FS ^FT490, 295 ^A0,30,20 ^FDÇIKIŞ ŞUBE BİLGİSİ^FS ^FT170, 340 ^A0,30,20 ^FDALICI AÇIK ADRES BİLGİSİ^FS ^FT170, 415 ^A0,60,50 ^FDALICI İL - ALICI İLÇE^FS ^FO170,430 ^GB630,1,3^FS^FT170, 500 ^A0,70,60 ^FDM123456^FS ^FT170, 535 ^A0,30,20 ^FDİRS.NO: MÜŞTERİ SİPARİŞ NUMARASI BİLGİSİ^FS ^FT170, 580 ^A0,30,20 ^FDİRS.TARİHİ: İRSALİYE TARİHİ^FS ^FT600, 540 ^A0,40,30 ^FDDESİ: 50.5^FS ^FT600, 580 ^A0,40,30 ^FDPARÇA: 1/5^FS ^BY2,2,150 ^FO240,605 ^BCN ^FD115090000190001358^FS\ ^FWN\ ^XZ

Example of a 10x10 scale barcode label:

Horoz Örnek Barcode 10X10

Example of a 4x10 scale barcode label:

Horoz Örnek Barcode 4X10


POST createBarcode()

Parameter Descriptions & Rules

The following table lists the input and output parameters of the createBarcode() process, and the types and formats of such parameters.

FieldsDescriptionData TypeLengthField LocationRequirement
processKeyThe processKey details identified for the clientstring100HeaderMandatory
requestNumberThe requestNumber details about the order that has been created by means of createShipping by the clientstring50inBody RequestMandatory
partNumberPart number of the product, the barcode of which will be generatedinteger-inBody RequestMandatory
quantityThe details about the total number of pieces of the orderinteger-inBody RequestMandatory
desiDetails about the desi of the product for which a barcode will be createdfloat-inBody RequestMandatory
weightInKgDetails about the weight of the product for which a barcode will be createdfloat-inBody RequestMandatory

Service Responses

Response CodeResponse MessageDescription
STA-100Kayit islemi basariliIt refers to the fact that the barcode creation process is successful.
ERR-20001HATALI IŞLEM ANAHTARIIndicates that the entered processKey details are incorrect.
ERR-20020SEVK KAYDI BULUNAMADI YADA GEÇERSİZ KAYITIndicates that the order for which a barcode is being tried to be created does not exist in the system or that it has been made invalid.
ERR-20020SEVK KAYDI BULUNAMADIIndicates that the order, for which a barcode is being tried to be created, does not exist in the system, or that it has been made invalidly.
ERR-20021GECERSIZ SEVK KAYDI.Indicates that the order, for which a barcode is tried to be created, has been made invalidly.
ERR-20025ADET : X veya DESİ : X veya KG : X veya PARCANO : X HATALIDIRIt refers to the fact that the entered Quantity, Desi, Kilogram or Part number details have been entered incorrectly.