Каталог идентификаторов
Когда пригодится — когда нужен технический идентификатор, который должен
выглядеть настоящим и пройти проверку формата: UUID, e-mail, IBAN, номер
платёжной карты, налоговый номер или номер документа с контрольной суммой — и всё это
без ручного выдумывания и без копирования настоящего. Каждый адрес на этой странице —
значение для type="template"; атрибут
value — это адрес через точку, выбирающий конкретный
идентификатор.
Это полный справочник. Обзорную экскурсию по тому же генератору — данные о людях, даты,
локализация — см. в генераторе template. Для семейств
«человек/имя/дата» лучше начинать именно с той страницы; здесь же — исчерпывающий каталог
технических идентификаторов.
Каждое значение ниже получено с фиксированным seed,
поэтому воспроизводимо, но точная строка может отличаться между версиями ядра. Читайте их
как примеры формы, а не как гарантии.
Как вызвать
Каталог делится по двум правилам именования:
- Глобальные идентификаторы имеют префикс
common.—common.id.uuid,common.finance.iban,common.payment.card.pan,common.phone.e164. - Страновые начинаются с названия страны —
russia.tax.inn_org,russia.docs.snils,usa.docs.ssn,poland.docs.pesel.
<gen type="template" value="common.id.uuid"/>
<gen type="template" value="russia.tax.inn_org"/>
Неизвестный адрес — это жёсткая ошибка, а не молчаливо пустое значение:
error[TDC071]: unknown template path "russia.tax.nope" --> bad.tdc:2:48 | 2 | <gen type="template" value="russia.tax.nope"/> | ^^^^^^^^^^^^^^^
Почему они проходят проверку
Большинство «номеров-идентификаторов» несут контрольную цифру, вычисленную из остального номера (Luhn, mod-11, ISO 7064, GS1 mod-10, …). Случайные десять цифр забракует первая же проверка формата — и тест на таких данных бесполезен. Эти шаблоны выдают значения, которые проходят свою контрольную сумму, но при этом заведомо ненастоящие — зарезервированные тестовые диапазоны, вымышленные префиксы, зарезервированные IANA домены верхнего уровня, — поэтому их безопасно класть в демо, фикстуры и CI. Как определяется каждая контрольная цифра, рассказано ниже.
Параметры
Многие идентификаторы принимают параметры — передавайте их обычными атрибутами на
<gen>. Любой не заданный параметр берётся случайным; заданный
фиксируется во всех строках, а контрольная цифра всегда пересчитывается, чтобы
остаться корректной.
Например, зафиксируем код налоговой в каждом ИНН юрлица:
<gen type="template" value="russia.tax.inn_org" tax_office="7712"/>
7712702700 7712682927 7712220601 7712277421 7712165950
Каждое значение начинается с 7712, и все они остаются корректными ИНН.
Используйте параметр, когда часть идентификатора должна быть постоянной —
фиксированный эмитент, фиксированная налоговая, фиксированный домен, — а остальное
меняется.
Как узнать параметры адреса
Параметр — это просто локальная <sequence name="…">
внутри пакета данных за этим адресом; вызывающий
переопределяет её константой. Поэтому параметры, которые принимает адрес, — это ровно
имена локальных <sequence> в его пакете. Неверный параметр — понятная ошибка
(TDC072), а не молчаливое игнорирование:
error[TDC072]: "bogus" is not a parameter of "russia.tax.inn_org" — it would be ignored --> bad-param.tdc:2:53 | 2 | <gen type="template" value="russia.tax.inn_org" bogus="1"/> | ^^^^^
Несколько типичных адресов и параметры, которые они принимают:
| Адрес | Параметры |
|---|---|
common.internet.email | local, domain |
common.internet.url | scheme, domain, slug |
common.internet.domain | word, token, suffix |
common.finance.iban | bban |
common.payment.card.pan | base |
russia.tax.inn_org | tax_office |
При переезде этих генераторов в редактируемые пакеты часть редко используемых параметров и «форматированные» варианты (со скобками или дефисами) были сведены к основному виду. Контрольные суммы и основной формат сохранены; убрана только косметическая обёртка.
Идентификаторы и интернет
Непрозрачные ID (UUID, ULID, Nano ID, ObjectId), хеши коммитов и безопасные веб-значения. Используйте их, когда записи нужен первичный ключ, фейковый e-mail или адрес-заглушка URL, который никогда не столкнётся с настоящим.
<gen type="template" value="common.id.uuid"/>
<gen type="template" value="common.id.ulid"/>
<gen type="template" value="common.id.nanoid"/>
<gen type="template" value="common.git.sha"/>
common.id.uuid 63af26a7-9997-4aa8-8883-bec8f2a5c541 common.id.ulid 5GQ9BM9G731XA1KW1KMYM9EGAK common.id.nanoid LKCYPokQsGREjVYrZvJjz common.id.object_id 3ed9c528008a4cc46dbb53b2 common.git.sha efffc5bd4c321932277f4ff77cc01993344ecd2e common.system.semver 8.13.7
E-mail и домены используют зарезервированные IANA домены верхнего уровня (.test,
.invalid, .example), а IP-адреса лежат в приватных / документационных диапазонах,
поэтому ничто здесь не может достучаться до настоящего адреса:
common.internet.email qjoasyc4yx@sandbox-8s2332.test common.internet.domain test-26vh9o.test common.internet.url https://fixture-vaqpcg.example/atlas-sandbox-sandbox common.internet.ipv4 10.251.85.160 common.internet.ipv6 2001:db8:c43:28eb:f2c:ee5:e:8d5 common.internet.mac c5:62:b8:e2:af:d3 common.internet.username lfmln1e_b
| Адрес | Что генерирует | Пример |
|---|---|---|
common.git.sha | Git commit SHA-1 (40 строчных hex-символов) | efffc5bd4c321932277f4ff77cc01993344ecd2e |
common.id.nanoid | Nano ID (21 символ, URL-safe алфавит A–Za–z0–9_-) | LKCYPokQsGREjVYrZvJjz |
common.id.object_id | MongoDB ObjectId (24 строчных hex-символа) | 3ed9c528008a4cc46dbb53b2 |
common.id.ulid | ULID (26 символов, Crockford base32; первый символ 0–7) | 5GQ9BM9G731XA1KW1KMYM9EGAK |
common.id.uuid | UUID v4 (RFC 4122 — версия 4, вариант 8/9/a/b) | 63af26a7-9997-4aa8-8883-bec8f2a5c541 |
common.internet.domain | Безопасный фейковый домен — token.suffix (зарезервированные TLD по RFC 2606) | test-26vh9o.test |
common.internet.email | Безопасный email — локальная часть из 10 символов @ безопасный фейковый домен | qjoasyc4yx@sandbox-8s2332.test |
common.internet.ipv4 | IPv4 в приватных диапазонах (10/8, 172.16/12, 192.168/16) | 10.251.85.160 |
common.internet.ipv6 | IPv6 в документационном диапазоне 2001:db8::/32 | 2001:db8:c43:28eb:f2c:ee5:e:8d5 |
common.internet.mac | MAC-адрес — шесть строчных hex-октетов через двоеточие | c5:62:b8:e2:af:d3 |
common.internet.slug | URL-слаг — от 2 до 4 строчных слов через дефис | test-atlas-sandbox |
common.internet.url | Безопасный URL — scheme://safe-domain/slug (схема по умолчанию — https) | https://fixture-vaqpcg.example/atlas-sandbox-sandbox |
common.internet.username | Имя пользователя — начальная буква, далее 7–13 символов из a–z0–9_ | lfmln1e_b |
common.system.semver | Семантическая версия — major 0–9, minor 0–19, patch 0–99 | 8.13.7 |
Финансы и платежи
IBAN, коды SWIFT/BIC, номера платёжных карт (PAN) и американский маршрутный номер ABA — у каждого встроена настоящая проверка. Используйте их, когда фикстура должна пройти банковскую проверку формата или проверку Luhn.
<gen type="template" value="common.finance.iban"/>
<gen type="template" value="common.finance.bic"/>
<gen type="template" value="common.payment.card.pan"/>
<gen type="template" value="usa.finance.aba_routing"/>
common.finance.iban DE60077427668812994595 common.finance.bic VROLFR00F1Y common.payment.card.pan 4111111726740445 usa.finance.aba_routing 649946910
IBAN несёт корректную контрольную сумму ISO 7064 mod-97, PAN — корректную сумму Luhn в
тестовом диапазоне Visa (4111…), а маршрутный номер — корректную проверку mod-10
[3,7,1].
| Адрес | Что генерирует | Пример |
|---|---|---|
common.finance.bic | SWIFT/BIC-11 (4 буквы + страна + 2 символа локации + 3 символа отделения) | VROLFR00F1Y |
common.finance.iban | IBAN (страна по умолчанию — DE, 18-значный BBAN, контрольная сумма ISO 7064 mod-97) | DE60077427668812994595 |
common.payment.card.pan | Номер платёжной карты (PAN) (тестовый диапазон Visa, 16 цифр + контрольная сумма Luhn) | 4111111726740445 |
usa.finance.aba_routing | Американский маршрутный номер ABA (8 цифр + контрольная сумма mod-10 [3,7,1]) | 649946910 |
Товары и устройства
Штрихкоды и идентификаторы товаров и оборудования — ISBN, EAN, UPC, GTIN, IMEI, ICCID, ISSN. Используйте их, когда каталог или складская фикстура должны чисто сканироваться и проходить проверку.
<gen type="template" value="common.book.isbn13"/>
<gen type="template" value="common.product.ean13"/>
<gen type="template" value="common.device.imei"/>
common.book.isbn13 9783635567452 common.product.ean13 9418766812071 common.product.upc_a 277703531852 common.product.gtin14 69243931643417 common.device.imei 263236381039942 common.device.iccid 8910106572426433879 common.periodical.issn 23614552 common.vehicle.vin XJV8TB3B7W5726830
| Адрес | Что генерирует | Пример |
|---|---|---|
common.book.isbn10 | ISBN-10 (9 цифр + контрольная сумма mod-11, 10 → X) | 1684319684 |
common.book.isbn13 | ISBN-13 (префикс 978/979 + 9 цифр + контрольная сумма GS1 mod-10) | 9783635567452 |
common.periodical.issn | ISSN (7-значная база + контрольная сумма mod-11, веса 8..2, 10 → X) | 23614552 |
common.product.ean13 | EAN-13 (12-значная база + контрольная сумма GS1 mod-10) | 9418766812071 |
common.product.gtin14 | GTIN-14 (13-значная база + контрольная сумма GS1 mod-10) | 69243931643417 |
common.product.upc_a | UPC-A (11-значная база + контрольная сумма GS1 mod-10) | 277703531852 |
common.device.iccid | ICCID (89 + страна + префикс эмитента, 19 цифр + контрольная сумма Luhn) | 8910106572426433879 |
common.device.imei | IMEI (14-значная база + контрольная цифра Luhn = 15 цифр) | 263236381039942 |
Безопасность и хеши
API-ключи, одноразовые коды, секреты TOTP, JWT и «сырые» дайджесты. Используйте их, когда нужна заглушка в форме учётных данных для сценария авторизации или строки лога — но никогда не настоящий секрет.
<gen type="template" value="common.security.api_key"/>
<gen type="template" value="common.security.otp"/>
<gen type="template" value="common.security.sha256"/>
common.security.api_key tdc_cxmmn0eD60xEB5CLOilveNjDyxBcYaaM common.security.otp 874846 common.security.md5 db3d24933e41cbafde844af6dddc769f common.security.sha1 313f20b6a4fb5eedc53cf02ae32e56c2b7ee0d7b common.security.sha256 f1be92ba089ddaa35e2273dd6c7d66d712c85e313316a2f006786f383e9f686e common.security.totp_secret 76F7GJ5PYJXYHYY7E5DMY2L6G6XGVSAL
| Адрес | Что генерирует | Пример |
|---|---|---|
common.security.api_key | API-ключ (префикс по умолчанию tdc_ + 32 буквенно-цифровых символа) | tdc_cxmmn0eD60xEB5CLOilveNjDyxBcYaaM |
common.security.jwt | Фейковый JWT (фиксированный base64url-заголовок под каждый alg + случайные payload/подпись) | eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.6LKo… |
common.security.md5 | Дайджест MD5 (32 строчных hex-символа) | db3d24933e41cbafde844af6dddc769f |
common.security.otp | Числовой одноразовый код (по умолчанию 6 цифр) | 874846 |
common.security.sha1 | Дайджест SHA-1 (40 строчных hex-символов) | 313f20b6a4fb5eedc53cf02ae32e56c2b7ee0d7b |
common.security.sha256 | Дайджест SHA-256 (64 строчных hex-символа) | f1be92ba089ddaa35e2273dd6c7d66d712c85e313316a2f006786f383e9f686e |
common.security.totp_secret | Общий секрет TOTP (по умолчанию 32 base32-символа, RFC 4648 A–Z2–7) | 76F7GJ5PYJXYHYY7E5DMY2L6G6XGVSAL |
Документы, транспорт, логистика
Машиночитаемые проездные документы (MRZ по ICAO 9303), VIN автомобилей и контейнеры ISO 6346. Используйте их, когда фикстуру сканируют или распознают (OCR) и она должна удовлетворять составным контрольным цифрам формата.
Два адреса MRZ многострочные — удостоверение личности TD1 это три строки по 30 символов, паспорт TD3 — две строки по 44 символа, и каждая несёт составные контрольные цифры ICAO:
common.docs.mrz.id_td1 (удостоверение личности, три строки по 30 символов): I<UTOV80Y7XXNC58C1E31V2B6IGCXD 8402079F3111275UTOFP4DCM7IPY95 MILLER<<ADAM<<<<<<<<<<<<<<<<<< common.docs.mrz.passport_td3 (паспорт, две строки по 44 символа): P<UTODOE<<JOHN<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 22VVYEM7V0UTO9403280<3703276L73REEFL4AFXU642
Однострочные коды:
common.vehicle.vin XJV8TB3B7W5726830 common.logistics.container_iso6346 PQXU6242844
| Адрес | Что генерирует | Пример |
|---|---|---|
common.docs.mrz.id_td1 | MRZ удостоверения личности ICAO 9303 TD1 (три строки по 30 символов) с составными контрольными цифрами | (см. выше) |
common.docs.mrz.passport_td3 | MRZ паспорта ICAO 9303 TD3 (две строки по 44 символа) с составными контрольными цифрами | (см. выше) |
common.logistics.container_iso6346 | Код контейнера ISO 6346 (владелец + категория + 6-значный серийный номер + контрольная сумма mod-11) | PQXU6242844 |
common.vehicle.vin | VIN — идентификационный номер транспортного средства (ISO 3779, 17 символов, взвешенная контрольная сумма mod-11; 10 → X) | XJV8TB3B7W5726830 |
Телефоны
common.phone.e164 выбирает случайную страну; у каждой страны есть и собственный адрес.
Все выдают форму E.164. Там, где страна резервирует диапазон под кино и тесты, пакет его
и берёт — код зоны 202 в США с добавочным 555, канадский 613 555, британский Ofcom
07700 900xxx. Но у большинства стран такого диапазона нет, и для них номер собирается
из настоящих префиксов: он корректен по структуре и годится для хранения и разбора, но
звонить по нему не стоит. Используйте их, когда контактная
фикстура должна разбираться как корректный международный номер.
<gen type="template" value="russia.phone"/>
<gen type="template" value="common.phone.e164"/>
russia.phone +79962527739 germany.phone +4917140038023 france.phone +33618948981 united_kingdom.phone +447700900864 common.phone.e164 +34663489915
| Адрес | Что генерирует | Пример |
|---|---|---|
argentina.phone | Аргентина, мобильный, E.164 (+54 9 11…) | +5491185268868 |
brazil.phone | Бразилия, мобильный, E.164 (+55 + DDD + 9…) | +5562940038023 |
canada.phone | Канада, E.164 (код зоны 613, вымышленная АТС 555) | +16135558575 |
common.phone.e164 | Телефон E.164, случайная страна из набора | +34663489915 |
france.phone | Франция, мобильный, E.164 (+33 6…) | +33618948981 |
germany.phone | Германия, мобильный, E.164 (+49 15x/16x/17x…) | +4917140038023 |
mexico.phone | Мексика, E.164 (+52 + LADA, 10 цифр национального номера) | +527353382246 |
poland.phone | Польша, мобильный, E.164 (+48 5…) | +48587209191 |
russia.phone | Россия, мобильный, E.164 (+7 9…) | +79962527739 |
spain.phone | Испания, мобильный, E.164 (+34 6…) | +34631634932 |
united_kingdom.phone | Великобритания, мобильный, E.164 (диапазон Ofcom для драм +44 7700 900xxx) | +447700900864 |
usa.phone | США, E.164 (код зоны 202, вымышленная АТС 555) | +12025550883 |
Национальные налоговые номера и номера документов
У каждой перечисленной страны есть своё семейство налоговых, удостоверяющих и (у некоторых) банковских номеров с контрольной суммой. Одного российского набора хватает на большинство типичных задач:
<gen type="template" value="russia.tax.inn_org"/>
<gen type="template" value="russia.tax.inn_person"/>
<gen type="template" value="russia.docs.snils"/>
russia.tax.inn_org 6840437608 russia.tax.inn_person 860084325267 russia.docs.snils 21804781661 russia.tax.ogrn 1691669019293
Используйте их, когда запись должна нести идентификатор, соответствующий стране, который проходит проверку этой страны — российский ИНН, бразильский CPF, польский PESEL, немецкий VAT-номер, — оставаясь доказуемо ненастоящим. Полный список, по адресам:
| Адрес | Что генерирует | Пример |
|---|---|---|
argentina.docs.dni | Аргентинский DNI (8-значный национальный идентификационный номер, без контрольной цифры) | 43073935 |
argentina.tax.cuil | Аргентинский CUIL (2-значный префикс + 8-значное тело + взвешенная контрольная сумма mod-11) | 27740275106 |
argentina.tax.cuit | Аргентинский CUIT (2-значный префикс + 8-значное тело + взвешенная контрольная сумма mod-11) | 24574791010 |
austria.tax.vat | Австрийский VAT / UID (ATU + 7 цифр + контрольная цифра по схеме Луна) | ATU55031548 |
belgium.tax.vat | Бельгийский VAT (BE + 8-значная база + контрольная сумма mod-97) | BE0507916645 |
bolivia.docs.ci | Боливийское удостоверение личности (7-значный номер, без контрольной цифры) | 3991646 |
bolivia.tax.nit | Боливийский NIT (9-значный налоговый номер, без контрольной цифры) | 252014061 |
brazil.tax.cnpj | Бразильский CNPJ (8-значный корень + 4-значный филиал + две контрольные цифры mod-11) | 25232116564552 |
brazil.tax.cpf | Бразильский CPF (9-значная база + две контрольные цифры mod-11) | 14806904651 |
bulgaria.tax.vat | Болгарский VAT (BG + 9 или 10 цифр, без контрольной суммы) | BG380883064 |
canada.docs.sin | Канадский SIN (8 цифр + контрольная сумма Luhn) | 585996796 |
canada.tax.bn | Канадский регистрационный номер бизнеса (Business Number, 9 цифр, без контрольной суммы) | 307343577 |
canada.tax.program_account | Канадский лицевой счёт программы (Business Number + код программы + 4-значный референс) | 921050900RP9000 |
chile.docs.run | Чилийский RUN (7–8-значное тело + циклическая взвешенная контрольная сумма mod-11, 10 → K) | 271951701 |
chile.tax.rut | Чилийский RUT (7–8-значное тело + циклическая взвешенная контрольная сумма mod-11, 10 → K) | 90529471 |
colombia.docs.cc | Колумбийское удостоверение личности (8–10-значный номер, без контрольной цифры) | 74407968 |
colombia.tax.nit | Колумбийский NIT (9-значное тело + контрольная сумма mod-11 с весами-простыми числами, справа налево) | 4444807433 |
costa_rica.docs.cpf | Костариканский id физического лица (10 цифр, начинается с 0, без контрольной цифры) | 0813694243 |
costa_rica.tax.cpj | Костариканский id юридического лица (цифра класса + тип + 6-значный серийный номер, без контрольной цифры) | 4000813072 |
croatia.tax.vat | Хорватский VAT / OIB (HR + 10-значная база + контрольная сумма ISO 7064 MOD 11,10) | HR99570241890 |
cyprus.tax.vat | Кипрский VAT (CY + 8 цифр + 1 заглавная буква) | CY65642357G |
czechia.tax.vat | Чешский VAT / DIC (CZ + 8, 9 или 10 цифр, без контрольной суммы) | CZ288311951 |
denmark.tax.vat | Датский VAT / CVR (DK + 8 цифр, без контрольной суммы) | DK42005491 |
dominican_republic.docs.cedula | Доминиканское удостоверение личности (10-значное тело + контрольная цифра Luhn) | 96179414394 |
dominican_republic.tax.rnc | Доминиканский RNC (8-значное тело + взвешенная контрольная сумма mod-11) | 970897251 |
ecuador.docs.ci | Эквадорское удостоверение личности (провинция + 9-значная полезная часть + контрольная сумма mod-10) | 2144971195 |
ecuador.tax.ruc | Эквадорский RUC, форма для частной компании (провинция + 9 + взвешенная контрольная сумма mod-11 + 001) | 0294486720001 |
el_salvador.docs.dui | Сальвадорский DUI (8-значное тело + взвешенная контрольная цифра mod-10) | 332432757 |
el_salvador.tax.nit | Сальвадорский NIT (8-значное тело + взвешенная контрольная цифра mod-10) | 492719607 |
estonia.tax.vat | Эстонский VAT / KMKR (EE + 9 цифр, без контрольной суммы) | EE949727018 |
europe.tax.vat | VAT ЕС (делегирует стране-участнице по умолчанию — Германии) | DE193530291 |
finland.tax.vat | Финский VAT / ALV (FI + 7-значная база + взвешенная контрольная сумма mod-11) | FI76372425 |
france.tax.siren | Французский SIREN (8 цифр + контрольная сумма Luhn) | 033948829 |
france.tax.vat | Французский VAT (FR + ключ mod-97 + корректный SIREN по Luhn) | FR82250352820 |
germany.tax.vat | Немецкий VAT / USt-IdNr (DE + 8 цифр, итеративная контрольная сумма mod-11/10) | DE641787309 |
greece.tax.vat | Греческий VAT / AFM (EL + 8-значная база + взвешенная контрольная сумма mod-11, затем mod-10) | EL413288496 |
guatemala.docs.cui | Гватемальский CUI (9-значный серийный номер + департамент 01–22 + муниципалитет 01–99, без контрольной цифры) | 2642014611803 |
guatemala.tax.nit | Гватемальский NIT (13-значное тело, та же форма, что у CUI, без контрольной цифры) | 4436278540509 |
honduras.docs.id | Гондурасское национальное удостоверение (департамент + муниципалитет + год + 5-значный серийный номер, без контрольной цифры) | 1801200568981 |
honduras.tax.rtn | Гондурасский RTN (форма гондурасского ID из 13 цифр + 1 завершающая цифра, без контрольной цифры) | 09281955957643 |
hungary.tax.vat | Венгерский VAT / ANUM (HU + 7-значная база + взвешенная контрольная сумма mod-10) | HU27025501 |
ireland.tax.vat | Ирландский VAT (IE + 7 цифр + 1 заглавная буква) | IE8448267L |
italy.tax.vat | Итальянский VAT / Partita IVA (IT + 10 цифр + контрольная сумма Luhn) | IT12124511358 |
latvia.tax.vat | Латвийский VAT / PVN (LV + 11 цифр, без контрольной суммы) | LV51009639397 |
lithuania.tax.vat | Литовский VAT / PVM (LT + 9 или 12 цифр, без контрольной суммы) | LT117600379 |
luxembourg.tax.vat | Люксембургский VAT / TVA (LU + 8 цифр, без контрольной суммы) | LU96561821 |
malta.tax.vat | Мальтийский VAT (MT + 8 цифр, без контрольной суммы) | MT07558770 |
mexico.tax.rfc | Мексиканский RFC (4 буквы для физлица или 3 буквы для организации + YYMMDD + 2 символа homoclave + контрольный символ mod-11) | TLT870426K69 |
mexico.tax.rfc_org | Мексиканский RFC для организации (3 буквы + YYMMDD + 2 символа homoclave + контрольный символ mod-11) | ESV970818ZA1 |
mexico.tax.rfc_person | Мексиканский RFC для физического лица (4 буквы + YYMMDD + 2 символа homoclave + контрольный символ mod-11) | QEHF820406TE1 |
netherlands.tax.vat | Голландский VAT / BTW (NL + 9 цифр + B + 2-значный филиал 01–99, без контрольной суммы) | NL430439452B03 |
nicaragua.docs.cedula | Никарагуанское удостоверение личности (муниципалитет + DDMMYY + 4-значный серийный номер + контрольная буква, без контрольной цифры) | 0051201752201B |
nicaragua.tax.ruc | Никарагуанский RUC (форма для физлица = форма cedula, без контрольной цифры) | 0041010962608F |
panama.docs.cedula | Панамское удостоверение личности, гражданская форма (провинция 1–13 + две группы 1–9999, без контрольной цифры) | 13187 |
panama.tax.ruc | Панамский RUC, форма для физлица = форма гражданского cedula | 1221339 |
paraguay.docs.ci | Парагвайское удостоверение личности (7-значный номер, без контрольной цифры) | 3254657 |
paraguay.tax.ruc | Парагвайский RUC (7-значное тело для физлица или 8-значное для организации + циклически взвешенная контрольная сумма mod-11) | 919747108 |
peru.docs.dni | Перуанский DNI (8-значный национальный идентификационный номер, без контрольной цифры) | 00124682 |
peru.tax.ruc | Перуанский RUC (2-значный префикс + 8-значное тело + взвешенная контрольная цифра mod-11) | 15278344671 |
poland.docs.pesel | Польский PESEL (дата с кодировкой века + серийный номер + цифра пола + взвешенная контрольная сумма mod-10) | 87212812168 |
poland.tax.nip | Польский NIP (9 цифр + взвешенная контрольная сумма mod-11; отбраковывает результат==10) | 6047995975 |
poland.tax.vat | Польский VAT (PL + NIP) | PL8126284465 |
portugal.tax.vat | Португальский VAT / NIF (PT + 8-значная база + взвешенная контрольная сумма mod-11) | PT909207518 |
romania.tax.vat | Румынский VAT / CIF (RO + от 2 до 10 цифр, без контрольной суммы) | RO98311815 |
russia.bank.account | Российский 20-значный банковский счёт с межполевым контрольным ключом mod-10 над хвостом БИК | 40702810299206214921 |
russia.bank.bik | Российский БИК (9 цифр: 04 + регион + РКЦ + участник; без контрольной суммы) | 047225281 |
russia.bank.correspondent_account | Российский корреспондентский счёт (20 цифр, включает хвост БИК, межполевой ключ mod-10) | 30101810080720184177 |
russia.docs.snils | Российский СНИЛС (9 цифр + двухзначная контрольная сумма mod-101) | 21804781661 |
russia.geo.postal | Почтовый индекс России (6 цифр, реальный диапазон 101000–692999) | 326151 |
russia.tax.inn_org | ИНН юридического лица (10 цифр, взвешенная контрольная сумма mod-11) | 6840437608 |
russia.tax.inn_person | ИНН физического лица (12 цифр, две взвешенные контрольные суммы mod-11) | 860084325267 |
russia.tax.kpp | Российский КПП (9 цифр: налоговая инспекция + код причины + серийный номер; без контрольной суммы) | 976244677 |
russia.tax.ogrn | ОГРН юридического лица (13 цифр, контрольная сумма mod-11 по всему числу) | 1691669019293 |
russia.tax.ogrnip | ОГРНИП индивидуального предпринимателя (15 цифр, контрольная сумма mod-13 по всему числу) | 361197456067674 |
slovakia.tax.vat | Словацкий VAT / IC DPH (SK + 10 цифр, без контрольной суммы) | SK2872567116 |
slovenia.tax.vat | Словенский VAT / ID za DDV (SI + 7-значная база + взвешенная контрольная сумма mod-11) | SI47349972 |
spain.docs.dni | Испанский DNI (8 цифр + контрольная буква mod-23) | 73742916V |
spain.docs.nie | Испанский NIE (X/Y/Z + 7 цифр + контрольная буква mod-23) | X3914405N |
spain.tax.cif | Испанский CIF (буква типа организации + 7 цифр + контрольная цифра в стиле Luhn) | A43753219 |
spain.tax.vat | Испанский VAT (ES + CIF) | ESH50310499 |
sweden.tax.vat | Шведский VAT / Momsnr (SE + 9-значная база + контрольная сумма Luhn + литерал "01") | SE977841031701 |
united_kingdom.docs.nino | Британский номер социального страхования (National Insurance number, 2 буквы + 6 цифр + суффикс A–D; без контрольной суммы) | QQ995347B |
uruguay.docs.ci | Уругвайское удостоверение личности (тело до 7 цифр + взвешенная контрольная цифра mod-10) | 01252600 |
uruguay.tax.rut | Уругвайский RUT (11-значное тело + взвешенная контрольная сумма mod-11) | 218883180011 |
usa.docs.ssn | Американский номер социального страхования (зона 001–899, кроме 666, группа 01–99, серийный номер 0001–9999) | 003060008 |
usa.finance.aba_routing | Американский маршрутный номер ABA (8 цифр + контрольная сумма mod-10 [3,7,1]) | 649946910 |
usa.tax.ein | Американский идентификационный номер работодателя (Employer Identification Number, корректный префикс IRS + 7 цифр; без контрольной суммы) | 678895040 |
usa.tax.itin | Американский ITIN (9 + 2 цифры + корректная группа + 4 цифры; без контрольной суммы) | 975531718 |
venezuela.docs.ci | Венесуэльское удостоверение личности (префикс V/E + тело из 7–8 цифр, без контрольной цифры) | E7831675 |
venezuela.tax.rif | Венесуэльский RIF (префикс V/E/J/P/G + 8-значное тело + взвешенная контрольная цифра mod-11) | V919623361 |
Как устроены контрольные цифры
Логика контрольной суммы не спрятана в скомпилированном коде — каждый пакет вычисляет свою
контрольную цифру декларативно тегом <compute>, прямо рядом с
данными. Если страна меняет правила, вы правите текстовый файл пакета, а не движок. Тела
этих идентификаторов набираются генераторами regex и
number, после чего <compute> дописывает контрольную
цифру. О том, как устроен пакет, см. Пакеты данных, а как
добавить свой — Свой пакет данных.
См. также
- генератор
template— обзорная экскурсия плюс семейства «человек», «дата» и локализация. - Справочник генераторов — все значения
typeдля<gen>. - Справочник
<compute>— как определяются контрольные цифры. - Пакеты данных — где живут данные идентификаторов и как добавить свои.