Имя: Пароль:
1C
1С v8
Как вытащить ставку НДС из Назначения платежа в выписке банка?
, ,
0 Saari
 
21.01.22
11:14
Подскажите, пожалуйста, есть ли готовый алгоритм для вытаскивания ставки НДС из Назначения платежа?
1 Dmitrii
 
гуру
21.01.22
11:21
(0) Нет.
Но в некоторых документах некоторых конфигураций данные о ставке содержатся в отдельных реквизитах документа или табличных частей.
Если речь о парсинге (программном разборе) текстовой выписки банка, то универсальных готовых алгоритмов нет. Либо изобретать свой велосипед, который будет работать с неким приемлемым количеством ошибок. Либо требовать от плательщиков, чтобы они заполняли назначение платежа строго по определенному формату, для разбора которого у вас будет свой алгоритм.
2 Saari
 
21.01.22
11:31
(1) ясно. разрабатываю свой алгоритм.
3 серый КТУЛХУ
 
21.01.22
11:36
ваш вопрос: как заставить банк предоставлять в выгрузке ндс в читаемом виде
ответ: чаще всего - увы, никак.
4 Ненавижу 1С
 
гуру
21.01.22
11:40
(3) эти данные передает плательщик, банку наплевать в целом
5 Saari
 
21.01.22
11:58
Написал такой алгоритм (может кому пригодится).
        //НазначениеПлатежа - поля из выписки банка

        СтавкаНДСИзСтроки = "";
    НазначениеПлатежаСтрока = НРег(СокрЛП(НазначениеПлатежа));
    ПозНДС    = Найти(НазначениеПлатежаСтрока, "ндс");
    ПозБезНДС = Найти(НазначениеПлатежаСтрока, "без налога");
    СтрДляРазбора = "";
    Если ПозБезНДС > 0 Тогда
        СтавкаНДСИзСтроки = Перечисления.СтавкиНДС.БезНДС;
    Иначе
        Если ПозНДС > 0 Тогда
            СтрДляРазбора = Сред(НазначениеПлатежаСтрока, ПозНДС + 4);
            СтавкаНДССтрока = "";
            Если НЕ СтрДляРазбора = "" Тогда
                Для Ном = 1 По СтрДлина(СтрДляРазбора) Цикл
                    ТекСимв = Сред(СтрДляРазбора, Ном, 1);
                    Если Найти("0123456789", ТекСимв) > 0 Тогда
                        СтавкаНДССтрока = СтавкаНДССтрока + ТекСимв;
                    Иначе
                        Прервать;
                    КонецЕсли;
                КонецЦикла;
                Если СтавкаНДССтрока = "0" Тогда СтавкаНДСИзСтроки = Перечисления.СтавкиНДС.НДС0
                ИначеЕсли СтавкаНДССтрока = "10" Тогда СтавкаНДСИзСтроки = Перечисления.СтавкиНДС.НДС10
                ИначеЕсли СтавкаНДССтрока = "18" Тогда СтавкаНДСИзСтроки = Перечисления.СтавкиНДС.НДС18
                ИначеЕсли СтавкаНДССтрока = "20" Тогда СтавкаНДСИзСтроки = Перечисления.СтавкиНДС.НДС20
                КонецЕсли;
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
    
    Сообщить(СтавкаНДСИзСтроки);
6 Aleksey
 
21.01.22
12:09
(5) бесполезный от слова совсем
Клиент может ошибочно передавать НДС, там где не нужно (фирма на УСН, но клиенты упорны в платежках выделяют НДС).
Как таковая ставка не влияет ни начто от слово совсем
7 Dmitrii
 
гуру
21.01.22
12:21
(6) >> Как таковая ставка не влияет ни на что от слово совсем.

С чего бы это вдруг?
Если в рамках одного договора есть отгрузки и оплаты по разным ставкам и/или с разными видами деятельности, то как минимум для авансов и НДС с авансов ставка принципиальна.
Для отчетности ставка важна. В балансе в отчете по ДДС выделяется НДС по ставкам.
8 shuhard
 
21.01.22
12:27
(6)[Как таковая ставка не влияет ни начто от слово совсем]
спорное утверждение
9 hhhh
 
21.01.22
12:32
(7) упрощенцы не сдают отчет ддс.
10 Aleksey
 
21.01.22
12:36
(7) в оплате?
Даже если ставка разная ты в оплате физически не сможешь через запятую указывать ставку.
Указание ставки не влечет для отправителя хоть какой то последствия
Для получателя, максимум вопрос с налоговой, дайте пояснения.

Допустим, я на ОСН продаю товар с НДС. Мне покупатель кидает платежку, где указано без НДС. Означает ли это что на основании назначения платежа я могу не платить НДС с аванса?
Другой вариант я на УСН, продаю без НДС. Мне покупатель при оплате долга указан в назначении платежка ставку НДС 20%. Означает ли это что я обязан подать декларацию НДС и оплатить этот НДС в бюджет?

Тогда на что влияет ставка?
11 shuhard
 
21.01.22
12:43
(10)[Даже если ставка разная ты в оплате физически не сможешь через запятую указывать ставку.]
мы о назначении платежа ?
12 Saari
 
21.01.22
12:45
Ставка заполняется в документе "Списание с расчетного счета". Без заполненного реквизита документ не проводится.
13 Aleksey
 
21.01.22
12:46
(12) вот только ставка 1, и сложно указать там несколько ставок
14 acht
 
21.01.22
12:46
(5) Сплошной обман
"Оплата виндсерфинга по СФ №ПЫЩЬ-10, в том числе НДС 18000.00"
15 shuhard
 
21.01.22
12:47
(13) в БП нет варианта с табличной частью и нет возможности указать разные договора, статьи ДДС и ставки НДС ?
в топку такой учёт
16 Aleksey
 
21.01.22
12:49
(15) А что где то есть?
17 shuhard
 
21.01.22
12:52
(16) да, в УТ/УПП/ERP есть ТЧ со всем необходимым
назначение платежа формируется с перечислением сумм и ставок
18 ДенисЧ
 
21.01.22
12:55
19 ДенисЧ
 
21.01.22
12:55
Всё можно. Только настройку включить надо.
20 shuhard
 
21.01.22
12:56
(19) а уже в УХ полез смотреть =)
21 Dmitrii
 
гуру
21.01.22
12:56
(10) Вариантов, где ты продаешь и покупаешь по разным ставкам (10%, 20%, 0(экспорт), Без НДС), ты конечно не учитываешь.
В одной платежке может быть и одна ставка НДС (например, только 20%). но самих платежек то может быть сколько угодно. И в каждой своя ставка. Но если по договору есть отгрузки и оплаты по нескольким видам деятельности, тебе придётся заморочиться с определением ставки и выделением налога в соответствии со ставкой.

(15) >> в БП нет варианта с табличной частью и нет возможности указать разные договора, статьи ДДС и ставки НДС?

Всё там есть. В том числе и различные ставки НДС в поступлении на р/с. Помимо статей ДДС, договоров и расчетных документов.
22 Aleksey
 
21.01.22
12:56
(17), (19) мы о разных вещах
23 Aleksey
 
21.01.22
12:57
(21) это в самом документе списания, т.е. отражения результата выписки. Но если мы говорим о платежном поречении, т.е. покупатель отправляет распоряжение в банк.. то там нет ни ТЧ, ни возможности указать разные ставки
24 Dmitrii
 
гуру
21.01.22
12:59
(5) Топорно. Количество ошибочных срабатываний будет слишком велико.
25 shuhard
 
21.01.22
12:59
(23) всё есть - в назначении платежа и требованиях к нему ЦБ
26 ДенисЧ
 
21.01.22
12:59
(23) Платёжка  - это отдельная операция. И да, в ней нет. Делай две платёжки.
27 Saari
 
21.01.22
13:00
да, в платежном поручении указывается одна ставка НДС. Затем из банка приходит выписка, и ее загружаем в 1С. Из назначения платежа вытаскиваем ставку НДС (т.к. ее нет в отдельном реквизите).
Задача решена. Алгоритм выше.
Спасибо всем! Тему можно закрывать.
28 Aleksey
 
21.01.22
13:01
жаль что я так и не услышал ответа "на что влияет ставка?"
29 Saari
 
21.01.22
13:02
(28) я же чуть выше написал: Ставка заполняется в документе "Списание с расчетного счета". Без заполненного реквизита документ не проводится.
30 Dmitrii
 
гуру
21.01.22
13:02
(23) >> покупатель отправляет распоряжение в банк.. то там нет ни ТЧ, ни возможности указать разные ставки.

Это не отменяет для продавца (получателя платежа) проблемы автора ветки - разбираться с тем по каким ставкам налога пришел платеж.
Всё просто, когда продавец торгует только по одной ставке. Например, на ОСН только по 20%. Чтобы там покупатель не написал, ставка всегда одна - 20%. Но как только появляются товары или услуги не облагаемые налогом или облагаемые по разным ставкам, возникает куча геморроя.
31 Dmitrii
 
гуру
21.01.22
13:03
(28) Жаль что ты его не слышишь.
32 Aleksey
 
21.01.22
13:04
(30) И ну так пиши правильную ставку и клади больт на то что там указано, разве все равно не придеться этим заниматься?
33 shuhard
 
21.01.22
13:04
(28) дык повторим - на НДС с авансов
например ты купил/продал сервер и ПО к нему
34 Aleksey
 
21.01.22
13:05
(33) и клиент прислал без НДС, хотя я продал сервер с НДС. И что можно теперь НДС не платить?
35 Aleksey
 
21.01.22
13:06
(29) причем тут это, ну укажи там любую ставку от фонаря, и программа пропустит. Речь идет о том что есть ли смысл тащить кривую ставку, которая потом тебе выйдет боком
36 Dmitrii
 
гуру
21.01.22
13:15
(32) См. пример из (33).

Тебе пришло две платежки. Обе по 100₽. С какой надо выставить счет-фактуру на аванс, а с какой - нет? В какой ставка "Без НДС", а в какой 20%?
Или пришла одна платежка на 100₽ с указанием в назначение платежа "в том числе НДС 8.33₽".

(34) >> клиент прислал без НДС, хотя я продал сервер с НДС. И что можно теперь НДС не платить?

Если договором предусмотрена возможность отдельной оплаты железа и ПО, и покупатель оплатил именно ПО Без НДС, то можно не платить.
Причем это обычная ситуация, когда оговаривается, что часть товара/услуг должна быть предоплачена покупателем, а часть можно оплатить по факту поставки.
Франчи, например, постоянно требуют строго предоплату за жёлтые коробки, т.к. заказывают их у регионального партнёра или в Москве. А услуги и/или железо могут быть и с постоплатой.
37 shuhard
 
21.01.22
13:16
(34) при чем здесь продажа ?
НДС с аванса уплачивается на основании платежей
38 Dmitrii
 
гуру
21.01.22
13:22
(35) >> укажи там любую ставку от фонаря, и программа пропустит.

Ну укажет он от фанаря. А потом будет морочиться с предъявлением НДС с аванса к этой платежке, когда в списании с р/с указал ставку Без НДС, а ему счет-фактура пришёл на аванс на 20%. Либо выкинуть этот фактуру и не предъявлять НДС к вычету (а там может быть значительная сумма), либо списание переделывать.
39 Dmitrii
 
гуру
21.01.22
13:25
Даже если абстрагироваться от вопроса НДС с авансов, вопрос определения ставки и суммы налога в поступлении и списании с р/с важен для формы баланса - отчета о движении денежных средств. Где показываются отдельно суммы с налогами//акцизами и без налогов/акцизов. Если посмотреть алгоритм заполнения отчета, то там видно, что данные эти берутся именно из табличных частей документов поступления и списания с р/с.
40 shuhard
 
21.01.22
13:32
(39) да, 4 форма то же важна
41 Chai Nic
 
21.01.22
13:42
Ну когда же ЦБ введет унифицированный расширяемый формат обмена финансовыми сообщениями при безналичных платежах... реально этого не хватает. А ещё групповое платежное поручение очень нужно, чтобы платить зарплату одним реестром на все карты всех банков..
42 Dmitrii
 
гуру
21.01.22
14:11
(41) >> А ещё групповое платежное поручение очень нужно, чтобы платить зарплату одним реестром на все карты всех банков.

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

>> когда же ЦБ введет унифицированный расширяемый формат обмена финансовыми сообщениями при безналичных платежах.

+100. Если честно, надеялся, что это произойдёт как-то при внедрении национальной системы платежей (аналог международной SWIFT) после укрокризиса 2014-го года.
Но видимо ни Центробанку ни НСП это нафиг не нужно. Их, по большому счету, и та к всё устраивает. И уж точно им не интересен НДС во внутрибанковских операциях. А сами уплаты налогов и сборов они и так видят отдельно.
43 trooba
 
21.01.22
14:24
(6) Можно ставку рассчитывать от суммы и суммы НДС
44 Dmitrii
 
гуру
21.01.22
14:31
(43) >> Можно ставку рассчитывать от суммы и суммы НДС.

Можно, если вся сумма точно по одной ставке НДС идёт. И ты уверен, что плательщик ничего не перепутал.
Но это не работает, если отгрузка и оплата по нескольким ставкам НДС. В одном документе одновременно товары или услуги Без НДС, 0%, 10% и 20%. Сумма 100₽ в том числе НДС 8₽. И что ты рассчитаешь?

И в любом случае придётся разбирать назначение платежа, чтобы узнать сумму НДС. В самой платёжке ведь только общая сумма платежа (включая налог).
45 shuhard
 
21.01.22
14:57
(41) есть же Уникальный идентификатор платежа (УИП)
46 NorthWind
 
21.01.22
22:37
(0) ее не нужно вытаскивать. Можно просто взять вероятные варианты ставок, посчитать суммы НДС, взять их варианты +/- 1-2 копейки и проверить наличие соответствующей последовательности цифр в назначении платежа. В случае совпадения полагать соответствующую ставку. На удивление, такой алгоритм дает довольно хорошие результаты.
47 NorthWind
 
21.01.22
22:43
понятно, что у такого алгоритма есть минусы. 1) трудно гарантировать правильную работу, если последовательность цифр короче чем 2-3 цифры, т.е. можно гарантировать сколько-то надежную работу для сумм платежа от 100 руб и более; 2) он не будет работать, если в документе идет оплата по нескольким позициям, содержащим разные ставки НДС.
48 Мимохожий Однако
 
22.01.22
08:46
Нет счет-фактуры, нет выделения суммы НДС. Т.к. в зачёт принимается только то, что подтверждается налоговым документом. Хоть сто раз выделяй и записывай. Вытаскивать сумму и ставку НДС из назначения платежа от лукавого. Достаточно посмотреть, что передаётся в налоговую в книге покупок и продаж
49 NorthWind
 
22.01.22
08:57
(48) вы это к тому что в платежных документах 1С не обязательно НДС прописывать? Я тоже так думал. Но есть одна форма отчетности, которая тягает суммы НДС именно из платежных документов, по крайней мере в УПП.
50 zak555
 
22.01.22
09:26
Я могу одной платёжкой оплатить счёт с ндс и счёт без ндс
51 Мимохожий Однако
 
22.01.22
09:53
(49) Нет. Это я к тому, что вытаскивать из назначения данные, чтобы потом засчитывать НДС не рационально.
О какой форме отчетности идёт речь?
52 NorthWind
 
22.01.22
12:14
(51) оно не то чтобы не рационально - оно не очень нужно, по крайней мере в России. Здесь с какого-то уже довольно лохматого года НДС рассчитывается не по оплате, а по отгрузке, а на аванс дают счет-фактуру. То бишь получается, что для целей учета НДС из платежных документов не нужен - это просто строчка для красоты.

Только есть одно "но". Существует такая форма бухгалтерской отчетности - форма 4 "Отчет о движении денежных средств". Ею обычно интересуются аудиторы, когда приходят проверять контору. И вот этот отчет как раз-таки строится по денежным документам (ПКО, платежные поручения и т.д.) и берет суммы НДС именно из них. Если же суммы не заполнены, правильного отчета не получить. По крайней мере так дело обстоит в УПП, но подозреваю, не только в ней.
53 NorthWind
 
22.01.22
12:17
собственно, я стал озадачиваться прописыванием этих сумм именно тогда, когда в конторе появились аудиторские проверки и стали спрашивать этот отчет. Ранее мы благополучно забивали болт на заполнение сумм НДС в платежных документах, и никого это не парило.
54 Мимохожий Однако
 
22.01.22
13:42
при поступлении авансового платежа выделять НДС можно только при предъявлении счета-фактуры на аванс. Если этот счет-фактура не сформирован, то НДС не выделяется. ИМХО.
Но некоторые "продвинутые" аудиторы считают подобный подход неверным. Самое любопытное, что сколько аудиторов, столько и мнений.
55 NorthWind
 
22.01.22
15:36
(54) с авансами вопросов не припоминаю. Проблема была с отчетом Форма 4, когда он понадобился.
56 NorthWind
 
22.01.22
15:39
решил вопрос так, как написано в (46), это закрыло примерно 90-95% платежей. В остальных бухгалтер ручками подписывает цифру, чтобы это было сделать проще, добавил редактируемые поля прямо в табличную часть обработки банк-клиента. Сразу видно, какие заполнились обработкой, какие остались пустыми и их надо проверить человеку.
57 Злопчинский
 
22.01.22
16:00
(54) "при поступлении авансового платежа выделять НДС можно только при предъявлении счета-фактуры на аванс. Если этот счет-фактура не сформирован, то НДС не выделяется."
- и государству с авансовых платежей (от клиентов) - ничего не отстегиваем? очень сомневаюсь.
58 Злопчинский
 
22.01.22
16:00
(54) "Самое любопытное, что сколько аудиторов, столько и мнений."
а речь идет о работниках аудиторских контор или именно об аттестованных аудиторах?
59 Мимохожий Однако
 
22.01.22
16:51
(58) Я общался с отдельным аудиторами. Аттестации не проверял. Не мой уровень. Чисто с моей колокольни наблюдение. Аудитор глаголет, пишет заключение, а отвечает главный бухгалтер. Я из тех кто сначала настраивал в одну сторону, потом в противоположную, когда поступило заключение от другого аудитора. Не часто, но такие случаи были одно время.Я-то точно не аудитор.
60 Aleksey
 
23.01.22
09:46
(54) так счет фактуру на аванс рисует тот кто получил авансовый платеж, а не клиент.
61 vvspb
 
23.01.22
10:09
(54) при поступлении авансового платежа выделять НДС можно только при предъявлении счета-фактуры на аванс/// похоже здесь заблуждение. При получении аванса получатель оформляет с/ф. А вот при перечислении аванса ещё нужно побегать за поставщиком, чтобы получить от него с/ф на аванс и принять НДС к вычету. (8) да, по возможности лучше требовать письма об ошибках в назначении платежа
62 vvspb
 
23.01.22
10:12
(55) счета-фактуры на аванс формируете на конец налогового периода или при каждом получении аванса? Насколько часто предоплата договором предусмотрена?
63 NorthWind
 
23.01.22
11:21
(62) там обработка есть для этого. То ли один раз в конце месяца, то ли в конце квартала перед подачей декларации. Но могу соврать.
64 vvspb
 
23.01.22
11:55
(63) про стандартные я знаю
65 NorthWind
 
23.01.22
12:06
(64) вдобавок у нас предоплата - явление не особо частое.
66 vvspb
 
23.01.22
12:48
(65) я это и предложила, т. к. при любой обработке приходится проверять
67 MWWRuza
 
гуру
23.01.22
17:36
(14) "Оплата виндсерфинга по СФ №ПЫЩЬ-10, в том числе НДС 18000.00"

Да никакого обмана. Ищите НДС не по строке "ндс", а пол строке " ндс". То-бишь, "ндс" должно быть в начале нового слова, после пробела. Придумаете хоть одно слово, не в тему, которое начиналось бы с символов "ндс" - ?
PS Но, это так, к вопросу о парсинге строк. Мое имхо - выделять его из назначения платежа не есть правильно, да и надо-ли вообще...
68 NorthWind
 
23.01.22
18:12
(67) ну если больше неоткуда, а данные требуются, то приходится. Я в начале нулевых кому-то вообще полностью текстовую выписку Менатепа-СПб распарсивал, и ничего, работали.
69 NorthWind
 
23.01.22
18:17
Эх, времена были... Банк-клиент на дельфи, PGP юзал, никакого тебе шифрования по ГОСТу и аппаратных ключей. Лепота. Как же в те времена было просто жить... Но вот выгрузки в формат клиент-банка не было, только в человекочитаемый табличный текстовый док. Пришлось парсить.
70 NorthWind
 
24.01.22
08:54
(67) могут написать "в т.ч.НДС", тогда пробела не будет. То бишь нужно сверять не только пробел, но и любой разделитель слов - запятую и точку как минимум.
На самом деле достаточно противная задачка, с учетом того что и цифру могут писать с разделителями разрядов "'", с разделителями разрядов " ", без разделителей, а в качестве отделителя дробной части может быть и ",", и ".".
И это я, думаю, не написал еще и половины той хрени которая там может быть.