{
    "openapi": "3.0.3",
    "info": {
        "title": "MasterRent API",
        "version": "1.0.0",
        "description": "REST API системы учёта аренды MasterRent: счета, акты, платежи, контрагенты. Обмен с 1С и другими учётными системами."
    },
    "servers": [
        {
            "url": "https://masterrent.pro/api/v1"
        }
    ],
    "components": {
        "securitySchemes": {
            "bearer": {
                "type": "http",
                "scheme": "bearer",
                "description": "Ключ из Настройки → API и обмен с 1С"
            }
        }
    },
    "paths": {
        "/ping": {
            "get": {
                "summary": "Проверка ключа",
                "description": "Возвращает название компании, статус подписки и права ключа. С него удобно начинать подключение.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": {
                                        "ok": true,
                                        "company": "ООО «Рынок»",
                                        "subscription": "active",
                                        "paid_until": "2027-01-31",
                                        "scope": "write",
                                        "key_name": "Обмен с 1С",
                                        "server_time": "2026-10-18T12:00:00+03:00"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                }
            }
        },
        "/organizations": {
            "get": {
                "summary": "Наши организации",
                "description": "Юридические лица арендодателя с реквизитами и расчётными счетами. Нужны, чтобы сопоставить организации с 1С по ИНН.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 1,
                                            "name": "ООО «Мастер Аренда»",
                                            "inn": "7701234567",
                                            "kpp": "770101001",
                                            "is_vat_payer": false,
                                            "bank_accounts": []
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                }
            }
        },
        "/markets": {
            "get": {
                "summary": "Рынки",
                "description": "Список рынков (площадок).",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 1,
                                            "name": "Центральный рынок",
                                            "address": "г. Москва",
                                            "is_active": true
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                }
            }
        },
        "/tenants": {
            "get": {
                "summary": "Контрагенты (арендаторы)",
                "description": "Контрагенты с реквизитами и банковскими счетами. Контрагента однозначно определяет ИНН.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 5,
                                            "type": "legal_entity",
                                            "name": "ООО «Вектор»",
                                            "inn": "7712345678",
                                            "kpp": "771201001",
                                            "email": "buh@vector.ru",
                                            "bank_accounts": []
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "inn",
                        "in": "query",
                        "description": "Фильтр по ИНН",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "7712345678"
                    },
                    {
                        "name": "updated_since",
                        "in": "query",
                        "description": "Созданы не раньше даты (ГГГГ-ММ-ДД)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10-01"
                    },
                    {
                        "name": "active",
                        "in": "query",
                        "description": "1 — только активные",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "1"
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Номер страницы (по умолчанию 1)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "1"
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Записей на странице, до 200 (по умолчанию 50)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "50"
                    }
                ]
            },
            "post": {
                "summary": "Создать или обновить контрагента",
                "description": "Ищет контрагента по ИНН. Если найден — дополняет заполненные поля, если нет — создаёт. Для нового контрагента обязательны inn и name; если у аккаунта несколько рынков — ещё market_id. Требует ключ с правом записи.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": {
                                        "id": 5,
                                        "type": "legal_entity",
                                        "name": "ООО «Вектор»",
                                        "inn": "7712345678"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "example": {
                                "inn": "7712345678",
                                "kpp": "771201001",
                                "name": "ООО «Вектор»",
                                "email": "buh@vector.ru",
                                "phone": "+79990001122",
                                "legal_address": "г. Москва, ул. Тестовая, 1",
                                "market_id": 1
                            }
                        }
                    }
                }
            }
        },
        "/contracts": {
            "get": {
                "summary": "Договоры",
                "description": "Договоры аренды и субаренды с объектами и условиями.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 1,
                                            "number": "D-001",
                                            "type": "rent",
                                            "status": "active",
                                            "start_date": "2026-08-01",
                                            "end_date": null,
                                            "tenant": {
                                                "id": 5,
                                                "inn": "7712345678",
                                                "name": "ООО «Вектор»"
                                            },
                                            "rent_amount": 15000,
                                            "objects": [
                                                {
                                                    "number": "12",
                                                    "area": 24,
                                                    "rent_amount": 15000
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "tenant_inn",
                        "in": "query",
                        "description": "ИНН арендатора",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "7712345678"
                    },
                    {
                        "name": "status",
                        "in": "query",
                        "description": "active или closed",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "active"
                    },
                    {
                        "name": "number",
                        "in": "query",
                        "description": "Номер договора",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "D-001"
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Номер страницы (по умолчанию 1)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "1"
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Записей на странице, до 200 (по умолчанию 50)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "50"
                    }
                ]
            }
        },
        "/invoices": {
            "get": {
                "summary": "Счета и акты",
                "description": "Счета на оплату вместе с актами. Акт создаётся вместе со счётом: у каждого счёта есть поле act (номер и дата) и ссылки на PDF обоих документов. Для обмена используйте exported=0 — «ещё не передано в 1С».",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 1,
                                            "number": "СЧ-001500",
                                            "date": "2026-10-18",
                                            "period": "2026-10",
                                            "status": "sent",
                                            "total": 15000,
                                            "vat": {
                                                "rate": null,
                                                "amount": null,
                                                "included_in_price": null
                                            },
                                            "contract": {
                                                "id": 1,
                                                "number": "D-001",
                                                "date": "2026-08-01",
                                                "type": "rent"
                                            },
                                            "seller": {
                                                "id": 1,
                                                "name": "ООО «Мастер Аренда»",
                                                "inn": "7701234567",
                                                "kpp": "770101001",
                                                "bank_accounts": [
                                                    {
                                                        "bank_name": "АО «Банк»",
                                                        "bik": "044525000",
                                                        "account": "40702810000000000001"
                                                    }
                                                ]
                                            },
                                            "buyer": {
                                                "id": 5,
                                                "type": "legal_entity",
                                                "name": "ООО «Вектор»",
                                                "inn": "7712345678",
                                                "kpp": "771201001"
                                            },
                                            "lines": [
                                                {
                                                    "kind": "rent",
                                                    "description": "Аренда по договору № D-001 за октябрь 2026",
                                                    "quantity": 1,
                                                    "unit": "усл.",
                                                    "price": 15000,
                                                    "amount": 15000
                                                }
                                            ],
                                            "act": {
                                                "number": "АКТ-77",
                                                "date": "2026-10-18"
                                            },
                                            "pdf": {
                                                "invoice": "https://masterrent.pro/admin/invoice_pdf?k=1&t=…&type=invoice",
                                                "act": "https://masterrent.pro/admin/invoice_pdf?k=1&t=…&type=act"
                                            },
                                            "exchange": {
                                                "status": "pending",
                                                "external_id": null,
                                                "external_number": null,
                                                "message": null,
                                                "updated_at": null
                                            }
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "period",
                        "in": "query",
                        "description": "Период ГГГГ-ММ",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10"
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Дата счёта от",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10-01"
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Дата счёта до",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10-31"
                    },
                    {
                        "name": "tenant_inn",
                        "in": "query",
                        "description": "ИНН покупателя",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "7712345678"
                    },
                    {
                        "name": "number",
                        "in": "query",
                        "description": "Номер счёта",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "СЧ-001500"
                    },
                    {
                        "name": "status",
                        "in": "query",
                        "description": "draft или sent",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "sent"
                    },
                    {
                        "name": "exported",
                        "in": "query",
                        "description": "0 — не переданные в 1С, 1 — переданные",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "0"
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Номер страницы (по умолчанию 1)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "1"
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Записей на странице, до 200 (по умолчанию 50)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "50"
                    }
                ]
            }
        },
        "/invoices/{id}": {
            "get": {
                "summary": "Один счёт",
                "description": "Счёт с позициями, продавцом, покупателем, актом и ссылками на PDF. {id} — поле id из списка.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": {
                                        "id": 1,
                                        "number": "СЧ-001500",
                                        "date": "2026-10-18",
                                        "period": "2026-10",
                                        "status": "sent",
                                        "total": 15000,
                                        "vat": {
                                            "rate": null,
                                            "amount": null,
                                            "included_in_price": null
                                        },
                                        "contract": {
                                            "id": 1,
                                            "number": "D-001",
                                            "date": "2026-08-01",
                                            "type": "rent"
                                        },
                                        "seller": {
                                            "id": 1,
                                            "name": "ООО «Мастер Аренда»",
                                            "inn": "7701234567",
                                            "kpp": "770101001",
                                            "bank_accounts": [
                                                {
                                                    "bank_name": "АО «Банк»",
                                                    "bik": "044525000",
                                                    "account": "40702810000000000001"
                                                }
                                            ]
                                        },
                                        "buyer": {
                                            "id": 5,
                                            "type": "legal_entity",
                                            "name": "ООО «Вектор»",
                                            "inn": "7712345678",
                                            "kpp": "771201001"
                                        },
                                        "lines": [
                                            {
                                                "kind": "rent",
                                                "description": "Аренда по договору № D-001 за октябрь 2026",
                                                "quantity": 1,
                                                "unit": "усл.",
                                                "price": 15000,
                                                "amount": 15000
                                            }
                                        ],
                                        "act": {
                                            "number": "АКТ-77",
                                            "date": "2026-10-18"
                                        },
                                        "pdf": {
                                            "invoice": "https://masterrent.pro/admin/invoice_pdf?k=1&t=…&type=invoice",
                                            "act": "https://masterrent.pro/admin/invoice_pdf?k=1&t=…&type=act"
                                        },
                                        "exchange": {
                                            "status": "pending",
                                            "external_id": null,
                                            "external_number": null,
                                            "message": null,
                                            "updated_at": null
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ]
            }
        },
        "/invoices/{id}/exchange": {
            "post": {
                "summary": "Отметить результат обмена",
                "description": "После того как счёт (и акт) загружены в 1С, отметьте это: status = exported, external_id — идентификатор документа в 1С. При ошибке передайте status = error и message. Отмеченные счета больше не попадают в выборку exported=0. Требует ключ с правом записи.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": {
                                        "id": 1,
                                        "number": "СЧ-001500",
                                        "date": "2026-10-18",
                                        "period": "2026-10",
                                        "status": "sent",
                                        "total": 15000,
                                        "vat": {
                                            "rate": null,
                                            "amount": null,
                                            "included_in_price": null
                                        },
                                        "contract": {
                                            "id": 1,
                                            "number": "D-001",
                                            "date": "2026-08-01",
                                            "type": "rent"
                                        },
                                        "seller": {
                                            "id": 1,
                                            "name": "ООО «Мастер Аренда»",
                                            "inn": "7701234567",
                                            "kpp": "770101001",
                                            "bank_accounts": [
                                                {
                                                    "bank_name": "АО «Банк»",
                                                    "bik": "044525000",
                                                    "account": "40702810000000000001"
                                                }
                                            ]
                                        },
                                        "buyer": {
                                            "id": 5,
                                            "type": "legal_entity",
                                            "name": "ООО «Вектор»",
                                            "inn": "7712345678",
                                            "kpp": "771201001"
                                        },
                                        "lines": [
                                            {
                                                "kind": "rent",
                                                "description": "Аренда по договору № D-001 за октябрь 2026",
                                                "quantity": 1,
                                                "unit": "усл.",
                                                "price": 15000,
                                                "amount": 15000
                                            }
                                        ],
                                        "act": {
                                            "number": "АКТ-77",
                                            "date": "2026-10-18"
                                        },
                                        "pdf": {
                                            "invoice": "https://masterrent.pro/admin/invoice_pdf?k=1&t=…&type=invoice",
                                            "act": "https://masterrent.pro/admin/invoice_pdf?k=1&t=…&type=act"
                                        },
                                        "exchange": {
                                            "status": "pending",
                                            "external_id": null,
                                            "external_number": null,
                                            "message": null,
                                            "updated_at": null
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "example": {
                                "status": "exported",
                                "external_id": "8f3c0d9e-0000-0000-0000-000000000001",
                                "external_number": "ЦБ-0001234",
                                "message": ""
                            }
                        }
                    }
                }
            }
        },
        "/charges": {
            "get": {
                "summary": "Начисления",
                "description": "Начисления по договорам за месяц с оплаченной суммой и долгом.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 11,
                                            "period": "2026-10",
                                            "contract": {
                                                "id": 1,
                                                "number": "D-001"
                                            },
                                            "tenant_inn": "7712345678",
                                            "total_amount": 15000,
                                            "paid_amount": 0,
                                            "debt": 15000,
                                            "status": "unpaid"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "period",
                        "in": "query",
                        "description": "Период ГГГГ-ММ",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10"
                    },
                    {
                        "name": "status",
                        "in": "query",
                        "description": "unpaid, partial или paid",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "unpaid"
                    },
                    {
                        "name": "tenant_inn",
                        "in": "query",
                        "description": "ИНН арендатора",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "7712345678"
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Номер страницы (по умолчанию 1)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "1"
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Записей на странице, до 200 (по умолчанию 50)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "50"
                    }
                ]
            }
        },
        "/payments": {
            "get": {
                "summary": "Платежи",
                "description": "Журнал платежей: приход и расход, с распределением по начислениям.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": [
                                        {
                                            "id": 30,
                                            "number": "1С-0000123",
                                            "date": "2026-10-05",
                                            "direction": "income",
                                            "method": "bank",
                                            "amount": 15000,
                                            "tenant": {
                                                "id": 5,
                                                "inn": "7712345678",
                                                "name": "ООО «Вектор»"
                                            },
                                            "allocations": [
                                                {
                                                    "charge_id": 11,
                                                    "period": "2026-10",
                                                    "amount": 15000
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "description": "Дата платежа от",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10-01"
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "description": "Дата платежа до",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "2026-10-31"
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "description": "income или expense",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "income"
                    },
                    {
                        "name": "tenant_inn",
                        "in": "query",
                        "description": "ИНН плательщика",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "7712345678"
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Номер страницы (по умолчанию 1)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "1"
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "description": "Записей на странице, до 200 (по умолчанию 50)",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "example": "50"
                    }
                ]
            },
            "post": {
                "summary": "Передать входящий платёж из 1С",
                "description": "Создаёт входящий платёж и закрывает им начисления плательщика. Повторная отправка с тем же external_id не создаёт дубль. Плательщик ищется по ИНН (его нужно предварительно создать через POST /tenants). Если передан invoice_number — платёж закрывает начисления именно этого счёта; иначе contract_number; иначе долги плательщика по порядку от самых старых. Остаток сверх долга записывается как аванс. Требует ключ с правом записи.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": {
                                        "id": 30,
                                        "number": "1С-456",
                                        "date": "2026-10-05",
                                        "amount": 15000,
                                        "allocations": [
                                            {
                                                "charge_id": 11,
                                                "period": "2026-10",
                                                "amount": 15000
                                            }
                                        ]
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "example": {
                                "external_id": "ПП-2026-10-0456",
                                "date": "2026-10-05",
                                "amount": 15000,
                                "inn": "7712345678",
                                "kpp": "771201001",
                                "number": "456",
                                "invoice_number": "1500",
                                "purpose": "Оплата по счёту СЧ-001500",
                                "method": "bank",
                                "organization_inn": "7701234567",
                                "bank_account": "40702810000000000001"
                            }
                        }
                    }
                }
            }
        },
        "/payments/check": {
            "post": {
                "summary": "Проверить платёж без записи",
                "description": "То же, что POST /payments, но ничего не создаёт: возвращает, кому и какие начисления платёж закроет. Подходит для предпросмотра.",
                "security": [
                    {
                        "bearer": []
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Успешно",
                        "content": {
                            "application/json": {
                                "example": {
                                    "data": {
                                        "plan": {
                                            "tenant_id": 5,
                                            "allocations": [
                                                {
                                                    "charge_id": 11,
                                                    "period": "2026-10",
                                                    "amount": 15000
                                                }
                                            ],
                                            "advance": 0
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Нет или недействителен ключ"
                    },
                    "403": {
                        "description": "Нет прав"
                    },
                    "422": {
                        "description": "Ошибка в данных"
                    }
                },
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "example": {
                                "external_id": "ПП-2026-10-0456",
                                "date": "2026-10-05",
                                "amount": 15000,
                                "inn": "7712345678"
                            }
                        }
                    }
                }
            }
        }
    }
}