DataExchange is the API module of the Datagate platform — the entry point for any external system that wants to read or send data. Full endpoint documentation is available through Swagger at {site}/swagger, where each operation can be tested directly from the browser.
The API is REST, communicates via JSON and uses bearer authentication (details on the Authentication page).
The API is organized into four categories, each with a different purpose and rules:
| Master Data | Items, barcodes, personnel, customers, raw materials, spare parts. |
| Transactions | Sales, orders, stock movements, service movements, cash management. |
| Status Data | Pricing, stock, customer loyalty cards. |
| Device Transactions | ICS Transactions scanners, WMS Transactions and warehouse map. |
Company Basic Data: Items, Barcodes, Personnel, Customers, Raw Materials, Spare Parts.
Available operations: List Data (read, with filtering and versioning support) and Upsert (create or update). Records are identified by code — SKU, barcode, customer ID — not by internal ID. If an item is submitted with a code that already exists, the data is updated. if it doesn't exist, it's created.
Transactional documents: sales, orders, stock movements, service movements, cash management.
Available operations: List Date (read) and Create (create new document). Modifying existing documents is not allowed via the API — a validated document can only be undone by the user from the interface. This restriction is intentional: an issued document can have chain effects (invoicing, shipping, accounting), and changing it would produce inconsistencies.
To retrieve only new documents (those that have not yet been processed by the external system), two mechanisms are available: Versioning (filtering by the date of the last modification) and SetExported (explicit marking of documents already retrieved).
Status data that can be set from the outside, outside the normal Datagate flow: stocks, prices, loyalty cards.
These operations are useful in integration scenarios where data is managed by another system. For example, an external WMS can update stock in Datagate with calculated values in its own system, without generating transactional stock movements.
Transactions generated by scanning devices: ICS, WMS, warehouse map. These endpoints are used by mobile apps and endpoints, not integrations with external systems.