Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Устаревшая версия Jira
serverSystem JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverIdbc8d3685-f9c0-329d-9054-b12aabbcb834
keySRTZ-1836

...

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

Детали реализации

  • Вводится понятие закупочной цены и настройка с номером цены (в cg_price), в которой она хранится.

  • Если у товара есть закупочная цена и включена настройка, при добавлении в чеке сохраняем в позиции закупочную цену как плагинное свойство (costPrice), а также считаем НДС не от итоговой суммы, а от суммы прибыли (разница между итоговой суммой и суммой, вычисленной через закупочную цену).

  • Сумма НДС хранится там же где обычно, сумма прибыли сохраняется в плагинном свойстве (profitEndSum).

  • Для печати на чеке для секции позиций добавлены подстановки закупочной цены (cost_price), суммы прибыли (profit_end_sum) и признака наличия закупочной цены для построения условий (has_cost_price), для секции налогов добавлены подстановки, которые раньше были в версии AZ, в частности gross_sum (алиас withtax) - фактическая налогооблагаемая база позиции.

  • В отчете Z/X и при печати секции tax чеков, для необлагаемой налогом суммы позиции формируется налог Без НДС.

  • В отчете Z/X для секции tax добавлены подстановки (для всех стран):

    • tax_sum_sale - сумма НДС по чекам прихода (алиас ndssum)

    • tax_sum_return - сумма НДС по чекам возврата прихода (алиас ndssumreturn)
    • tax_sum_expense - сумма НДС по чекам расхода
    • tax_sum_expense_return - сумма НДС по чекам возврата расхода
    • gross_sum_sale - налогооблагаемая сумма по чекам прихода
    • gross_sum_return - налогооблагаемая сумма по чекам возврата прихода
    • gross_sum_expense - налогооблагаемая сумма по чекам расхода
    • gross_sum_expense_return - налогооблагаемая сумма по чекам возврата расхода

Настройка

Включение

1. Выполните скрипт по базе данных set, указав номер цены, в которой хранится закупочная цена:

...

Блок кода
languagexml
<line font="small">
    <condition name="Обычный товар">
        <operand key="equal">
            <varLogical><element value="has_cost_price"/></varLogical>
            <varLogical><boolean value="false"/></varLogical>
        </operand>
    </condition>
	<text align="left" value="Satış" width="6" filler="space" clip="true"/>
	<element align="left" value="textgoodsbarcode" width="18" filler="space" precision="0"/>
	<element align="left" value="vatname" width="30" prefix="space" filler="space" precision="2"/>
</line>
<line font="small">
    <condition name="Фермерский товар">
        <operand key="equal">
            <varLogical><element value="has_cost_price"/></varLogical>
            <varLogical><boolean value="true"/></varLogical>
        </operand>
    </condition>
    <text align="left" value="Satış" width="6" filler="space" clip="true"/>
    <element align="left" value="textgoodsbarcode" width="18" filler="space" precision="0"/>
    <text align="left" value="Ticarət əlavəsi 18%" width="30" filler="space" clip="true"/>
</line>

2. В секции налогов <section id="tax"> найдите блок кода:

...

Блок кода
languagexml
<line font="small">
    <condition name="С НДС">
        <operand key="equal">
            <varLogical><element value="iswithoutvat"/></varLogical>
            <varLogical><boolean value="false"/></varLogical>
        </operand>
    </condition>
    <text align="left" value="*" width="2" filler="space"/>
    <element align="left" value="vatname" width="10" filler="space" precision="0"/>
    <element align="right" value="vatsum" width="7" prefix="equalsign" filler="space" precision="2"/>
    <element align="left" value="basecurrency" width="18" filler="space" precision="0"/>
    <element align="right" value="withtax" width="7" filler="space" precision="2"/>
</line>

<line font="small">
    <condition name="Без НДС">
        <operand key="equal">
            <varLogical><element value="iswithoutvat"/></varLogical>
            <varLogical><boolean value="true"/></varLogical>
        </operand>
    </condition>
    <text align="left" value="*" width="2" filler="space"/>
    <element align="left" value="vatname" width="35" filler="space" precision="0"/>
    <element align="right" value="withtax" width="7" filler="space" precision="2"/>
</line>

Пример работы

  1. В БД настроена 5 цена для закупочной цены.

  2. Загружены товары:

    1. Товар1 (Без НДС) с 1 ценой 1.25 и без 5 цены;

    2. Товар2 (НДС18%, фермерский) с 1 ценой 0.5 и 5 ценой 1.0;

    3. Товар3 (НДС18%) с 1 ценой 14.0.

  3. Добавляем 2 шт. Товара1, 1 шт. Товар2, 1шт. Товар3

  4. Проверяем:

    1. Товары без НДС 3.00(2.50 за Товар1 и 0.50 за Товар2);

    2. НДС 18% - 14.50(14.00 за Товар3 и 0.50 за Товар2).

  5. В фискализатор передаются корректные данные.