TEC.DELIVERY
enesilru

Tec.Delivery Requirements for the Accounting System Data Representation Layer (REST API) for SCU Data Retrieval

This document describes the minimum requirements for the accounting system data representation layer (hereinafter referred to as the API) for retrieving product data using the universal Tec.Delivery synchronization plugin.

General Concept

The synchronization plugin retrieves data from the accounting system data representation layer (hereinafter referred to as the API), for example from 1C.


1. General API Endpoint Requirements

1.1 Supported Methods

Parameters are passed via the query string.

The endpoint URLs shown above are examples and may be replaced with any valid URL structure defined by the API developer.


2. Retrieving Products and Categories

Request example:

/api/v1/get?type=product&modified_since=2026-02-01T00:00:00Z&limit=100&offset=0

Supported parameters (filters and pagination):


3. Fields

Each object must contain the following fields:

Field Type Required Description
id string Yes Unique and stable identifier
type string Yes Entity type: category or product
parent string Yes Parent entity identifier (0 or null for a root category)
name string Yes Product or category name
modified_at string Yes Last modification timestamp of the product or category
description string No Product description
bulk bool No false — unit-based product, true — weighted product
price number No Product price
discount number No Discount amount
store_balance number No Available inventory quantity
image_url string No Public URL of the product image
image_hash string / number No Image hash or another value used to track image changes
Requirements:

4. Product Creation, Update, and Deletion Logic


5. Image Updates

Product image validity is controlled by the image_hash field. Using an actual image hash is recommended, but other change-tracking methods are also acceptable, such as an image update timestamp or any other image version identifier.

The image_hash field is processed independently from modified_at. Therefore, updating an image only requires changing the value of image_hash — all other product data will remain unchanged.


6. Response Structure and Pagination (Required)

The API response must be a valid JSON object containing:

The API must support pagination and accept the limit and offset request parameters.

Response example:

{
  "data": [
     {
      "id": "b01a1a32-8ba2-11e6-9cf3-10bf484d6226",
      "parent": "551b4ed9-c385-11e6-9cd7-10bf484d6226",
      "type": "product",
      "bulk": false,
      "name": "Goodwill Long Grain Parboiled Rice 800g",
      "price": 145,
      "store_balance": 16,
      "modified_at": "2026-02-13T13:24:04",
      "description": "…",
      "image_url": "https://…/images/b01a1a32-8ba2-11e6-9cf3-10bf484d6226.jpg",
      "image_hash": "f9a15f0d6ebf943aea177f597cb96689c2d5c44d"
    },...
    ],
  "total": 15420
}

6. Inventory Synchronization (Optional Endpoint)

If the store requires frequent inventory updates (for example, due to a high sales volume in supermarket mode), it is recommended to implement a separate simplified endpoint that returns inventory data only.

Request example:

/api/v1/balance?modified_since=2026-02-01T00:00:00Z&limit=100&offset=0

Supported parameters:

Response

{
  "data": [
     {
      "id": "b01a1a32-8ba2-11e6-9cf3-10bf484d6226",
      "store_balance": 16
    },...
    ],
  "total": 15420
}

7. Hierarchical Structure (parent → child)

The product catalog model is hierarchical. The minimum nesting depth is 2 and the maximum is 3: