Обработка данных / Демопроект
PayMatch
Сверка заказов, оплат и возвратов из CSV и Excel с объяснением расхождений и журналом ручных решений.

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


Результат
Демо сверило 1 000 искусственных заказов с 1 440 строками операций. После проверки файлов получилось 1 040 групп: 520 совпадений, 320 денежных расхождений и 200 случаев для ручного разбора. В отчёте зафиксированы 25 эталонных случаев и полный браузерный сценарий. Банковские интеграции не подключались.
Мой вклад
Я реализовал импорт, правила расчёта сумм в минимальных денежных единицах, фоновую очередь PostgreSQL и версионирование ручных решений. Проверки включают повтор задания после сбоя и расчёт с точностью до минимальной единицы.
Архитектура
Проверка входных строк отделена от расчёта и ручного разбора.
Импорт
CSV и XLSX проверяются построчно. Валидный набор подтверждает пользователь.
Связи компонентов
- Импорт: CSV и XLSX проверяются построчно. Валидный набор подтверждает пользователь.
- Сверка: Фоновая задача рассчитывает результат и сохраняет его в PostgreSQL.
- Разбор и экспорт: Интерфейс показывает причины, историю решений и экспорт выбранной версии.
- Импорт → Сверка
- Сверка → Разбор и экспорт
- Разбор и экспорт → Сверка