agstrike / silverstrike

Finance Management Made Easy
https://silverstrike.org
MIT License
424 stars 100 forks source link

Improve split transactions #7

Open simhnna opened 6 years ago

simhnna commented 6 years ago

Currently the form to enter/edit them is rather hard to use.

Splitting transactions so more that two accounts can be used, should not be supported. Transactions are always between exactly two parties. If more than two parties are involved, like tax reductions in paychecks need to be handled in some other way.

In that case you don't actually remove money from your personal account, rather your employer is forwarding the taxes to a third party. I'm not sure how this can be modeled, but it would be nice if silverstrike supported some sort of shadow entries that show that a certain transaction is hidden in the process

speedyflipper commented 5 years ago

I frequently have split transactions that have more than two destination accounts from a single source account.

For example if I go out to dinner with friends and I pay the whole bill. The whole bill will be the source account, however the destination account will be split between the restaurant and each friend with a different category for each.

simhnna commented 5 years ago

yeah. I'm currently working on having transactions always be between exactly two accounts.

However I plan to support the ability to include more accounts in the splits that have to balance in such a way that the amount transferred between the two "transaction"-accounts is valid.

I still need to play around a little to see how that actually works...

qedi-r commented 1 year ago

Yeah, I too have single transactions in my accounts that should go to different foreign accounts. The most common example I have, is that X dollars comes out of my checking account for insurance to one provider, but x is house and y is auto.

Right now, it seems that multiple foreign accounts kind of already works? There's not really any validation on the splits directly, though. I will likely file this as a separate issue so I can fix it.