Andrey Epifancev 418f066bd8 synthgen: периоды, внешние контрагенты, экономика компаний (#38)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-12 23:49:07 +04:00

83 lines
4.8 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""Источник: synthetic-group/gen/chart.py (#35). Используемые субсчета плана счетов (коды — из seed arm-core chart_of_accounts.csv)."""
ACCOUNTS: dict[str, str] = {
"000": "Вспомогательный счет",
"01": "Основные средства",
"01.01": "Основные средства в организации",
"02": "Амортизация основных средств",
"03": "Доходные вложения в материальные ценности",
"08": "Вложения во внеоборотные активы",
"10": "Материалы",
"19": "НДС по приобретенным ценностям",
"20": "Основное производство",
"26": "Общехозяйственные расходы",
"41": "Товары",
"43": "Готовая продукция",
"44": "Расходы на продажу",
"50": "Касса",
"51": "Расчетные счета",
"52": "Валютные счета",
"55": "Специальные счета в банках",
"58.01": "Паи и акции",
"58.03": "Предоставленные займы",
"59": "Резервы под обесценение финансовых вложений",
"60.01": "Расчеты с поставщиками и подрядчиками",
"60.02": "Расчеты по авансам выданным",
"62.01": "Расчеты с покупателями и заказчиками",
"62.02": "Расчеты по авансам полученным",
"66.01": "Краткосрочные кредиты",
"66.02": "Проценты по краткосрочным кредитам",
"66.03": "Краткосрочные займы",
"66.04": "Проценты по краткосрочным займам",
"67.01": "Долгосрочные кредиты",
"67.02": "Проценты по долгосрочным кредитам",
"67.03": "Долгосрочные займы",
"67.04": "Проценты по долгосрочным займам",
"68": "Расчеты по налогам и сборам",
"68.04": "Налог на прибыль",
"69": "Расчеты по социальному страхованию и обеспечению",
"70": "Расчеты с персоналом по оплате труда",
"71": "Расчеты с подотчетными лицами",
"73": "Расчеты с персоналом по прочим операциям",
"75.02": "Расчеты по выплате доходов",
"76.03": "Расчеты по причитающимся дивидендам и другим доходам",
"76.05": "Расчеты с прочими поставщиками и подрядчиками",
"76.07.1": "Арендные обязательства",
"76.07.9": "НДС по арендным обязательствам",
"76.09": "Прочие расчеты с разными дебиторами и кредиторами",
"76.АВ": "НДС по авансам и предоплатам",
"80": "Уставный капитал",
"80.09": "Прочий капитал",
"82": "Резервный капитал",
"83": "Добавочный капитал",
"84": "Нераспределенная прибыль (непокрытый убыток)",
"86": "Целевое финансирование",
"90.01": "Выручка",
"90.02": "Себестоимость продаж",
"90.03": "Налог на добавленную стоимость",
"90.04": "Акцизы",
"90.05": "Экспортные пошлины",
# 90.06 в seed отсутствует
"90.07": "Расходы на продажу",
"90.08": "Управленческие расходы",
"90.09": "Прибыль / убыток от продаж",
"91.01": "Прочие доходы",
"91.02": "Прочие расходы",
"91.09": "Сальдо прочих доходов и расходов",
"96": "Резервы предстоящих расходов",
"97": "Расходы будущих периодов",
"99": "Прибыли и убытки",
"001": "Арендованные основные средства",
"008": "Обеспечения обязательств и платежей полученные",
"009": "Обеспечения обязательств и платежей выданные",
"011": "Основные средства, сданные в аренду",
}
def is_off_balance(code: str) -> bool:
return code.isdigit() and len(code) == 3 and "001" <= code <= "011"
def parent(code: str) -> str:
return code.rsplit(".", 1)[0] if "." in code else code