PHP

Украинские ИНН

Встретил у Болка запись о том, как формируются номера российских ИНН. Стало интересно, как с этим обстоит дело у нас.

Итак, украинский ИНН (индивидуальный налоговый номер) состоит из 10 цифр. В нём зашифрованы:

дата рождения (первые пять цифр образуют число, равное количеству дней от 01.01.1900 до даты рождения владельца ИНН);
пол (чётность девятой цифры: четная цифра – женский, нечетная – мужской);
checksum, т.е. контрольное число (последняя цифра)

Как считается контрольная цифра я пока что не знаю. Здесь можно проверить, как работает большой брат, исходники большого брата — под катом.

Забавные факты про украинский ИНН:

физическим лицам, которые из-за своих религиозных или других убеждений отказываются от принятия идентификационного номера, официально сообщили об этом соответствующим органам государственной власти и имеют соответствующую отметку в паспорте, предоставляется идентификационный номер в виде номера и серии паспорта таких лиц (src);
иностранцы не могут отказаться от кодов, даже если они имеют соответствующие религиозные убеждения. Причина: украинские власти не могут внести соответствующую отметку в их паспорт (см. предыдущий пункт) и присвоить ИНН по номеру паспорта. Зачем нужен украинский ИНН иностранцу? Чтобы иметь возможность стать учредителем юрлица или заниматься предпринимательской деятельностью на территории Украины (src);
я не смог найти в сети информацию о том, какие ИНН присваиваются гражданам, родившимся в 19 веке (т.е. до 01.01.1900 года).

Отдельно хочется процитировать каких-то религиозных маразматиков (орфография и пунктуация сохранены):

Как здесь не заметить, что определенные проблемы будут ощущать, например, лица, которые изменили свой пол.

Понятно, что не сложно написать программу, которая к 1 января 1900 года прибавит число и получит дату рождения. Так что, милые дамы, со старинным правилом этикета, согласно которого о Вашем возрасте спрашивать было не принято, придется расстаться. У технотронного века свой жесткий и далекий от условностей приличия “этикет”.

Мой вам совет, милые дамы: если кто-то выспрашивает у вас ваш ИНН, отнеситесь к нему с подозрением!
        /*      developed by студия webous 
                http://dev.zp.ua/
                author: val petruchek
                e-mail: petruchek, собака, gmail.com
                date:   October 29, 2007                                */

function ParseUaID($id)
    {
    //$id must contain 10 digits
    if (!preg_match(‘/^\d{10}$/’,$id) || ($id==0)) 
        return false;

    $result = array();

    //sex
    $result[’sex’] = (substr($id,8,1) % 2) ? ‘M’ : ‘F’;

    //birthdate
    $days = substr($id,0,5);
    $year = 1900; $day = 01; $month = 01;
    while ($days > 0)
        {
        $daysInYear = (checkdate (02, 29, $year)) ? 366 : 365;
        if ($days > $daysInYear)
            {
            $days -= $daysInYear;
            $year ++;
            }
        else{
            for ($daysInMonth = 31; !checkdate($month, $daysInMonth, $year); $daysInMonth–) ;
            if ($days > $daysInMonth)
                {
                $days -= $daysInMonth;
                $month ++;
                }
            else{
                $day = $days;
                $days = 0;
                }
            }
        }
    $result[‘year’] = $year;
    $result[‘month’] = $month;
    $result[‘day’] = $day;

    return $result;
    }
Похожие новости:
Добавлено: 20 Августа 2013 09:23:28 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...