Сплит на долги соответствует тому, что происходит в реале. Это точно долги, что же ещё? Плюс долги не портят расходы по категориям и не создают дохода при возврате. Идеал же! 😇
Но, возможно, нужно оптимизировать UI при вводе, разбиении и возврате долгов (особенно если их много)
Это не совсем долги. Во первых, на момент оплаты ресторана я не знаю точную сумму долга. Во-вторых, друг может мне не вернуть, а оплатить в следующий раз. В-третьих, он может по какой-то причине не вернуть (ну и ладно, зато хорошо посидели).
Я бы назвал это компенсацией. Как вариант - завести такой тип операции. Который бы базировался на категориях расходов.
Ну или просто дайте возможность вводить отрицательные числа. Мне кажется это самое простое.