{
  "info": {
    "_postman_id": "rentu-external-api-v2-5e1a4de0",
    "name": "Rentu External API v2",
    "description": "Данные торговых центров: выручка, чеки, посещаемость, аномалии, состояние касс.\n\nКак начать:\n1. В переменные коллекции вписываются client_id и client_secret, их выдаёт менеджер Rentu.\n2. «Авторизация → Получить токен»: токен сохранится сам и подставится в остальные запросы.\n3. «Справочники → Торговые центры»: id центра из ответа идёт в переменную sc_id.\n4. «Справочники → Торговые точки»: id точки идёт в shop_id.\n\nДокументация: https://rentu.ru/new-api-docs/",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{access_token}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "base_url",
      "value": "https://api.rentu.ru/api/external/v2",
      "type": "string"
    },
    {
      "key": "client_id",
      "value": "",
      "type": "string"
    },
    {
      "key": "client_secret",
      "value": "",
      "type": "string"
    },
    {
      "key": "access_token",
      "value": "",
      "type": "string"
    },
    {
      "key": "sc_id",
      "value": "",
      "type": "string"
    },
    {
      "key": "shop_id",
      "value": "",
      "type": "string"
    },
    {
      "key": "zone_id",
      "value": "",
      "type": "string"
    },
    {
      "key": "sensor_external_id",
      "value": "",
      "type": "string"
    },
    {
      "key": "start_date",
      "value": "2026-07-01",
      "type": "string"
    },
    {
      "key": "end_date",
      "value": "2026-07-31",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "Авторизация",
      "item": [
        {
          "name": "Получить токен",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/auth/token",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "auth",
                "token"
              ]
            },
            "description": "Меняет пару client_id и client_secret на токен. Токен живёт час.\nСкрипт во вкладке Tests сам кладёт его в переменную access_token, остальные запросы берут её автоматически.\n\nДокументация: https://rentu.ru/new-api-docs/api-authorization.html",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"client_id\": \"{{client_id}}\",\n  \"client_secret\": \"{{client_secret}}\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "auth": {
              "type": "noauth"
            }
          },
          "response": [],
          "event": [
            {
              "listen": "test",
              "script": {
                "type": "text/javascript",
                "exec": [
                  "const body = pm.response.json()",
                  "if (body.success) {",
                  "  pm.collectionVariables.set(\"access_token\", body.access_token)",
                  "  console.log(\"Токен сохранён, живёт \" + body.expires_in + \" секунд\")",
                  "} else {",
                  "  console.error(\"Не удалось получить токен:\", body.error && body.error.code)",
                  "}"
                ]
              }
            }
          ]
        }
      ]
    },
    {
      "name": "Справочники",
      "item": [
        {
          "name": "Торговые центры",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/shopping_centers",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "shopping_centers"
              ]
            },
            "description": "Точка входа. Отсюда берётся sc_id для всех остальных запросов.\n\nДокументация: https://rentu.ru/new-api-docs/reference-shopping-centers.html"
          },
          "response": []
        },
        {
          "name": "Торговые точки",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/shops?page=1&per_page=100&archived=true",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "shops"
              ],
              "query": [
                {
                  "key": "page",
                  "value": "1",
                  "description": "Номер страницы",
                  "disabled": true
                },
                {
                  "key": "per_page",
                  "value": "100",
                  "description": "Размер страницы, от 1 до 500",
                  "disabled": true
                },
                {
                  "key": "archived",
                  "value": "true",
                  "description": "Добавить архивные точки к действующим",
                  "disabled": true
                }
              ]
            },
            "description": "Документация: https://rentu.ru/new-api-docs/reference-shops.html"
          },
          "response": []
        },
        {
          "name": "Кассы точки",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/shops/{{shop_id}}/kkts?archived=true",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "shops",
                "{{shop_id}}",
                "kkts"
              ],
              "query": [
                {
                  "key": "archived",
                  "value": "true",
                  "description": "Добавить архивные кассы",
                  "disabled": true
                }
              ]
            },
            "description": "Документация: https://rentu.ru/new-api-docs/reference-kkts.html"
          },
          "response": []
        },
        {
          "name": "Зоны подсчёта",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/traffic_areas",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "traffic_areas"
              ]
            },
            "description": "id зоны приходит целым числом, в отличие от остальных идентификаторов.\n\nДокументация: https://rentu.ru/new-api-docs/reference-traffic-areas.html"
          },
          "response": []
        },
        {
          "name": "Настройки товарооборота",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/shops/{{shop_id}}/turnover_config",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "shops",
                "{{shop_id}}",
                "turnover_config"
              ]
            },
            "description": "Документация: https://rentu.ru/new-api-docs/reference-turnover-config.html"
          },
          "response": []
        }
      ]
    },
    {
      "name": "Данные",
      "item": [
        {
          "name": "Продажи по дням",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/reports/shops/{{shop_id}}/by_days?start_date={{start_date}}&end_date={{end_date}}&page=1&per_page=100",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "reports",
                "shops",
                "{{shop_id}}",
                "by_days"
              ],
              "query": [
                {
                  "key": "start_date",
                  "value": "{{start_date}}",
                  "description": "Начало периода, YYYY-MM-DD"
                },
                {
                  "key": "end_date",
                  "value": "{{end_date}}",
                  "description": "Конец периода, YYYY-MM-DD"
                },
                {
                  "key": "page",
                  "value": "1",
                  "description": "Номер страницы",
                  "disabled": true
                },
                {
                  "key": "per_page",
                  "value": "100",
                  "description": "Размер страницы, от 1 до 366",
                  "disabled": true
                }
              ]
            },
            "description": "Документация: https://rentu.ru/new-api-docs/reference-by-days.html"
          },
          "response": []
        },
        {
          "name": "Продажи по месяцам",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/reports/shops/{{shop_id}}/by_months?start_date={{start_date}}&end_date={{end_date}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "reports",
                "shops",
                "{{shop_id}}",
                "by_months"
              ],
              "query": [
                {
                  "key": "start_date",
                  "value": "{{start_date}}",
                  "description": "Начало периода"
                },
                {
                  "key": "end_date",
                  "value": "{{end_date}}",
                  "description": "Конец периода"
                }
              ]
            },
            "description": "Период расширяется до целых месяцев. На PRO добавляются средний чек, выручка на м² и OCR.\n\nДокументация: https://rentu.ru/new-api-docs/reference-by-months.html"
          },
          "response": []
        },
        {
          "name": "Чеки (PRO)",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/shops/{{shop_id}}/receipts?start_created_date={{start_date}}&end_created_date={{end_date}}&start_received_date=&end_received_date=&document_types=receipt,delivery&page=1&per_page=500",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "shops",
                "{{shop_id}}",
                "receipts"
              ],
              "query": [
                {
                  "key": "start_created_date",
                  "value": "{{start_date}}",
                  "description": "Начало периода по времени пробития чека"
                },
                {
                  "key": "end_created_date",
                  "value": "{{end_date}}",
                  "description": "Конец того же периода"
                },
                {
                  "key": "start_received_date",
                  "value": "",
                  "description": "Начало периода по времени поступления к нам",
                  "disabled": true
                },
                {
                  "key": "end_received_date",
                  "value": "",
                  "description": "Конец того же периода",
                  "disabled": true
                },
                {
                  "key": "document_types",
                  "value": "receipt,delivery",
                  "description": "Типы фискальных документов",
                  "disabled": true
                },
                {
                  "key": "page",
                  "value": "1",
                  "description": "Номер страницы",
                  "disabled": true
                },
                {
                  "key": "per_page",
                  "value": "500",
                  "description": "Размер страницы, от 1 до 1000",
                  "disabled": true
                }
              ]
            },
            "description": "Нужна хотя бы одна полная пара дат. Каждая пара ограничена 31 днём.\n\nДокументация: https://rentu.ru/new-api-docs/reference-receipts.html"
          },
          "response": []
        },
        {
          "name": "Посещаемость",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/attendance?start_date={{start_date}}&end_date={{end_date}}&granularity=day&scope=sc&zone_id={{zone_id}}&shop_id={{shop_id}}",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "attendance"
              ],
              "query": [
                {
                  "key": "start_date",
                  "value": "{{start_date}}",
                  "description": "Начало периода"
                },
                {
                  "key": "end_date",
                  "value": "{{end_date}}",
                  "description": "Конец периода"
                },
                {
                  "key": "granularity",
                  "value": "day",
                  "description": "day, week, month или hour",
                  "disabled": true
                },
                {
                  "key": "scope",
                  "value": "sc",
                  "description": "sc, zone или shop",
                  "disabled": true
                },
                {
                  "key": "zone_id",
                  "value": "{{zone_id}}",
                  "description": "Обязателен при scope=zone",
                  "disabled": true
                },
                {
                  "key": "shop_id",
                  "value": "{{shop_id}}",
                  "description": "Обязателен при scope=shop",
                  "disabled": true
                }
              ]
            },
            "description": "granularity=hour и scope=zone|shop доступны только на PRO.\n\nДокументация: https://rentu.ru/new-api-docs/reference-attendance.html"
          },
          "response": []
        },
        {
          "name": "Аномалии продаж (PRO)",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/anomalies?start_date={{start_date}}&end_date={{end_date}}&shop_id=&status=&level=&page=1&per_page=100",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "anomalies"
              ],
              "query": [
                {
                  "key": "start_date",
                  "value": "{{start_date}}",
                  "description": "Начало периода"
                },
                {
                  "key": "end_date",
                  "value": "{{end_date}}",
                  "description": "Конец периода"
                },
                {
                  "key": "shop_id",
                  "value": "",
                  "description": "Фильтр по торговой точке",
                  "disabled": true
                },
                {
                  "key": "status",
                  "value": "",
                  "description": "new, completed или archived",
                  "disabled": true
                },
                {
                  "key": "level",
                  "value": "",
                  "description": "high, medium или low",
                  "disabled": true
                },
                {
                  "key": "page",
                  "value": "1",
                  "description": "Номер страницы",
                  "disabled": true
                },
                {
                  "key": "per_page",
                  "value": "100",
                  "description": "Размер страницы, от 1 до 500",
                  "disabled": true
                }
              ]
            },
            "description": "Документация: https://rentu.ru/new-api-docs/reference-anomalies.html"
          },
          "response": []
        },
        {
          "name": "Создать событие ТЦ",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/events",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "events"
              ]
            },
            "description": "Повтор с теми же названием, типом и датами вернёт 409: событие уже создано.\n\nДокументация: https://rentu.ru/new-api-docs/reference-events.html",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Чёрная пятница\",\n  \"description\": \"Скидки во всём ТЦ\",\n  \"event_type\": \"marketing\",\n  \"start_date\": \"2026-11-27\",\n  \"end_date\": \"2026-11-30\",\n  \"color\": \"#FF8800\",\n  \"shop_ids\": [\n    \"{{shop_id}}\"\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": []
        }
      ]
    },
    {
      "name": "Передача данных",
      "item": [
        {
          "name": "Сдать товарооборот за месяц",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/shops/{{shop_id}}/turnover",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "shops",
                "{{shop_id}}",
                "turnover"
              ]
            },
            "description": "Суммы в копейках: одноимённый метод v1 принимал рубли. Повторный вызов за тот же месяц перезаписывает значение.\n\nДокументация: https://rentu.ru/new-api-docs/reference-turnover.html",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"month\": \"{{start_date}}\",\n  \"turnover\": 12345600,\n  \"receipts_count\": 42,\n  \"visitors_count\": 500\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": []
        },
        {
          "name": "Передать посещаемость за сутки",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/attendance",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "attendance"
              ]
            },
            "description": "scope=sc пишет на периметр центра, scope=zone требует zone_id.\n\nДокументация: https://rentu.ru/new-api-docs/reference-attendance-create.html",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"date\": \"{{start_date}}\",\n  \"visitors\": 5000,\n  \"scope\": \"sc\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": []
        },
        {
          "name": "Передать почасовую выгрузку со счётчика",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Accept",
                "value": "application/json"
              },
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{base_url}}/sc/{{sc_id}}/sensors/{{sensor_external_id}}/traffic",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "sc",
                "{{sc_id}}",
                "sensors",
                "{{sensor_external_id}}",
                "traffic"
              ]
            },
            "description": "До 1000 записей за вызов. Повторная присылка часа перезаписывает значения.\n\nДокументация: https://rentu.ru/new-api-docs/reference-attendance-create.html",
            "body": {
              "mode": "raw",
              "raw": "{\n  \"data\": [\n    {\n      \"datetime\": \"2026-07-15T12:00:00\",\n      \"in\": 120,\n      \"out\": 90\n    },\n    {\n      \"datetime\": \"2026-07-15T13:00:00\",\n      \"in\": 200,\n      \"out\": 180\n    }\n  ]\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            }
          },
          "response": []
        }
      ]
    }
  ]
}