Как реализовать учет подарочных сертификатов в 1С:Управление торговлей 10.3?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

Организация учета подарочных сертификатов (ПС) в старых редакциях программных продуктов 1С, таких как «1С:Управление торговлей 10.3», всегда вызывала множество вопросов у разработчиков и бизнес-аналитиков. В отличие от современных конфигураций (например, «Управление торговлей 11» или «1С:Розница»), в УТ 10.3 отсутствует встроенная специализированная подсистема для работы с подарочными сертификатами.

Тем не менее, бизнес-требования к автоматизации розницы и опта диктуют необходимость ведения такого учета. Нам нужно уметь продавать сертификаты, принимать их в качестве оплаты (как частично, так и полностью), контролировать их остатки и сроки действия, а также корректно передавать эти данные в бухгалтерскую базу данных. Давайте подробно разберем, какими путями можно решить эту задачу, проанализируем сильные и слабые стороны каждого подхода и выберем оптимальный вариант для вашей компании.

Законодательный аспект: почему нельзя продавать сертификат как обычный товар

Прежде чем переходить к технической реализации в коде, давайте затронем очень важную тему, связанную с требованиями законодательства (в частности, 54-ФЗ). С точки зрения ФНС и гражданского законодательства РФ, покупка подарочного сертификата не является покупкой товара. Это внесение аванса (предоплаты) в счет будущей поставки товаров или услуг.

Если мы оформляем продажу сертификата как продажу обычной номенклатурной позиции, кассовый аппарат пробьет в чеке признак предмета расчета ТОВАР. Когда покупатель вернется, чтобы отоварить сертификат, нам придется пробивать второй чек — на реальный товар, который он забирает. В этот момент возникает завышение налогооблагаемой базы и двойное отражение выручки по кассе. Чтобы этого избежать, касса должна работать по двухэтапной схеме:

  1. Продажа сертификата (получение аванса): в чеке должен фигурировать признак способа расчета АВАНС или ПРЕДОПЛАТА.
  2. Отоваривание сертификата (зачет аванса): в чеке пробиваются реальные товары с признаком расчета ПОЛНЫЙ РАСЧЕТ, а в качестве типа оплаты указывается ЗАЧЕТ АВАНСА (предоплата).

Держите это в уме, когда мы будем рассматривать варианты технической реализации.

Решение №1. Использование механизма взаиморасчетов (без доработки конфигурации)

Рассмотрим очень элегантный и изобретательный способ, который позволяет вести полноценный учет авансов по подарочным картам, контролировать их баланс и не изменять при этом типовой код конфигурации. Этот метод основан на стандартном механизме ведения взаиморасчетов по договорам контрагентов.

Разберем этот алгоритм по шагам:

  1. Создадим в справочнике Контрагенты одного общего служебного контрагента с наименованием, например, «Держатели подарочных сертификатов».
  2. Для каждого проданного или планируемого к продаже сертификата мы будем создавать отдельный элемент в подчиненном справочнике Договоры контрагентов. Наименованием договора будет служить уникальный номер (или штрихкод) нашего сертификата (например, «ПС №100254»).
  3. В карточке этого договора обязательно установим флаг Контролировать сумму задолженности и укажем значение лимита равным 0. Это критически важно для контроля перерасхода средств.
  4. Активация (продажа) сертификата: когда клиент приобретает сертификат, мы оформляем поступление денежных средств. В оптовой торговле это может быть документ Приходный кассовый ордер (или Поступление безналичных денежных средств), где в качестве контрагента указывается «Держатели подарочных сертификатов», а в качестве договора — конкретный номер сертификата. Таким образом, в системе регистрируется аванс по этому договору.
  5. Оплата товаров сертификатом: при продаже товаров клиенту мы создаем документ Реализация товаров и услуг. В шапке документа указываем нашего служебного контрагента и договор-сертификат. Если на данном договоре числится аванс (сертификат был предварительно активирован), программа позволит провести документ. За счет установленного контроля лимита задолженности система автоматически заблокирует проведение продажи, если номинал сертификата исчерпан или сертификат вообще не активировался в системе.

Этот способ идеален для оптовой торговли и средних розничных точек, где оформление продаж происходит через документы реализации, а не через интерфейс кассира ЧекККМ. Данные по авансам без проблем выгружаются в конфигурацию «1С:Бухгалтерия» на счет 62.02.

Решение №2. Схема «Продажа и Возврат товара» (упрощенный вариант)

Если в вашей розничной точке продажи ведутся исключительно в режиме онлайн-кассы через документ ЧекККМ, а программиста для доработки конфигурации под рукой нет, можно воспользоваться схемой «товарооборота».

Проанализируем эту схему:

  1. В справочнике Номенклатура создаем позиции вида «Подарочный сертификат 1000 рублей», «Подарочный сертификат 5000 рублей» с соответствующими розничными ценами.
  2. Приобретение сертификата покупателем оформляется как обычная продажа товара через ЧекККМ. Сертификат уходит со склада компании, деньги поступают в кассу.
  3. Когда покупатель приходит отоваривать этот сертификат, кассир делает два действия:
    • Оформляет документ Возврат товаров от покупателя на позицию «Подарочный сертификат...». Таким образом, мы как бы возвращаем клиенту его аванс в розничную кассу.
    • Оформляет новый документ продажи (ЧекККМ) на те товары, которые покупатель фактически забирает. Оплата по этому чеку закрывается за счет виртуальных денег, вернувшихся на баланс покупателя при возврате сертификата.

Важное предупреждение: этот способ крайне прост в освоении для кассиров, однако он имеет огромные минусы с точки зрения налогового и бухгалтерского учета, так как искажает реальные возвраты товаров и может вызвать вопросы у налоговой инспекции из-за несоответствия признаков расчета на кассе реальным операциям. Мы рекомендуем использовать его только в крайних случаях.

Решение №3. Полноценная программная доработка конфигурации (создание подсистемы)

Давайте теперь рассмотрим наиболее правильный, профессиональный и масштабируемый путь — создание собственной нетиповой подсистемы учета подарочных сертификатов внутри конфигурации «1С:Управление торговлей 10.3».

Для реализации этой задачи нам потребуется выполнить несколько шагов по изменению метаданных в конфигураторе.

Шаг 1. Создание структуры хранения данных

Для хранения информации об уникальных номерах сертификатов, их номиналах и статусах создадим новый справочник ПодарочныеСертификаты. Настроим в нем следующие реквизиты:

Для оперативного контроля остатков по сертификатам (особенно если бизнес-требования допускают частичное гашение номинала за несколько покупок) нам понадобится новый оборотный регистр или регистр остатков. Создадим Регистр накопления «ОстаткиПодарочныхСертификатов» (вид регистра — Остатки):

Шаг 2. Доработка документа «Чек ККМ» для продажи ПС

При продаже подарочного сертификата нам нужно зафиксировать поступление денежных средств и сделать запись в наш регистр накопления. В модуле проведения документа ЧекККМ при продаже позиции номенклатуры, которая имеет признак сертификата, добавим движения по регистру:


Процедура ДвиженияПоРегиструСертификатов(Отказ, Движения)
    
    Для Каждого СтрокаТЧ Из Товары Цикл
        Если СтрокаТЧ.Номенклатура.ЭтоПодарочныйСертификат Тогда
            
            Движение = Движения.ОстаткиПодарочныхСертификатов.Добавить();
            Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
            Движение.Период      = Дата;
            Движение.Сертификат  = СтрокаТЧ.ПодарочныйСертификат;
            Движение.Сумма       = СтрокаТЧ.Сумма;
            
        КонецЕсли;
    КонецЦикла;

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

Шаг 3. Реализация оплаты товаров сертификатом в «Чек ККМ»

Когда клиент расплачивается сертификатом, нам нужно предоставить кассиру возможность выбрать этот способ оплаты. Для этого добавим на форму документа ЧекККМ (или в специализированную форму оплаты) вкладку или кнопку «Оплата сертификатом». При нажатии на нее программа должна запрашивать считывание штрихкода сертификата.

Разберем по шагам алгоритм проверки и зачета сертификата при оплате:


Функция ПолучитьОстатокПоСертификату(ВыбранныйСертификат) Экспорт
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Остатки.СуммаОстаток КАК Остаток
        |ИЗ
        |   РегистрНакопления.ОстаткиПодарочныхСертификатов.Остатки(&Период, Сертификат = &Сертификат) КАК Остатки";
    
    Запрос.УстановитьПараметр("Период",      Новый Граница(ТекущаяДата(), ВидГраницы.Включая));
    Запрос.УстановитьПараметр("Сертификат",  ВыбранныйСертификат);
    
    РезультатЗапроса = Запрос.Выполнить();
    Если Не РезультатЗапроса.Пустой() Тогда
        Выборка = РезультатЗапроса.Выбрать();
        Выборка.Следующий();
        Возврат Выборка.Остаток;
    КонецЕсли;
    
    Возврат 0;
    
КонецФункции

При проведении чека оплаты товары списываются со склада, а сумма, оплаченная сертификатом, списывается из регистра накопления со знаком Расход. Если сумма покупки меньше номинала сертификата, на регистре останется неиспользованный остаток, который покупатель сможет потратить при следующем визите. Если правилами вашей компании частичное гашение не предусмотрено, то при любой сумме покупки мы списываем весь доступный остаток по сертификату в ноль, а разницу признаем доходом предприятия.

Синхронизация с 1С:Бухгалтерией предприятия (БП 3.0)

После того как мы определились с технической стороной учета в УТ 10.3, крайне важно настроить корректные правила выгрузки документов в бухгалтерскую базу данных. Подарочные сертификаты не должны отражаться как обычная реализация товаров на счете 90.01 в момент их продажи.

Проанализируем правильные бухгалтерские проводки, которые должны формироваться при обмене:

  1. Продажа сертификата покупателю:
    • Дт 50.01 (или 51, 57) — Кт 62.02 (или 76.09) — получена оплата за сертификат (отражен аванс от розничного покупателя).
  2. Отоваривание сертификата (продажа товаров):
    • Дт 62.01 — Кт 90.01.1 — отражена розничная выручка за переданные покупателю товары.
    • Дт 62.02 (76.09) — Кт 62.01 — произведен зачет аванса на сумму номинала сертификата (или сумму покупки).

Для реализации этих проводок в правилах обмена (настраиваемых через программу «1С:Конвертация данных») необходимо переопределить счета учета расчетов для номенклатуры типа «Сертификат». При переносе документов продажи ПС в БП 3.0 они должны трансформироваться в документы получения авансов (например, документ Поступление на расчетный счет или Приходный кассовый ордер с видом операции «Оплата от покупателя»).

Списание просроченных сертификатов

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

Для отражения этой операции в доработанной конфигурации УТ 10.3 рекомендуется создать документ Списание подарочных сертификатов. Данный документ будет решать две важные задачи:

Подведем итоги

Мы подробно изучили три основных метода организации учета подарочных сертификатов в программе 1С:Управление торговлей 10.3. Простой метод без изменения конфигурации (через договоры контрагентов) отлично подойдет малому и среднему бизнесу с небольшим потоком клиентов. Если же перед вами стоит задача автоматизации крупного ритейла с высокой проходимостью на кассах ККМ, наиболее верным и законным решением будет доработка конфигурации с созданием регистра накопления остатков сертификатов и корректной интеграцией с фискальным регистратором.

← На главную