Проблема известная.
Связана с использованием скидки на чек.
Процент скидки передаётся в завершающей чек команде, то есть нет никакой возможности узнать, как выполнит округление аппарат.
Простое решение проблемы - использование цен без копеек, тогда при любом округлении скидки будет получаться значение с двумя десятичными знаками (копейками) и его можно вычислить по формуле без округления.
Более сложное решение, применяемое во всех программах, работающих с регистраторами Штрих-М - это печать содержимого чека текстовыми строками (по шаблону через команду "ПечатьСтроки") и оформление единственной покупки на общую сумму оплаты по чеку (без каких-либо скидок и т.п.) - в этом случае сумма оплат будет равна сумме единственной покупки.
Кроме того, в буфере чека регистратора помещается не более 100 покупок, если в чеке больше 100 покупок, то ФР выдаст ошибку - соответственно - печать чека текстовыми строками решает и эту проблему (собственно, ради неё оно и делалось).
Независимо от того, куда вы едете — это в гору и против ветра!