I really like this so far and would have loved to have such an easy tool a few years back when I was living in a shared student home :)
Anyways... there are always these shared re-occurring bills for longer term projects. Be it a internet hosting/domain bill that is monthly/yearly, or a utility bill, rent, netflix etc.
So it would be nice to have the following:
Automatic addition of expenses based on a predefined schedule
Addition of open bills that you know already in advance but that someone has to take on
Designs
Child items
...
Show closed items
Linked items
0
Link issues together to show that they're related.
Learn more.
Thanks for your interest! It's been a few years I'm using IHateMoney's public instance (https://ihatemoney.org) with friends and i was happy about it but they lost their database and it pushed me to consider doing an equivalent for Nextcloud. I first started to develop an Android client (MoneyBuster) for IHateMoney and then decided to make Cospend API similar to IHateMoney so that MoneyBuster would be compatible with both projects. I'm also really happy to do something which can allow people to self-host this type of data. Tricount and other closed services are so dominant, there is a cruel lack of alternatives. Let's get the control back on the shared budget tool area!
Yep it would be nice to have automatic bill adding based on a frequency. It seems hard to integrate this feature nicely in the UI. We'll have to think about that. Anyway, frequencies could be daily, weekly, monthly and yearly. Automatic bill would have a fixed amount and would be associated with a member. Nextcloud cron job could check if the automatic bill is present and add it if necessary. What do you think ?
About the second one, do you mean you would like to create a bill without specifying who paid and it would be possible to edit the bill later when somebody has actually done the payment ? I don't know about that one. It seems a bit unnatural to let a bill without payer. I like the idea but i don't see how it could stay simple to use.
Maybe similar to how there is an "all" meta user, there might be a "none yet" meta user and you have the option to edit or simply press a "I'll pay that" button?
Project members and Nextcloud users are independent. Anyway i get your point.
I understand how it could be presented but it would mean there are bills without payer displayed in the bill list. It adds "complexity" on top of the basic "IHateMoney" concept. It would require to deeply change the way stats, settlement, balances etc... are computed. Nothing impossible but going quite far from IHateMoney simplicity.
I don't think there will be many daily re-occurring payments, otherwise what you wrote seems fine.
Maybe there could be a checkbox next to the date field saying "repeat?" and if you click it a small drop down modal shows that has the weekly, monthly, yearly options?
I don't know how to handle the "payed for" aspect. Imagine you've create a weekly bill with A and B selected in "payed for". Then you add a member named "C". I guess the default behaviour should be that only A and B are included in each repetition of the bill but imagine you want to include C in the new repetition but not the old ones... It requires to make a few choices in the implementation .
Hmm, true. I was mostly thinking of "all" as the recipient. Maybe it can just automatically make a copies of itself based the repeat settings and you can edit the recipient if it changes? But then you would have to set also an end date or it would spam infinite copies...
Ok i thinks it works. Here is the informal manual: once you set a repeat frequency for a bill ( near date), this bill will be duplicated when needed. The newly created bill will have a repeat frequency and the old bill will loose the repeat frequency. This way, to change the "payed for" value, user just needs to change it in the last bill created by the repeat process. It will only affect future bills and leave the old ones untouched. I don't know if i explain this clearly... Anyway i'll test it a bit more before publishing a release. Yay!