Attributes for transactions
Similar to #436, but for transactions. User could define any number of attributes.
There could be different ways to implement this with increasing complexity:
- Attribute values are free text.
- Attributes have types, at least we distinguish between Text and Number.
- Attribute values can be defined by a dictionary
- Attribute values can refer to existing fields like category, party (This would for example allow to define multiple payee fields with different roles)
When importing from CSV, user should be able to map columns to these attributes.
Compare with Financisto: Financisto defines types for attributes and attaches attributes to categories.
"Category" is an attribute itself. Why would other attributes be attached to it?
I like the approach implemented in AbilityCash - https://dervish.ru/ By default it only has a Category attribute. But it allows defining any number of additional custom attributes - Agent, Location, etc. See https://dervish.ru/docs/cl/ for more details (in Russian).