Ку-Ку Код

ST00012 в QR-коде: что это за строка и как по ней оплатить

Поля платежной строки названы своими именами, и по ним читаются получатель, счет и сумма. Перевод по такому коду создает приложение банка, а обычная камера только показывает текст.

Сценарии для малого бизнеса 7 мин на чтение 19.09.2026

Если навести камеру телефона на QR-код с квитанции, вместо перевода на экране появится длинная строка, которая начинается с ST00012. Это платежные реквизиты в формате ГОСТ Р 56042-2014. Приложение банка читает такую строку и заполняет по ней форму перевода.

Обычная камера и сканеры кодов показывают содержимое текстом, но платеж не создают. Заплатить можно с того же телефона, только сканировать код надо из приложения банка.

Если счета выставляете вы, по этой же строке видно, что попало в код и есть ли в нем ошибка. Стандарт задает имена полей, их порядок и длины.

Как оплатить по такому коду

Откройте приложение своего банка и найдите в нем пункт оплаты по QR-коду. Наведите камеру из приложения на код с квитанции, и вы увидите форму перевода с заполненными полями.

Сверьте получателя, счет и сумму с квитанцией до того, как подтвердите платеж. Если что-то разошлось, платеж не отправляйте. Суммы в форме может не оказаться, тогда впишите ее сами.

Строку из сканера не копируйте в поиск. В ней стоят счет и ИНН получателя, а в квитанции ЖКХ к ним добавляются ваши фамилия, адрес и лицевой счет.

Код на мятой или выцветшей квитанции приложение банка может и не увидеть. Причины такого отказа разобраны в статье почему QR-код не сканируется.

Что значит ST00012

Служебный блок занимает первые 8 байт строки, то есть знаки ST00012 и вертикальную черту за ними. Дальше идут поля. Каждое поле записано как имя, знак равенства и значение.

В блоке 4 части. Сначала идет ST, идентификатор формата, потом 0001, номер версии. Седьмым знаком стоит цифра кодировки, а восьмым идет разделитель полей. Поля по умолчанию разделяет вертикальная черта, так написано в стандарте.

Кодировку в этом блоке задает одна цифра:

  • 1 это Windows-1251;
  • 2 это UTF-8;
  • 3 это KOI8-R.

Поэтому ST00011, ST00012 и ST00013 это одна версия формата в разных кодировках. Для оплаты разницы нет. Приложение банка берет кодировку из этой цифры.

Из-за той же цифры в сканере появляются нечитаемые знаки. Если сканер показал строку с цифрой 1 как UTF-8, русские буквы рассыпаются, а латиница и цифры остаются. Счет и сумму в такой строке разобрать можно, а название получателя уже не прочитать.

Расшифровка полей строки

Вот строка целиком, реквизиты в ней вымышленные:

ST00012|Name=ТСЖ "Ромашка"|PersonalAcc=40702810138250123017|BankName=АО "Банк"|BIC=049999999|CorrespAcc=30101810900000000999|PayeeINN=7799999999|Sum=150000|Purpose=Взнос за сентябрь, кв. 12

служебный блок, 8 байт ST00012| 5 обязательных полей, порядок задан стандартом Name=ТСЖ "Ромашка"|PersonalAcc=40702810138250123017| BankName=АО "Банк"|BIC=049999999| CorrespAcc=30101810900000000999| дополнительные поля, порядок не закреплен PayeeINN=7799999999|Sum=150000| Purpose=Взнос за сентябрь, кв. 12 сумма тут в копейках
По именам полей видно, где в строке кончаются реквизиты банка и начинается то, что касается конкретного платежа.

Первые 5 полей стандарт требует ставить в одном и том же порядке. Дальше идут дополнительные поля. В стандарте их больше 40, а порядок для них стандарт только рекомендует. Регистр букв в именах неважен, и name= стандарт считает тем же полем, что Name=. Длины в таблице ниже стоят у обязательной части и у суммы.

Имя в строкеЧто в немПример
Nameнаименование получателя платежа, от 1 до 160 знаковТСЖ "Ромашка"
PersonalAccномер счета получателя, строго 20 цифр40702810138250123017
BankNameнаименование банка получателя, от 1 до 45 знаковАО "Банк"
BICБИК, банковский идентификационный код, строго 9 цифр049999999
CorrespAccкорреспондентский счет банка получателя, до 20 цифр30101810900000000999
PayeeINNИНН получателя7799999999
Sumсумма платежа в копейках, до 18 знаков150000
Purposeназначение платежаВзнос за сентябрь, кв. 12
PersAccлицевой счет плательщика12
PaymPeriodпериод оплаты09.2026
LastNameфамилия плательщикаИванов

Трех последних полей в примере нет. Они встречаются в квитанциях ЖКХ. По длинам удобно проверять чужую строку, потому что в PersonalAcc должно стоять ровно 20 цифр, а в BIC ровно 9. Если счет вышел короче, ищите ошибку в программе, которая собирала строку.

Сумму стандарт хранит в копейках, без запятой и пробелов. Sum=150000 это 1500 рублей ровно. Последние 2 цифры это копейки, поэтому Sum=98050 читается как 980 рублей 50 копеек. Поле необязательное. В строке без Sum сумму вводит сам плательщик.

Как собрать такую строку самому

Откройте на главной вкладку «Оплата». На первом шаге нужны реквизиты получателя. Если они уже стоят в коде прошлой квитанции, нажмите над полями «загрузить фото QR с квитанции», и форма прочитает код и разложит строку по полям. Строку с заголовком ST00011 форма читает так же. Само фото на сервер не уходит. Затем нажмите «Дальше: плательщики».

На втором шаге заполните поля плательщика и нажмите «+ Добавить в список». Готовый список вставляется разом: нажмите «одним полем» справа над полями, и каждый плательщик займет отдельную строку вида сумма;лицевой счет;ФИО;период;подпись, например 1500;12;Иванов Петр Сергеевич;03.2026. Сумму пишите в рублях, а в копейки ее пересчитает форма. В код сервис пишет заголовок ST00012, то есть кодировку UTF-8, а ST00011 он не собирает.

Печатать коды можно на своем бланке или взять готовый, бланк ПД-4 с платежным кодом. Про список, где у каждого плательщика своя сумма, есть статья квитанции с QR-кодом на список плательщиков.

Если платежная строка у вас уже готова, ее можно вставить целиком. Нажмите «у меня готовая строка ST00012» над полями реквизитов и вставьте ее: реквизиты форма заполнит из строки сама. Готовую строку можно поставить и прямо в список плательщиков, рядом с обычными строками.

Платежная ссылка СБП устроена иначе, и такой код выдает банк. Про разницу есть статья QR-код для оплаты. Остальные платежные коды и таблички собраны в базе знаний.

FAQ

Что такое ST00011 Name в квитанции?

Это начало платежной строки. ST00011 означает кодировку Windows-1251, а Name это имя первого поля, в нем стоит наименование получателя. Приложение банка разбирает такую строку так же, как ST00012.

Почему сумма в коде в 100 раз больше, чем в квитанции?

Потому что в строке стоит сумма в копейках. Число 643 к этому пересчету отношения не имеет. В тексте ГОСТ Р 56042-2014 его нет, это цифровой код российского рубля в Общероссийском классификаторе валют.

Можно ли оплатить, если вместо названия получателя нечитаемые знаки?

Можно. Знаки портит сканер, который прочитал строку не в той кодировке, а приложение банка берет кодировку из служебного блока. Цифры от кодировки не зависят, поэтому счет и БИК в такой строке читаются верно.

Безопасно ли вставлять эту строку в поиск?

Небезопасно. Вместе со строкой в поиск уедут реквизиты получателя и ваш лицевой счет. Чтобы понять, кому уйдут деньги, хватит поля Name, его видно прямо на экране сканера.

Обязательно ли поле Sum?

Нет, оно дополнительное. Без Sum один код годится всем плательщикам, и каждый вводит свою сумму в приложении банка. Такие коды печатают на табличке у кассы, а в квитанции сумма у каждого своя.

Следующий шаг

Отсканируйте код с квитанции из приложения банка и посмотрите на форму перевода. Получатель и последние цифры счета в ней должны сойтись с теми, что напечатаны на квитанции.

Соберите QR-код для оплаты по реквизитам. Реквизиты получателя вы вводите один раз, а строку ST00012 форма соберет сама. Регистрация не нужна.

Соберите свой лист с QR-кодами

Вставьте список ссылок или загрузите файл, а мы разложим коды с подписями по листам A4 и отдадим PDF, SVG или PNG.

Открыть генератор
бесплатно, без регистрации