Remove TransactionType.TRANSFER
and support only Income
and Expense
transctions. Represent TRANSFER
with TransactionBatch
which is a group of [Transaction
].
-
Remove
TransctionType.Transfer
-
Create
linked_trns
table:
- id: UUID (batch id)
- linkedTrns: [UUID]
- Add
purpose: BatchPurpose?
toTransaction
table:
- BatchPurpose: From | To | Fee (can be extended with more types any time)
-
Create
BatchTrnsFlow
-
Simplify all
:core:actions
usingTransactionType.Transfer
-
Create UI for representing
TrnsBatch
as Transfer transaction card.
- support Transfer fees.
- more flexible and flexible data-model (can support taxes, etc)
- simpler business logic.
- removes
treatTransfersAsIncExp
complex settings => simpler UX. - reduce complexity.
- data migration might be tricky.
- Ivy Cloud won't support it.
TrnsBatchFlow
might be tricky.- Deleting batched .transactions should update
linked_trns
table.