... and this, to operate on the personal Ledger to divert the expenses to a single "child" account: https://bitbucket.org/blais/beancount/commits/6fa5306f04df887207b1a12062b7107ab169d109
This completes the system. It works. On Sun, Jan 28, 2018 at 9:39 PM, Martin Blais <bl...@furius.ca> wrote: > https://bitbucket.org/blais/beancount/commits/ > d21ed26280ccebcb5e034a86e33ce6c5b842b858 > Works great! > > > On Sat, Jan 27, 2018 at 1:04 AM, Martin Blais <bl...@furius.ca> wrote: > >> On Wed, Jan 24, 2018 at 7:25 AM, <adde.f...@gmail.com> wrote: >> >>> Hey, >>> >>> Sorry all for the very slow response. The holiday period got the better >>> of me. >>> >>> All of these methods you've mentioned seem to only count half the cost >>> on your own accounts though and the other half is counted against a generic >>> account for your partner or roommate? What I would like to do is to count >>> the full amount of our shared apartment expenses against a shared account >>> and then possibly balance this shared account with payments from each of >>> us. The reason I'm interested in doing it this way is that I'd like to get >>> a clear picture of the actual cost of our living arrangement so that we can >>> evaluate it against other apartments for example. If we always did split >>> everything in half then I could use the way you described and just multiply >>> either share by 2 and I'd got the full cost but the parts we pay vary quite >>> regularly. >>> >> >> Yes, this is interesting, and I've done this in the past for a common >> project with someone else. Essentially, I would record the transactions >> twice: once for my half in my own personal ledger, and once again with the >> full amount in a separate, shared ledger. There was also some shared >> account to update. For the shared account I ended up splitting the income >> legs manually, and copy-pasting + editing to replicate to my personal >> account. That's not the best, it was too much manual work and it was >> annoying (but it worked). >> >> However, that being said, I'm currently gearing up for doing this once >> again and better this time around, especially since I'll have a lot less >> time to do this type of stuff. We just gave birth to a baby boy, and call >> me neurotic, but I'm planning to track all his related expenses separately >> to do just what you described. In other words, on my personal ledger, all >> expenses for my kid should appear to a single Expenses account to his name. >> For instance, my "Food" total should account for just the food I consume, >> not that which he does. His expenses should appear on my income statement >> as an outflow of general costs related to his maintenance, or perhaps just >> a few high-level accounts. This is more accurate as Mom will inevitably end >> up paying for different types of thing than Dad will. On the shared ledger, >> those same expenses will appear to their respective categories (e.g. "Food" >> will be his food this time around, and just his) and that should give a >> full picture of his costs, paid for by Mom and Dad, which is more >> interesting that just the parts which I happened to have paid for. I think >> this is similar to what you need to do. >> >> Here's how I'm planning to implement this, this time around: >> >> - I want to stop recording transactions twice, as it required some >> annoying manual synchronization and editing. Instead, in my personal >> ledger, I will record expenses for my kid to categories as if they were my >> own, but tag transactions with a special and very short tag (there will be >> many). A plugin will convert the expenses accounts of those transactions to >> a single generic account to his name, as described above. >> >> - I'll write a script that will pull out these transactions from my >> ledger and instead of transforming the Expenses account this time, it will >> transform the other (assets or liabilities accounts) postings to a generic >> "inflow" contribution account from his father. That will output some other >> file in Beancount format. >> >> - Similarly, I'll also write another script that will pull information >> from a spreadsheet for his mother's expenses related to him. She doesn't >> maintain her own Beancount file - alas! - but can hopefully put her >> expenses for him on a spreadsheet, manually. That script will convert this >> Google spreadsheet to a Beancount file for his Mom's contributions, booked >> against a similar inflow-from-Mom account. >> >> - Finally, I'll create some top-level Beancount file that will contain >> common definitions and such and which will include the two dad.beancount >> and mom.beancount file. That should form his dataset with his own report. >> >> I made a little diagram to show this flow more clearly: >> https://docs.google.com/drawings/d/18fTrrGlmz0jFbfcGGHTffbdR >> wbmST8r9_3O26Dd1Xww/edit?usp=sharing >> >> Now, one remaining question regards whether those conversion scripts >> ought to always reconvert the entire set of transactions. I think the >> answer to that is: no. For instance, once imported, spreadsheet lines which >> have been accounted for in the mom.beancount file can be safely ignored. >> Mom can delete the spreadsheet contents once the transactions have been >> included. That's a choice, however, it doesn't have to be that way, but if >> it didn't, I suspect the spreadsheet would grow very large. Also, not >> reimporting and doing some sort of fuzzy matching between the spreadsheet >> or personal.beancount file contents to identify those transactions which >> have already been imported would allow me to do minor manual edits to the >> imported transactions, such as adding comments or tags, or perhaps the >> occasional refinements to categorization. Now someone more pedantic might >> choose to set this up such that the "pristine" source of transaction is >> always the upstream personal.beancount ledger and the Mom spreadsheet, and >> that those files be always recreated entirely from scratch. That's also a >> valid design, it just sets a higher level of dedication over time to those >> pristine sources. >> >> Hopefully, if time allows - between moments patting the kid to sleep and >> feeding him bottles and responding to his cute noises and trying to guess >> the particular origins of his numerous and often unexplained dramatic >> wailing moments - you should eventually see some of these scripts appear >> under beancount/experiments/ >> >> >> >> >> Cheers, >>> Andreas >>> >>> >>> On Sunday, December 24, 2017 at 1:57:54 PM UTC, Dominik Aumayr wrote: >>>> >>>> To give another example: My partner uses Beancount and Fava ( >>>> https://beancount.github.io/fava/) as well, and we both have a >>>> Liabilities-account for each other. So if I buy something that belongs to >>>> her but I pay, I create an according transaction (eg. Assets:CreditCard and >>>> Liabilities:Partner), and she does the same in the opposite direction. For >>>> expenses that are split between us half of it goes to my Expenses account, >>>> and half to her Liabilities account (eg. Assets:CreditCard, Expenses:Rent >>>> and Liabilities:Partner). >>>> >>>> At the end of each month we both compare the balance of her >>>> Liabilites-account in my journal, and mine in her's, and make a balancing >>>> (real) transaction accordingly. >>>> >>>> After we do that, I wrote an exporter/importer for Fava that >>>> (a) is used to export a report from my Journal with her >>>> Liabilities-account and it's transactions in the last month, and >>>> (b) is used to import this file with transactions (beancount-format!) >>>> into her journal (via a Fava importer). >>>> (c) vice-versa for her >>>> >>>> This way, we both have all the transactions concerting both of us in >>>> each of our journals, and a way to correct them if something is not >>>> clear/wrong. Sounds like a little bit of work, but configured the right way >>>> (talking about the importer) and this is a 2-minute task each month. >>>> >>>> Best, >>>> Dominik >>>> >>>> >>>> > Am 24.12.2017 um 07:03 schrieb Martin Blais <bl...@furius.ca>: >>>> > >>>> > I do this too - my partner and I share most expenses - and the >>>> simple way is to create for your girlfriend an assets account (if she >>>> generally pays after the fact) or a liabilities account (if she generally >>>> pays ahead of time), and then to use the SQL client to generate a journal >>>> of that account to list all that was posted and compute the current balance >>>> (ours gets uploaded to a Google Sheets doc where she can review it for >>>> errors or unexpected items). When your girlfriend/roommate makes transfers >>>> to pay for those shared expenses incurred on your side, you post the >>>> payment against that account. It's really convenient to have that account >>>> as you can use it for any other purpose, e.g., transfers, gifts, etc. "I'll >>>> just put it on your account," you can say. It's purely an electronic >>>> transaction between the two of you; the actual reconciliation is a separate >>>> concern. >>>> > >>>> > The other side of this coin is a bit more complicated though. I'm >>>> referring to the expenses which she pays for and which you do have to >>>> transfer to her. You can use the same account, but you need to find a way >>>> for her to communicate those expenses to you, so you can reduce the account >>>> accordingly. We use a Google Sheets document that she updates, and I simply >>>> update my corresponding transactions from that doc (I haven't automated >>>> getting all the details from it yet to create transactions, but it's >>>> doable). One challenge, you may find, is that your partner forgets to >>>> update the doc (and therefore doesn't always get the corresponding >>>> reimbursement). That's an ongoing issue; I have no solution for it other >>>> than to remind. >>>> > >>>> > >>>> > >>>> > >>>> > On Sun, Dec 17, 2017 at 9:27 AM, <adde...@gmail.com> wrote: >>>> > Hey, >>>> > >>>> > I'm trying to figure out a good simple strategy that allows me to >>>> track expenses that I share with my girlfriend. We live together and we >>>> have two types of shared expenses: the ones for our apartment like rent and >>>> utilities and the ones where usually I pay for something for the both of >>>> us. >>>> > >>>> > For the first type of transactions I don't care about the balance >>>> between us, she pays a fixed amount into my account from which most bills >>>> go out from each month. I do however care about having accurate tracking of >>>> these expenses so I can tell what our fixed monthly expenses are. For >>>> example, I want the full rent and cost of all the utilities to show up >>>> among my expenses. At the moment I'm tracking this using regular expense >>>> accounts which I create posts against whenever I pay our rent for example. >>>> I post the transactions where my girlfriend sends me the fixed amount as a >>>> special income account and I'm pretty happy with this solution (I think). >>>> > >>>> > I currently have no solution that I'm happy with for the second type >>>> of transactions. These transactions usually occur at an irregular basis and >>>> the amounts vary wildly and I always care about maintaining some sort of >>>> balance but whether I care about tracking the full value to an expense >>>> account or not varies. For example, if I pay for a pair of shoes she wants >>>> because she doesn't have any money in the currency then I'd want to keep >>>> track of the balance she owes me but not the expense. However if we go and >>>> buy Christmas decorations and I pay then I'd want to record the full amount >>>> to an expense account and half of the amount to an account that represents >>>> the money my girlfriend owes me. Preferably I'd like to track the balance >>>> between me and my girlfriend as an asset account as that to me seems like >>>> the quickest way to at a glance tell the status between us (but I may be >>>> wrong). >>>> > >>>> > I was playing around with using an intermediate liability account >>>> (see bellow) and I think I could calculate the balance between us with a >>>> query but since we already have a history and I just started using >>>> beancount I have no account to post the current balance against and future >>>> payments to balance this would be harder to track without an asset account? >>>> > >>>> > 2017-11-26 * "Christmas" >>>> > Expenses:Home:Decoration 30 GBP >>>> > Liabilities:Shared -30 GBP >>>> > >>>> > 2017-11-26 * "Christmas" >>>> > Liabilities:Shared 30 GBP >>>> > Liabilities:Amex -30 GBP >>>> > >>>> > Does anyone have any idea on how to track this in a neat way, >>>> preferably without plugins. And yes I've read the expense sharing cookbok >>>> but didn't see any solution I was perfectly happy with :). >>>> > >>>> > Cheers! >>>> > Andreas >>>> > >>>> > -- >>>> > You received this message because you are subscribed to the Google >>>> Groups "Beancount" group. >>>> > To unsubscribe from this group and stop receiving emails from it, >>>> send an email to beancount+...@googlegroups.com. >>>> > To post to this group, send email to bean...@googlegroups.com. >>>> > To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/beancount/4b167c55-e651-4d >>>> 93-a2a1-cebd41813a59%40googlegroups.com. >>>> > For more options, visit https://groups.google.com/d/optout. >>>> > >>>> > >>>> > -- >>>> > You received this message because you are subscribed to the Google >>>> Groups "Beancount" group. >>>> > To unsubscribe from this group and stop receiving emails from it, >>>> send an email to beancount+...@googlegroups.com. >>>> > To post to this group, send email to bean...@googlegroups.com. >>>> > To view this discussion on the web visit >>>> https://groups.google.com/d/msgid/beancount/CAK21%2BhP3DgZOr >>>> 62enBFA%2ByyW68bdGYHMh%3DpfqfgKhc5WHF9VZA%40mail.gmail.com. >>>> > For more options, visit https://groups.google.com/d/optout. >>>> >>>> -- >>> You received this message because you are subscribed to the Google >>> Groups "Beancount" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to beancount+unsubscr...@googlegroups.com. >>> To post to this group, send email to beancount@googlegroups.com. >>> To view this discussion on the web visit https://groups.google.com/d/ms >>> gid/beancount/c228fb07-b004-47d2-a294-5d411e7fbb6b%40googlegroups.com >>> <https://groups.google.com/d/msgid/beancount/c228fb07-b004-47d2-a294-5d411e7fbb6b%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> > -- You received this message because you are subscribed to the Google Groups "Beancount" group. To unsubscribe from this group and stop receiving emails from it, send an email to beancount+unsubscr...@googlegroups.com. To post to this group, send email to beancount@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/beancount/CAK21%2BhMsM6wwtLgjg%3DJXXJrGhsF8NLXQeFp_QgeU7x0J-aD5bA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.