Документ «Расходный кассовый ордер (РКО)»

РКО фиксирует факт выдачи наличных из кассы организации: оплату поставщику, выдачу в подотчёт, выплату зарплаты, возврат покупателю, инкассацию и взнос в банк. Формирует бухгалтерские и налоговые проводки, движения по взаиморасчётам и статусам счетов, печатается по форме КО-2.

Бухгалтерия для Казахстана, ред. 3.0 · v3.0.72.1 · обновлено 2026-06-04

🎯 Что это и зачем

Любая выдача наличных денег из кассы должна быть оформлена документом первичного учёта — именно эту роль играет расходный кассовый ордер. Один документ закрывает множество сценариев: заплатить поставщику наличными, выдать сотруднику деньги в подотчёт или на командировку, выплатить зарплату по ведомости, вернуть деньги покупателю, сдать выручку в банк (инкассация / взнос наличными).

Что делает РКО при проведении: - списывает наличные со счёта кассы (как правило, счёт 1010); - формирует проводку в дебет соответствующего счёта (расчёты с поставщиком, подотчётным лицом, работником и т. п.); - двигает взаиморасчёты с контрагентами, работниками, получателями по исполнительным листам; - закрывает статус оплаты связанных счётов на оплату; - готовит данные для печатной формы КО-2 и кассовой книги.

Кто работает: кассиры и бухгалтеры, ежедневно, при каждом факте выдачи наличности. Создаётся как с нуля, так и «на основании» — из счёта на оплату поставщика, поступления товаров, платёжной ведомости, возврата товаров от покупателя и других документов.

🧭 Где найти в программе

Раздел «Банк и касса» → пункт «Расходные кассовые ордера» (документы кассы также доступны через журнал «Кассовые документы», общий с ПКО). Откроется журнал; новый документ создаём кнопкой «Создать».

📷 СКРИН 01
СКРИН 01 — раздел «Банк и касса», открытый журнал «Расходные кассовые ордера» (или журнал «Кассовые документы»). (AccountingKZ30 во Fresh)
⚠️ Пробел в навигационной карте. В файле navigation-map.json маршрут для Документ.РасходныйКассовыйОрдер отсутствует (есть ПлатежноеПоручениеИсходящее, АвансовыйОтчет и др., но РКО не описан). Раздел «Банк и касса» определён по подсистеме объекта и по соседним кассовым документам; пункт меню в конкретной поставке Fresh может называться «Расходные кассовые ордера» или открываться из журнала «Кассовые документы». Точное имя пункта нужно сверить в интерфейсе и дополнить карту — см. [issues].

👤 Часть 1. Для пользователя

Идём по шагам: вид операции → шапка → детализация → проведение → печать. Вид операции выбирается первым — от него зависит, какие поля и табличные части показывает форма.

Урок 1. Оплата поставщику наличными

Когда: рассчитываемся с поставщиком за товары или услуги наличными из кассы.

Шаг 1. Создаём документ и выбираем вид операции

«Создать» → в поле «Вид операции» выбираем «Оплата поставщику». От вида операции зависит набор видимых полей и табличных частей.

📷 СКРИН 02
СКРИН 02 — новый РКО, раскрытый список «Вид операции».

Шаг 2. Заполняем шапку

📷 СКРИН 03
СКРИН 03 — заполненная шапка документа «Оплата поставщику».

Шаг 3. Заполняем «Расшифровку платежа»

В табличной части «Расшифровка платежа» добавляем строку: - Договор — договор с контрагентом (подтянет валюту и курс взаиморасчётов); - Счёт на оплату — если платим по конкретному счёту поставщика (тогда после проведения счёт получит статус «Оплачен»); - Сумма платежа — сумма по строке; - Счета учёта расчётов (БУ/НУ) — подставятся автоматически, проверяем.

📷 СКРИН 04
СКРИН 04 — табличная часть «Расшифровка платежа».

Шаг 4. Проверяем сумму и проводим

Сумма документа складывается из строк расшифровки — она должна совпасть. Нажимаем «Провести» или «Записать и закрыть». Проводки смотрим кнопкой Дт/Кт.

📷 СКРИН 05
СКРИН 05 — окно «Движения документа: Дт/Кт» проведённого РКО.
💡 Подсказка. Чтобы счета расчётов и валюта подставлялись сами — заполните счёт учёта и валюту в карточке договора с поставщиком.
⚠️ Контроль остатка кассы. Если у пользователя нет права «проводить без контроля остатков», система не проведёт РКО, когда в кассе недостаточно денег: появится сообщение вида «На счёте … недостаточно средств… Сумма операции …, остаток счёта …». Это поведение зашито в проведение (см. Часть 2).

Урок 2. Выдача денег в подотчёт

Когда: выдаём сотруднику наличные на командировку или хозяйственные расходы.

  1. Вид операции — «Выдача денежных средств подотчётнику».
  2. Контрагент — подотчётное лицо (физлицо).
  3. Заполняем табличную часть «Выдача в подотчёт»: по строкам указываем вид задолженности подотчётного лица (командировочные, хозрасходы и т. д.), статью движения денежных средств и сумму платежа.
  4. Проверяем: итог по таблице «Выдача в подотчёт» должен совпасть с суммой документа — иначе документ не проведётся.
📷 СКРИН 06
СКРИН 06 — вид операции «Выдача в подотчёт», заполненная табличная часть.
💡 Контрагент не обязателен для прочих списаний и инкассации, но обязателен для выдачи в подотчёт и оплаты поставщику.

Урок 3. Выплата зарплаты по ведомости

Когда: касса выдаёт зарплату по ранее сформированной платёжной ведомости.

  1. Удобнее всего создавать РКО «на основании» документа «Зарплата к выплате организаций» (ведомости). Тогда вид операции, контрагент (при выплате одному работнику), ссылка на ведомость и суммы заполнятся автоматически.
  2. Вид операции — «Выплата заработной платы по ведомостям» (на группу работников) либо «Выплата заработной платы работнику» (одному физлицу).
  3. Заполняется табличная часть «Выплата заработной платы» (ведомость + сумма к выплате).
⚠️ Только в валюте регламентированного учёта. Выплата зарплаты (и по ведомостям, и работнику) допускается только в тенге. Если валюта документа другая, появится сообщение «Выплата заработной платы может осуществляться только в валюте "KZT"».
💡 Система проверит ведомость: предназначена ли она для выплаты «Через кассу», нет ли невыплаченных строк, не включена ли уже эта ведомость в другой РКО, та ли организация, и совпадает ли сумма документа с суммой по ведомости.

Урок 4. Взнос наличными в банк и инкассация

Когда: сдаём наличную выручку из кассы на расчётный счёт.

  1. Вид операции — «Взнос наличными в банк» или «Инкассация денежных средств».
  2. Для взноса в банк указываем Счёт организации (банковский счёт, куда поступят деньги) — для этого вида операции он обязателен.
  3. Контрагент для этих операций не требуется.
  4. Указываем статью движения денежных средств и сумму документа.
📷 СКРИН 07
СКРИН 07 — вид операции «Взнос наличными в банк», поле «Счёт организации».

Урок 5. Прочие сценарии и печать

Печать. Кнопка печати формирует расходный кассовый ордер по форме КО-2 (макет ПФ_MXL_КО2).

💡 Создание «на основании». РКО можно создать из счёта на оплату поставщика, поступления товаров/услуг, поступления доп. расходов, поступления НМА, поступления из переработки, расчёта налогов при поступлении, возврата товаров от покупателя, приходного кассового ордера, ведомости прочих доходов, документа исполнительных листов. Реквизиты получателя, договор, сумма и расшифровка подтянутся автоматически.

🛠 Часть 2. Для программиста

Источник истины: реальный код релиза 3.0.72.1 (Documents/РасходныйКассовыйОрдер/Ext/ObjectModule.bsl, 734 строки) и метаданные документа (Documents/РасходныйКассовыйОрдер.xml). Разбор objects/ и business-logic/ использован как вторичный — расхождения помечены ниже.

Структура объекта

Ключевые реквизиты шапки: ВидОперации (Перечисление.ВидыОперацийРКО) — определяет всю логику формы и проведения; Организация, Касса, ВалютаДокумента, СуммаДокумента, Контрагент, СчетКасса (кредит проводки), СчетУчетаРасчетовСКонтрагентомБУ/СчетУчетаРасчетовСКонтрагентомНУ, СчетОрганизации (банковский счёт для взноса в банк), ВидУчетаНУ, УчитыватьКПН, РучнаяКорректировка, ПлатежнаяВедомость, ДокументОснование, СтруктурноеПодразделениеОтправитель/СтруктурноеПодразделениеПолучатель, НомерЧекаККМ, субконто СубконтоДтБУ1..3 / СубконтоДтНУ1..3.

Табличные части (4, подтверждено метаданными):

Табличная часть Когда используется Ключевые поля
РасшифровкаПлатежа оплата поставщику, возврат покупателю, расчёты с контрагентами ДоговорКонтрагента, СуммаПлатежа, СуммаВзаиморасчетов, КурсВзаиморасчетов, КратностьВзаиморасчетов, СчетНаОплату, Сделка, СчетУчетаРасчетовСКонтрагентомБУ/НУ, СтавкаНДС, СуммаНДС
ВыдачаВПодотчет выдача денежных средств подотчётнику ВидЗадолженностиПодотчетногоЛица, СтатьяДвиженияДенежныхСредств, СуммаПлатежа
ВыплатаЗаработнойПлаты выплата зарплаты по ведомостям Ведомость, СуммаКВыплате
ВыплатаПоИсполнительнымЛистам выплата по исполнительным листам Документ, СуммаКВыплате

Виды операций (Перечисление.ВидыОперацийРКО) — РЕАЛЬНЫЕ значения из кода: ОплатаПоставщику, ВыдачаДенежныхСредствПодотчетнику, ВыплатаЗаработнойПлатыПоВедомостям, ВыплатаЗаработнойПлатыРаботнику, ВыплатаПоИсполнительнымЛистам, ВозвратДенежныхСредствПокупателю, ВзносНаличнымиВБанк, ИнкассацияДенежныхСредств, РасходДенежныхСредствПрочее, РасчетыПоДоходуОтРазовыхВыплатСКонтрагентами.

⚠️ Несостыковка [KZ30-RKO-0001]. В objects/Документ_РасходныйКассовыйОрдер.md перечислены несуществующие имена видов операций в стиле 1С:Бухгалтерии РФ — ПеречислениеВПодотчет, ПеречислениеЗарплаты, ВзносВБанк, ОплатаСтруктурномуПодразделению, ПрочееСписание, ВозвратПокупателю. В реальной конфигурации AccountingKZ30 этих значений нет; используйте имена из кода (выше). Источник истины — ObjectModule.bsl.

Жизненный цикл (обработчики ObjectModule)

Обработчик Что делает
ЗаполнитьНаборыЗначенийДоступа (экспорт, RLS) Заполняет наборы значений доступа по организации/подразделению; для выдачи подотчётнику и выплаты зарплаты работнику добавляет физлицо-контрагента (через РасчетЗарплатыСервер)
ОбработкаЗаполнения Заполняет по документу-основанию (ЗаполнитьПоДокументуОснованию) либо по структуре; вызывает УправлениеДенежнымиСредствамиСервер.ЗаполнитьРеквизитыРасчетногоДокумента
ОбработкаПроверкиЗаполнения Главная валидация: формирует список непроверяемых реквизитов по виду операции, сверяет суммы табличных частей, валюту, ИИН/БИН/РНН, ведомости; проверяет счета через СчетаУчетаВДокументах
ПередЗаписью Чистит «лишние» табличные части по виду операции, синхронизирует договор/счета в расшифровке, гасит НДС, заполняет ответственного, при отмене проведения оплаты поставщику снимает статус оплаты счетов
ПриКопировании Сбрасывает НомерЧекаККМ = 0, обнуляет суммы расшифровки для видов без расшифровки, перезаполняет реквизиты расчётного документа
ОбработкаПроведения Подготавливает параметры, проверяет остаток ДС, формирует движения по 9 регистрам через профильные общие модули

Как формируется проведение — реальный код (3.0.72.1)

Главное: проводки не «зашиты» в документ. ОбработкаПроведения собирает таблицы (ПодготовитьПараметрыПроведения) и делегирует формирование движений профильным общим модулям учёта (УправлениеВзаиморасчетамиСервер, УправлениеДенежнымиСредствамиСервер, УчетДоходовРасходов, РасчетЗарплатыСервер, СтатусыДокументов, ПроцедурыНалоговогоУчета). Конкретные счета Дт/Кт определяются учётной политикой и настройками счетов, а не самим документом.

Источник: ObjectModule.bsl, процедура ОбработкаПроведения (стр. 390), сокращённо по ключевым вызовам:

Процедура ОбработкаПроведения(Отказ, РежимПроведения)

    // ПОДГОТОВКА ПРОВЕДЕНИЯ ПО ДАННЫМ ДОКУМЕНТА
    ПроведениеСервер.ПодготовитьНаборыЗаписейКПроведению(ЭтотОбъект, Ложь);
    Если РучнаяКорректировка Тогда
        Возврат;                                   // ручное управление движениями
    КонецЕсли;

    ПараметрыПроведения = Документы.РасходныйКассовыйОрдер.ПодготовитьПараметрыПроведения(Ссылка, Отказ);
    Если Отказ Тогда
        Возврат;
    КонецЕсли;

    // Контроль достаточности средств на счёте кассы (если нет права без контроля остатков)
    ПроверитьДостаточностьОстатковДС(ПараметрыПроведения.Реквизиты[0],
        ПараметрыПроведения.ТаблицаКонтрольОстатков, Отказ);

    // ПОДГОТОВКА ПО ДАННЫМ ИБ
    ТаблицаВзаиморасчеты = УправлениеВзаиморасчетамиСервер.ПодготовитьТаблицуВзаиморасчетовПогашениеЗадолженности(
        ПараметрыПроведения.РасшифровкаПлатежа, ПараметрыПроведения.Реквизиты, Отказ);

    // ФОРМИРОВАНИЕ ДВИЖЕНИЙ — каждый модуль пишет «свой» учёт:
    УправлениеВзаиморасчетамиСервер.СформироватьДвиженияПогашениеЗадолженности(ТаблицаВзаиморасчеты,
        ПараметрыПроведения.Реквизиты, Движения, Отказ);

    УправлениеДенежнымиСредствамиСервер.СформироватьДвиженияПрочееСписание(
        ПараметрыПроведения.РеквизитыПрочее, Движения, Отказ);

    УправлениеДенежнымиСредствамиСервер.СформироватьДвиженияПеречислениеВПодотчет(
        ПараметрыПроведения.ТаблицаПеречислениеВПодотчет,
        ПараметрыПроведения.РеквизитыПеречислениеВПодотчет, Движения, Отказ);

    // Переоценка валютных остатков — после остальных проводок
    ТаблицаПереоценка = УчетДоходовРасходов.ПодготовитьТаблицуПереоценкаВалютныхОстатковПоПроводкамДокумента(
        ПараметрыПроведения.Реквизиты, Движения, Отказ);
    УчетДоходовРасходов.СформироватьДвиженияПереоценкаВалютныхОстатков(ТаблицаПереоценка,
        ПараметрыПроведения.Реквизиты, Движения, Отказ);

    // Зарплата и исполнительные листы (выплата через кассу)
    РасчетЗарплатыСервер.СформироватьДвиженияПеречислениеЗП(ПараметрыПроведения.Реквизиты,
        ПараметрыПроведения.ТаблицаПеречислениеЗП, Движения,
        Перечисления.СпособыВыплатыЗарплаты.ЧерезКассу, Отказ);
    РасчетЗарплатыСервер.СформироватьДвиженияПеречислениеПоИЛ(ПараметрыПроведения.Реквизиты,
        ПараметрыПроведения.ТаблицаПеречислениеПоИЛ, Движения, Отказ);

    // Статусы оплаты счетов
    СтатусыДокументов.СформироватьДвиженияОплатаСчетов(
        ПараметрыПроведения.ОплатаСчетов, ПараметрыПроведения.Реквизиты, Движения, Отказ);

    // Постоянные разницы в НУ
    ПроцедурыНалоговогоУчета.ОтразитьПостоянныеРазницыВНУ(ПараметрыПроведения.Реквизиты, Движения, Отказ);

КонецПроцедуры

Кто что формирует (вызов → смысл):

Вызов в коде Какой учёт пишет
УправлениеВзаиморасчетамиСервер.СформироватьДвиженияПогашениеЗадолженности погашение задолженности перед контрагентами/физлицами (оплата поставщику, возврат покупателю)
УправлениеДенежнымиСредствамиСервер.СформироватьДвиженияПрочееСписание прочее списание ДС, инкассация, взнос в банк
УправлениеДенежнымиСредствамиСервер.СформироватьДвиженияПеречислениеВПодотчет выдача под отчёт (задолженность работника)
УчетДоходовРасходов.Сформировать…ПереоценкаВалютныхОстатков курсовые разницы по валютным остаткам
РасчетЗарплатыСервер.СформироватьДвиженияПеречислениеЗП выплата зарплаты через кассу
РасчетЗарплатыСервер.СформироватьДвиженияПеречислениеПоИЛ выплаты по исполнительным листам
РасчетЗарплатыСервер.СформироватьДвиженияРасчетыСКонтрагентамиФизЛицами разовые выплаты контрагентам-физлицам (только если нет обмена с ЗУП 3.1)
СтатусыДокументов.СформироватьДвиженияОплатаСчетов / …СтатусовДокументов статус оплаты связанных счётов на оплату
ПроцедурыНалоговогоУчета.ОтразитьПостоянныеРазницыВНУ постоянные разницы в налоговом учёте

Важные детали из кода: - РучнаяКорректировка = Истина → авто-проведение пропускается (Возврат сразу после подготовки наборов) — движения заполняет пользователь. - Контроль остатка кассы выполняется до формирования движений: ПроверитьДостаточностьОстатковДС (стр. 638) сравнивает СуммаДокумента с остатком по счёту кассы и, если НеобходимКонтрольОстатковДС, отказывает в проведении с локализованным сообщением. - Групповое перепроведение: если в ДополнительныеСвойства стоит ГрупповоеПерепроведение = Истина, движения статусов счётов на оплату пропускаются (оптимизация массового перепроведения). - Порядок строгий: взаиморасчёты → прочее списание → подотчёт → переоценка валюты → зарплата/ИЛ → статусы счётов → постоянные разницы НУ.

⚠️ Несостыковка [KZ30-RKO-0002]. Авто-разбор в objects/ даёт «плоские» проводки (Дт 1251 Кт касса, Дт 1010 Кт касса и т. п.). Реальное ОбработкаПроведения счета напрямую не задаёт — их вычисляют модули Учет/Управление по учётной политике и счетам учёта. «Плоские» Дт/Кт держите как иллюстрацию; точные проводки сверяйте отчётом «Дт/Кт» на проведённом документе. См. [issues].

Движения по регистрам (подтверждено метаданными)

Документ зарегистрирован как регистратор для 9 регистров (Documents/РасходныйКассовыйОрдер.xml, секция RegisterRecords):

Регистр Тип Что пишет
Типовой Бухгалтерия (БУ) Бухгалтерские проводки (Дт счёта расчётов/банка/подотчёта Кт счёта кассы)
Налоговый Бухгалтерия (НУ) Проводки налогового учёта (если ведётся КПН/временные разницы)
ВзаиморасчетыОрганизацийСКонтрагентамиФизЛицами Накопление Погашение/изменение задолженности по контрагентам (оплата, возврат)
ВзаиморасчетыСРаботникамиОрганизаций Накопление Задолженность работников (выдача в подотчёт)
ВзаиморасчетыОрганизацийСПолучателямиИЛ Накопление Выплаты получателям по исполнительным листам
ВзаиморасчетыСДепонентамиОрганизаций Накопление Депонированная зарплата
ОплатаСчетов Накопление Факт оплаты счёта на оплату поставщика
ВыплаченныеДоходыРаботникамОрганизацийНУ Накопление Налоговый учёт выплаченных доходов работникам
СведенияОВыплатахРаботникамОрганизацийПоПлатежнымВедомостям Сведения Факт выплаты по платёжной ведомости
💡 Это документ, формирующий проводки. В отличие от чисто «статусных» документов, РКО пишет и бухгалтерские (Типовой/Налоговый), и накопительные регистры. Но сам набор счетов — за модулями учёта (см. выше).

Валидации (ОбработкаПроверкиЗаполнения, стр. 71)

Логика построена «от обратного»: сначала формируется МассивНепроверяемыхРеквизитов в зависимости от вида операции, затем ОбщегоНазначения.УдалитьНепроверяемыеРеквизитыИзМассива снимает проверку с неактуальных полей. Ключевые правила:

Зависимости (общие модули)

УправлениеДенежнымиСредствамиСервер (реквизиты расчётного документа, прочее списание, подотчёт, контроль кредитов), УправлениеВзаиморасчетамиСервер (погашение задолженности, проверка возможности проведения в БУ/НУ), РасчетЗарплатыСервер (ЗП, ИЛ, расчёты с физлицами, наборы доступа), СтатусыДокументов (оплата счётов), СчетаУчетаВДокументах (заполнение и проверка счетов), УчетДоходовРасходов (переоценка валюты), ПроцедурыНалоговогоУчета / УчетнаяПолитикаСервер (НУ, плательщик налога на прибыль), РаботаСДоговорамиКонтрагентов, ОбщегоНазначения[БК], ОбменДаннымиСервер (проверка обмена с ЗУП 3.1).

💼 Партнёру / внедренцу. «Проводки не те» или «не та корреспонденция» → причина почти всегда в учётной политике, счетах учёта и виде операции, а не в самом документе. РКО — оркестратор; вся логика счетов в СчетаУчетаВДокументах, Управление…Сервер, РасчетЗарплатыСервер, УчетнаяПолитикаСервер. Частые обращения клиентов: (1) «не проводится — недостаточно средств в кассе» → дайте право проведения без контроля остатков или проверьте реальный остаток; (2) «зарплату нельзя провести в валюте» → так и задумано, ЗП только в тенге; (3) «при копировании пропал чек ККМ» → это штатно, НомерЧекаККМ обнуляется в ПриКопировании; (4) «ведомость уже включена в другой РКО» → ищите конфликтный документ из текста сообщения.
🧩 Заметки для разработчика.
  1. Вид операции — корень всего. Видимость табличных частей, набор обязательных реквизитов, формируемые движения — всё ветвится по ВидОперации. Любая доработка начинается с него.
  2. ЕстьРасшифровкаПлатежа(ВидОперации) — менеджерская функция-предикат, по которой и в проверке, и в ПередЗаписью/ПриКопировании решается, работать ли с табличной частью «Расшифровка платежа». Не дублируйте список видов руками — зовите её.
  3. РучнаяКорректировка = Истина полностью отключает авто-проведение (ранний Возврат) — движения заполняются пользователем; учитывайте при доработке проведения.
  4. Контроль остатков управляется флагом НеобходимКонтрольОстатковДС в реквизитах проведения и правом пользователя; ошибка выводится через ОбщегоНазначенияБККлиентСервер.СообщитьОбОшибке.
  5. ГрупповоеПерепроведение в ДополнительныеСвойства меняет ветку формирования статусов счётов — не ломайте её при массовых операциях.
  6. Печать — макет ПФ_MXL_КО2 (форма КО-2), команда печати регистрируется в ManagerModule (ДобавитьКомандыПечати), функция ПечатьРКО. Сам ManagerModule.bsl большой (~228 КБ) — открывайте только при доработке печати/заполнения.

🔗 Связанные разделы

🆕 Что нового

Версия Изменение Тип
3.0.72.1 Первичное описание (на релизе 3.0.72.1) 🆕