Exporting data from the ERP system to Ordizi

XML format technical specification
For specialists integrating an ERP system with Ordizi
Version 1.0

Document scope: This document describes the export of reference data and operational data from an ERP system to Ordizi. Importing orders and other documents from Ordizi back into the ERP system is not covered in this document.

Contents

1. Document purpose

This document is intended for specialists exporting data from 1C or another ERP system to Ordizi.

The integration task is to generate a set of XML files with the required structure in the exchange folder. The Ordizi exchange service receives these files, processes the data, and transfers it to the sales representatives’ mobile applications.

The exchange service provides synchronization between the ERP system and mobile devices. The Ordizi mobile application is designed for sales representatives and uses the exported reference and operational data.

2. General export workflow

  1. The ERP system generates XML files containing reference and operational data.
  2. After all XML files have been completely written, the ERP system creates or overwrites update.txt.
  3. The Ordizi exchange service receives the signal that the package is complete, reads the prepared files, and updates the data for mobile users.

3. Exchange package creation procedure

3.1. Initial export

During the initial export, a complete package of all required XML files containing the current data must be generated. Optional files are included if the corresponding features are used in the integration.

Each XML file must contain the complete current set of records for its data type.

3.2. Subsequent exports

In subsequent export sessions, only files whose data has changed need to be transferred. However, each transferred file must still contain the complete current set of records, not only newly added or modified records.

If an object was previously present in a file but is missing from its new version, the object will be removed from the current Ordizi dataset. If a file is not transferred, the previously imported data of that type remains unchanged.

3.3. Export completion control: update.txt

The update.txt file is used as an export completion marker. It prevents the exchange service from reading XML files while the ERP system is still generating them. Without this marker, the service could read a partially written file and process incomplete data.

The workflow is as follows: the ERP system generates and fully writes all XML files for the current package, closes them, and only then creates or overwrites update.txt. For the Ordizi service, this indicates that the package is complete and ready for processing.

The contents of update.txt must change with every export. If the value remains unchanged, the new package will not be processed. It is recommended to write the current date and time with second-level precision.

  • File name: update.txt.
  • The file is created or overwritten last, after all XML files have been fully written.
  • The value must differ from the value used in the previous export.
2026-07-13 12:15:01

4. General XML requirements

File names and their contents must comply with this documentation. Files with unknown names or invalid structure will be ignored by the exchange service.

  • XML file encoding — UTF-8.
  • Root element — <extdata>. The element name is mandatory and fixed. If the root element has a different name, the file will not be processed.
  • The name attribute should preferably match the file name without the extension, for example <extdata name="product">. It identifies the data type.

4.1.
Internal structure

Inside the root element, there are two functional blocks:

  • <s> (Schema) — Data schema definition. This block defines the field names and their data types in the order in which the values appear in the data block.
  • <d> (Data) — Data container.
  • <r> (Row) — A single data row inside the <d> block.
  • <f> (Field) — The value of a specific field.

Important: the order of the <f> tags within each <r> row must strictly match the order of the fields specified in the <s> schema block.

4.2. General structure example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="price_type">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
  </s>
  <d>
    <r>
      <f>00000001</f>
      <f>Retail</f>
    </r>
    <r>
      <f>00000002</f>
      <f>Wholesale</f>
    </r>
  </d>
</extdata>

5. Data types and empty values

TypeDescription
stringText value.
integerInteger value.
decimalNumeric value. A period is used as the decimal separator.
datetimeDate and time in YYYY-MM-DDTHH:MM:SS format, for example 2026-01-08T00:00:00.

An empty field value is represented as <f/> or <f></f>. The <f> element must remain in the row so that the order of values matches the schema.

6. List of export files

Required files form the basic dataset and must be included in the initial export. Optional files are included if the corresponding Ordizi features are used.

FileStatusPurpose
agent.xmlRequiredList of sales representatives (users) and their authentication settings.
client_agent.xmlRequiredAssignment of customers to specific sales representatives.
product.xmlRequiredList of products.
product_unit.xmlRequiredProduct units of measure and conversion factors.
price_type.xmlRequiredProduct price types.
product_price.xmlRequiredProduct prices.
product_category.xmlOptionalHierarchical or flat product category structure.
stock.xmlOptionalCurrent product stock levels by warehouse.
client.xmlRequiredList of customers and sales outlets.
client_category.xmlOptionalAdditional classification (segmentation) of the customer base.
payment_type.xmlRequiredList of available payment methods that can be selected when creating an order.
route.xmlOptionalSchedule of visits to sales outlets.
debt.xmlOptionalOutstanding balances with details for each unpaid document.

7. Detailed file descriptions

7.1. agent.xml — Sales representatives

Status: Required

The file contains sales representative authentication data and mobile application settings.

Fields

FieldTypeDescription
idstringUnique identifier of the sales representative in the ERP system.
user_loginstringSales representative login used for synchronization with the exchange server.
user_passstringSales representative password.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="agent">
  <s>
    <f name="id" type="string"/>
    <f name="user_login" type="string"/>
    <f name="user_pass" type="string"/>
  </s>
  <d>
    <r>
      <f>00000255</f>
      <f>smith</f>
      <f>1234</f>
    </r>
  </d>
</extdata>

7.2. client_agent.xml — Assigning sales representatives to customers

Status: Required

The file defines the assignment of customers to specific sales representatives (agents). Based on this data, the customer list is generated in each agent’s mobile application.

Fields

FieldTypeDescription
client_idstringUnique customer identifier from the client.xml file.
agent_idstringUnique sales representative identifier from the agent.xml file.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="client_agent">
  <s>
    <f name="client_id" type="string"/>
    <f name="agent_id" type="string"/>
  </s>
  <d>
    <r>
      <f>00050000</f>
      <f>00000255</f>
    </r>
  </d>
</extdata>

7.3. product.xml — Product catalog

Status: Required

The file contains the list of products used to build the product catalog in the mobile application.

Fields

FieldTypeDescription
idstringUnique product identifier in the ERP system.
namestringProduct name.
category_idstringUnique product category identifier from the product_category.xml file.
base_unit_idstringUnique identifier of the product’s base unit from the product_unit.xml file.
main_unit_idstringUnique identifier of the product’s main unit. Used as the default unit when working with the product in documents.
sortintegerProduct sort priority in lists. This value takes precedence over alphabetical sorting by name.
skustringSKU, internal code, or product item number used for quick search or identification in lists.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="product">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
    <f name="category_id" type="string"/>
    <f name="base_unit_id" type="string"/>
    <f name="main_unit_id" type="string"/>
    <f name="sort" type="integer"/>
    <f name="sku" type="string"/>
  </s>
  <d>
    <r>
      <f>00001001</f>
      <f>Enchanted Golden Apple 1kg</f>
      <f>00000110</f>
      <f>00000001</f>
      <f>00000002</f>
      <f>0</f>
      <f>BR-1001</f>
    </r>
  </d>
</extdata>

7.4. product_unit.xml — Product units of measure

Status: Required

The file contains a list of all units of measure for each product and their conversion factors relative to the base unit.

Fields

FieldTypeDescription
unit_idstringUnique unit of measure identifier in the ERP system.
product_idstringUnique product identifier from the product.xml file.
namestringUnit of measure name (for example: pcs., pkg., pallet).
coefficientdecimalConversion factor of the unit relative to the product’s base unit.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="product_unit">
  <s>
    <f name="unit_id" type="string"/>
    <f name="product_id" type="string"/>
    <f name="name" type="string"/>
    <f name="coefficient" type="decimal"/>
  </s>
  <d>
    <r>
      <f>00000001</f>
      <f>00001001</f>
      <f>pc.</f>
      <f>1</f>
    </r>
  </d>
</extdata>

7.5. price_type.xml — Типы цен товара

Status: Required

List of available product price types. When creating an order, the application uses the price type specified in the customer record by default, with the option to change it manually in the document header.

Fields

FieldTypeDescription
idstringUnique price type identifier in the ERP system.
namestringPrice type name.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="price_type">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
  </s>
  <d>
    <r>
      <f>00000001</f>
      <f>Retail</f>
    </r>
  </d>
</extdata>

7.6. product_price.xml — Product prices

Status: Required

The file contains product prices by price type. The price is specified per base unit of the product.

Fields

FieldTypeDescription
price_idstringUnique price type identifier from the price_type.xml file.
product_idstringUnique product identifier from the product.xml file.
pricedecimalProduct price for this price type per base unit.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="product_price">
  <s>
    <f name="price_id" type="string"/>
    <f name="product_id" type="string"/>
    <f name="price" type="decimal"/>
  </s>
  <d>
    <r>
      <f>00000001</f>
      <f>00001001</f>
      <f>50.0000</f>
    </r>
  </d>
</extdata>

7.7. product_category.xml — Product categories

Status: Optional

The file contains a hierarchical or flat product category structure. The data is used to group products when filtering by category. For a flat structure, the parent_id values in all rows are left empty.

Fields

FieldTypeDescription
idstringUnique product category identifier in the ERP system.
namestringProduct group name.
parent_idstringUnique identifier of the parent category from the same file. If the field is empty, the category is a root category.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="product_category">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
    <f name="parent_id" type="string"/>
  </s>
  <d>
    <r>
      <f>00000100</f>
      <f>Grocery</f>
      <f></f>
    </r>
    <r>
      <f>00000110</f>
      <f>Bread and Flour</f>
      <f>00000100</f>
    </r>
  </d>
</extdata>

7.8. stock.xml — Stock levels

Status: Optional

The file contains information about current product quantities in warehouses. The data is used to display stock levels in the product catalog. Product quantities are always specified in the base units of measure defined by the base_unit_id field in the product.xml file.

Fields

FieldTypeDescription
product_idstringUnique product identifier from the product.xml file.
stock_qtydecimalActual product quantity in stock, expressed in base units.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="stock">
  <s>
    <f name="product_id" type="string"/>
    <f name="stock_qty" type="decimal"/>
  </s>
  <d>
    <r>
      <f>00001001</f>
      <f>25.00</f>
    </r>
  </d>
</extdata>

7.9. client.xml — Customer list

Status: Required

The file contains a list of customers and sales outlets with all parameters required for servicing them by a sales representative.

Fields

FieldTypeDescription
idstringUnique customer identifier in the ERP system.
namestringSales outlet name.
addressstringCustomer’s physical address.
category_idstringUnique customer category identifier from the client_category.xml file.
price_idstringUnique price type identifier from the price_type.xml file. This parameter determines which prices from product_price.xml are displayed for the customer by default.
payment_idstringUnique payment type identifier from the payment_type.xml file. This parameter determines which payment type is displayed for the customer by default.
commentstringAdditional instructions, notes, or comments for the sales representative. Maximum length: 200 characters.
contactstringName or full name of the contact person at the sales outlet.
phonestringPhone number for contacting the sales outlet’s contact person.
gps_latstringLatitude coordinate used to display the sales outlet location on the map and verify GPS coordinates during visits.
gps_lonstringLongitude coordinate used to display the sales outlet location on the map and verify GPS coordinates during visits.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="client">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
    <f name="address" type="string"/>
    <f name="category_id" type="string"/>
    <f name="price_id" type="string"/>
    <f name="payment_id" type="string"/>
    <f name="comment" type="string"/>
    <f name="contact" type="string"/>
    <f name="phone" type="string"/>
    <f name="gps_lat" type="string"/>
    <f name="gps_lon" type="string"/>
  </s>
  <d>
    <r>
      <f>00050000</f>
      <f>Petrov Store</f>
      <f>37 Mira Ave.</f>
      <f>00000003</f>
      <f>00000002</f>
      <f>00000002</f>
      <f>Entry pass required</f>
      <f>Dmitry</f>
      <f>8-924-174-82-73</f>
      <f>55,6948</f>
      <f>37,3532</f>
    </r>
  </d>
</extdata>

7.10. client_category.xml — Customer categories

Status: Optional

The file is used to filter the customer list in the mobile application. It allows the sales representative to display only customers belonging to a selected category, for example, a specific area.

Note: The identifier from this file is specified in the category_id field of the client.xml file.

Fields

FieldTypeDescription
idstringUnique customer category identifier in the ERP system.
namestringCategory name.

Example

?xml version="1.0" encoding="UTF-8"?>
<extdata name="client_category">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
  </s>
  <d>
    <r>
      <f>00000001</f>
      <f>Arbat</f>
    </r>
  </d>
</extdata>

7.11. payment_type.xml — Payment types

Status: Required

The reference file contains a list of available payment methods, such as cash or bank transfer. These values are used when creating an order in the mobile application to specify the payment terms.

Fields

FieldTypeDescription
idstringUnique payment type identifier in the ERP system.
namestringPayment method name displayed in the application interface.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="payment_type">
  <s>
    <f name="id" type="string"/>
    <f name="name" type="string"/>
  </s>
  <d>
    <r>
      <f>00000001</f>
      <f>Bank transfer</f>
    </r>
  </d>
</extdata>

7.12. route.xml — Visit schedule

Status: Optional

The file contains data about planned visits to sales outlets. In the mobile application, this data is used to filter the customer list by route for the selected day.

Fields

FieldTypeDescription
agent_idstringUnique sales representative identifier from the agent.xml file.
client_idstringUnique sales outlet identifier from the client.xml file.
visit_datedatetimeVisit date in YYYY-MM-DDTHH:MM:SS format.
sortintegerDetermines the order in which customers are displayed in the list when route filtering is enabled.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="route">
  <s>
    <f name="agent_id" type="string"/>
    <f name="client_id" type="string"/>
    <f name="visit_date" type="datetime"/>
    <f name="sort" type="integer"/>
  </s>
  <d>
    <r>
      <f>00000255</f>
      <f>00050000</f>
      <f>2026-01-08T00:00:00</f>
      <f>999</f>
    </r>
  </d>
</extdata>

7.13. debt.xml — Outstanding debt

Status: Optional

The file contains information about unpaid documents. In addition to document-level details, the data is used to display the customer’s total outstanding balance in the customer record, during a visit, and when creating an order. The mobile application also supports accepting cash payments toward a specific document from this list.

Fields

FieldTypeDescription
client_idstringUnique customer identifier from the client.xml file.
doc_numberstringNumber of the source document (delivery note, invoice).
doc_datedatetimeDate and time when the document was issued, in YYYY-MM-DDTHH:MM:SS format.
doc_namestringFull document name displayed in the list, for example “Sale of goods…”.
doc_sumdecimalOriginal amount of the document.
debt_sumdecimalCurrent outstanding balance for this document.
paid_sumdecimalAmount previously paid for this document. An empty value is allowed and is treated as 0.

Example

<?xml version="1.0" encoding="UTF-8"?>
<extdata name="debt">
  <s>
    <f name="client_id" type="string"/>
    <f name="doc_number" type="string"/>
    <f name="doc_date" type="datetime"/>
    <f name="doc_name" type="string"/>
    <f name="doc_sum" type="decimal"/>
    <f name="debt_sum" type="decimal"/>
    <f name="paid_sum" type="decimal"/>
  </s>
  <d>
    <r>
      <f>00050000</f>
      <f>INV-25-0100</f>
      <f>2025-07-27T16:23:00</f>
      <f>Sale of goods INV-25-0100 dated 27.07.2025 16:23:00</f>
      <f>16376.87</f>
      <f>11348.29</f>
      <f>5028.58</f>
    </r>
  </d>
</extdata>

Ask a question