Обмен, перевод и комиссия¶
Деньги перекладывают между своими счетами двумя разными способами, и приложение их различает.
Перевод — одна валюта¶
Сняли наличные с карты, перекинули с карты на карту, положили на вклад. Сумма ушла с одного счёта и целиком пришла на другой. Общий капитал от этого не меняется.
Обмен — разные валюты¶
Поменяли рубли на донги, купили USDT, продали USDT за донги. Здесь сумм две: сколько отдали и сколько получили.
Приложение хранит именно их — обе фактические величины, а не курс. Курс оно показывает как результат деления одной на другую.
Так сделано намеренно. Курс, записанный отдельным числом, почти всегда врёт: у обменника своя цена, у P2P — своя, где-то съедена комиссия, где-то округление. А «отдал 84 000 ₽, получил 1 000 USDT» — это факт, который не зависит ни от чьих котировок. Из факта курс восстанавливается всегда, из курса факт — нет.
Перевода между разными валютами не бывает
Если вы выберете счета в разных валютах, приложение предложит именно обмен и спросит вторую сумму. Иначе деньги в отчётах пришлось бы «телепортировать» по неизвестному курсу.
Комиссия¶
Комиссия — отдельное поле, она никогда не прячется внутрь суммы операции.
Причина та же: если вычесть комиссию из суммы, вы больше не узнаете, сколько стоил сам обмен, а сколько — услуга обменника. С отдельным полем видно и то, и другое, и в отчётах комиссии складываются в собственную строку.
Цепочки¶
Перегон рублей в донги обычно идёт в два шага: рубли → USDT, потом USDT → донги. Это две операции, но одно действие, и приложение умеет связать их в цепочку — в журнале они стоят рядом и открываются вместе.
Так видно настоящую цену маршрута: сколько рублей вошло, сколько донгов вышло и сколько потерялось по дороге на двух комиссиях и разнице курсов.

Партии и «сколько я вложил»¶
Когда вы покупаете валюту, приложение запоминает партию: сколько купили и по какой цене. Когда тратите — списывает с самой старой партии, потом со следующей. Тот же порядок, в каком считают склад: что пришло раньше, уходит раньше.
Благодаря этому по каждой валюте видно не только остаток, но и во сколько он вам обошёлся. Для USDT это отвечает на вопрос «я на этих обменах выиграл или проиграл» — без всякой торговли, просто из вашего журнала.

Экран Партии открывается с карточки валюты. Если остаток и партии разошлись — значит, какая-то операция внесена не полностью; приложение пересобирает партии заново при исправлении операций задним числом.