Архив 24 июня 2020

Про IT-компании

Обсуждают льготы для “IT-компаний”, предложенные вчера Путиным. Во-первых, некоторое недоумение вызывает вопрос – что же такое “IT-компания”? Ответ на него очевиден, но многим неизвестен – это компания, включенная в особый список Минцирка (МИНистерство ЦИфрового Развития, связи и массовых Коммуникаций):

https://digital.gov.ru/ru/activity/govservices/1/

По состоянию на 15.06.2020 в списке, представленном в виде таблички формата xls (КМПВ, узнаем, почему не csv или что-то “открытое”, а за использование старых форматов M$ будем отправлять на Колыму), числится 11452 организации. Кроме того, в списке есть ОГРНы и ИННы компаний – а поэтому на сайтах вроде какого-нибудь zachestnyibiznes несложно найти информацию о любой из них – например, о ООО “ТЛМ Ком” под номером 1 в списке:

https://zachestnyibiznes.ru/company/ul/1045207810218_5262128494_OOO-TLM-KOM

К сожалению, фирма уже ликвидирована, а вот номер 2 в списке – ООО “ТЭЛМА Софт” – живет и здравствует, переименовавшись в “Харман”:

https://zachestnyibiznes.ru/company/ul/1025203734841_5262068365_OOO-HARMAN

Конечно, правильнее было бы брать эту информацию у налоговой – как, собственно, все эти зачестные бизнесы и руспрофайлы и поступают – но выгрузка ЕГРЮЛ довольно сложна и кишит странностями.

И еще пара вводных – во-первых, льготы по налогу на прибыль, очевидно, распространяются на тех, кто его платит – то есть сидит на общей системе налогообложения, а не на “упрощенке”; во-вторых, количество работников в компании должно быть не менее 7 человек. Если вы представляете себе среднюю российскую ИТ-компанию – то, наверное, уже почувствовали, что на льготы могут расчитывать далеко не все. Скажем, очень многие сидят на “упрощенке” – она действительно сильно упрощает жизнь, особенно если ваши клиенты – такие же “упрощенщики” или физические лица. Численность в 7+ человек – тоже сравнительно много, особенно учитывая популярность работы с фрилансерами, когда в штате фирмы – буквально три-четыре наиболее незаменимых человека, а остальные работают по договорам ГПХ или регистрируются, как индивидуальные предприниматели (в особо запущенных случаях это превращается в “схему Ходорковского”, но не будем показывать пальцем :) ).

В общем, возникает желание проверить – а многие ли в этом списке подпадают под льготы. Основная проблема – невозможно надежно определить, пользуется ли контора УСН или нет по страничке с данными. Для части фирм на УСН встречается надпись “Упрощенная система налогообложения (УСН) (на 2018 год)” – но сделать по ней или ее отсутствию надежный вывод о том, каким налоговым режимом пользуется фирма, нельзя. Впрочем, как первое приближение – сойдет. Не для всех фирм есть сведения о количестве работников – в первую очередь это касается недавно зарегистрированных, но им все равно придется ждать не менее 9 месяцев, чтобы получить право на льготы. В общем, пишем под пивко несложный питоновский скрипт (я нихера не питонист, так что особо палками и камнями не кидайтесь):


import requests
import re
from bs4 import BeautifulSoup
import pandas as pd

elegible = 0

def get_info(id):
    global elegible

    working = False
    workers = False
    osn = True # так как система налогообложения определяется неоднозначно

    # на случай 1167847383824 (бывш. 1037841001681) и т. п.
    if not isinstance(id, int):
        id = int(id.split(' ')[0])

    # поиск по ОГРН
    url = 'https://zachestnyibiznes.ru/search?query=' + str(id)
    r = requests.get(url) # получаем результаты поиска
    if r.status_code != 200:
        print('Error ' + str(r.status_code) + ' for OGRN=' + str(id))
        return

    # вытаскиваем ссылку на страницу компании
    soup = BeautifulSoup(r.content, features='lxml')
    res = soup.find_all('td', class_='hidden-print')
    url = res[0].find_all('a')[0].get('href')

    # загружаем страницу с информацией о компании
    url = 'https://zachestnyibiznes.ru' + url
    r = requests.get(url) # получаем результаты поиска
    if r.status_code != 200:
        print('Error ' + str(r.status_code) + ' for OGRN=' + str(id))
        return

    # вытаскиваем из страницы нужную нам информацию
    soup = BeautifulSoup(r.content, features='lxml')
    # для начала sanity check, проверим ОГРН на совпадение
    res = soup.find_all('span', id='ogrn')
    ogrn = res[0].contents[0]
    if id != int(ogrn):
        print('Bad data page for OGRN ' + str(id))

    # в этом div-е сосредоточена вся интересующая нас информация
    info = soup.find('div', class_='m-t-5')

    # ищем, действующее предприятие или нет
    status_string = info.find(string=re.compile('Статус'))
    if status_string:
        status_value = status_string.next_sibling.next_sibling.next_sibling.string
        if status_value == 'Действующее':
            working = True

    # проверяем численность работников
    workers_string = info.find(string=re.compile('Среднесписочная численность работников'))
    if workers_string:
        workers_value = workers_string.next_sibling.next_sibling.next_sibling.next_sibling.string
        if int(workers_value) >= 7:
            workers = True

    # проверяем систему налогообложения
    usn_string = info.find(string=re.compile('Упрощенная система налогообложения'))
    if usn_string:
        osn = False

    if working and workers and osn:
        elegible = elegible+1

data = pd.read_excel('200615-reestrot15062020.xls', usecols='C,D', names=['Name', 'OGRN'])
for id in data.OGRN:
    try:
        get_info(id)
    except:
        print('Something went wrong for OGRN ' + str(id))
print('Number of elegible companies ' + str(elegible) + '/' + str(data.OGRN.size))

Запускаем и идем допивать пиво – работает долго, при этом в списке обнаруживается куча странностей – вроде компаний с несуществующими ОГРН; иногда это просто опечатки, типа лишней или забытой цифры, иногда – что-то непонятное. Минцирк оправдывает свое название.

В конечном итоге оказывается, что на льготы могут претендовать всего лишь 3028 компаний из списка (я не разбирал косячные ОГРНы вручную – их у меня набралось 18 штук) – впечатляет, да? В общем, радоваться могут лишь “избранные”, остальных это вряд ли коснется.

Да, оценка несколько завышена – если внимательно почитать требования, необходимые для получения льгот, на сайте министерства, то там обнаружатся дополнительные требования – например, 90% дохода фирма должна получать от “околоайтишной” деятельности (всякого рода Яндексы с Додо-пиццей в пролете):

доля доходов от реализации экземпляров программ для ЭВМ, баз данных, передачи исключительных прав на программы для ЭВМ, базы данных, предоставления прав использования программ для ЭВМ, баз данных по лицензионным договорам, от оказания услуг (выполнения работ) по разработке, адаптации и модификации программ для ЭВМ, баз данных (программных средств и информационных продуктов вычислительной техники), а также услуг (работ) по установке, тестированию и сопровождению указанных программ для ЭВМ, баз данных по итогам отчетного (расчетного) периода составляет не менее 90 процентов в сумме всех доходов организации за указанный период;