# docs/fansy-contract/v1 — контракт данных с командой Fansy ETL Fansy → принимающая БД (`fansy-store`) реализует **другая команда разработки**. С нашей стороны: 1. Спроектировать таблицы по требованиям документации НРД к данным M2M. 2. Передать команде Fansy DDL и контракт данных. 3. Согласовать тип load (UPSERT в staging), окна обновления, SLA на свежесть данных. 4. Не давать ETL-роли DDL-прав в принимающей схеме. Состав каталога (создаём в M1, отправляем в начале M2): - `ddl/` — `*.sql` миграции PostgreSQL для всех таблиц. - `data-dictionary.md` — семантика каждого поля (источник в Fansy, nullable, единицы, примеры). - `etl-requirements.md` — требования к процессу выгрузки: тип load, расписание, способ записи, окна простоя, обработка ошибок, конфиденциальность. - `examples/` — пример заявки M2M «end-to-end», 5–10 тестовых клиентов и заявок для совместного приёмочного теста. Минимальный набор таблиц (см. план): - Депоненты / клиенты. - Документы инвестора (`IdentityDocumentCodeEnum`). - ИИС-договоры (`IIAContractTypeEnum ∈ {T12, T03}`). - Депо-счета и разделы (`AccountId`, `SectionId`, `DeponentCode`). - Реквизиты расчётов (ИНН депозитария). - Портфели и остатки (Whole / Fractional, `IsolationStatus = SGDN`). - Справочник ЦБ (`SecurityCode`, `ISIN`, `Classification`, `Category`). - Контрагенты-участники сервиса MOST (Справочник пользователей). - Audit / staging-таблицы для каждой основной.