Как настроить проверку суммы заказа при оплате
Когда покупатель оплачивает заказ, платёжная система отправляет в магазин информацию об оплате. В этом сообщении передаётся сумма, которую заплатил покупатель. Система управления магазином сравнивает эту сумму с той, которая числится в заказе. Это нужно для того, чтобы убедиться, что состав заказа не изменился и покупатель оплатил правильную сумму.
Если суммы не совпадают, статус заказа не обновляется — это защищает от ошибок, когда с заказом происходят нестандартные действия. В истории обработки заказа появится запись:
Сумма заказа изменилась: ожидалось …, получено … Валюта: …
Как работает проверка
Заголовок раздела «Как работает проверка»Сумма в запросе платёжной системы может незначительно отличаться от фактической суммы в магазине. Например, на 1,1 копейки или меньше. Причины:
- погрешности округления;
- конвертация валюты.
Такие небольшие расхождения система управления магазином игнорирует автоматически.
Если разница больше 1,1 копейки (например, 2 копейки), статус заказа не обновится. В истории появится сообщение об изменении суммы.
Настройка порога проверки
Заголовок раздела «Настройка порога проверки»По умолчанию допустимое отклонение — 0.011 (1,1 копейки для рублей, 1,1 цента для долларов или евро). Если вы хотите увеличить порог до 2 копеек, добавьте параметр в файл настроек магазина:
'order_amount_tolerance' => 0.02,В числовом значении используйте точку, а не запятую.
❌ Неправильно:
0,02✅ Правильно:
0.02
Если файла настроек нет, создайте его:
<?php
return array( 'order_amount_tolerance' => 0.02,);После сохранения файла очистите кеш в приложении «Настройки».