Particularly for debit/credit card accounts, t really doesn't matter at all 
in my decade+ long experience, as long as you are consistent.

The only related issue is how to date your balance assertions. Here 
<https://groups.google.com/g/beancount/c/uvLRzeCSJnY/m/GXgKMoxQBAAJ> is a 
thread and here 
<https://reds-rants.netlify.app/personal-finance/automating-balance-assertions/>
 
is how I do it.


On Friday, April 2, 2021 at 5:38:02 AM UTC-7 tomasz.z...@gmail.com wrote:

> Thank you everyone for responses.
>
> Just to clarify a little, I am not interested here in the "transfer" 
> usecase which can be solved with limbo account very cleanly as mentioned 
> here and there is indeed a lot of discussions on this topic (I think it 
> would be useful to collect all the information / idea on this topic in one 
> place, but let's leave it for a separate thread for now). Here I was mostly 
> interested in very simple transactions from debit / credit cards e.g. a 
> grocery or train tickets (let's also ignore trading accounts). Or am I 
> splitting hair here and it does not matter in the long term which date is 
> actually being used?
>
> On Friday, April 2, 2021 at 11:08:11 AM UTC+2 bl...@furius.ca wrote:
>
>> This is a known issue, see the settlement dates proposal, is being 
>> handled in the c++ rewrite, see v3 design doc. Also lots of history on the 
>> mailing list.
>>
>> Currently you either fudge the dates or skip the occasional balance 
>> assertion that doesn't want to cooperate. It's unsatisfying but I've been 
>> living with it for ten years now
>>
>> Eventually the solution will allow you to provide both dates and the 
>> transaction will be split to two with a transfer account where the funds 
>> will transit through an account where the amounts in limbo sit.
>>
>> This could be handled by a simple plugin in you feel like it. Use 
>> metadata for the second date and split the transactions in the plugin. 
>> Should be core functionality though
>>
>>
>> On Fri, Apr 2, 2021, 02:35 Tomasz Zurkowski <tomasz.z...@gmail.com> 
>> wrote:
>>
>>> Hello everyone,
>>>
>>> I am still pretty new to beancount (I started my adventure around a 
>>> month ago) and I am still tuning my importers and my ledger.
>>>
>>> When writing importers for my banks, I realized that they often provide 
>>> multiple dates for one transaction, e.g. "booking date" and "purchase 
>>> date"), and I was wondering which I should choose as the date for the 
>>> transaction entry. Also, I was wondering if one of them is better, or 
>>> whether it is just a preference (e.g. if I would like to open source / 
>>> share the importers, should it be an option to choose one or the other, or 
>>> can I just choose one of them).
>>>
>>> Let me describe situation with UBS bank statement - they provide 3 
>>> dates: "booking date", "trade date", "value date". Here is my current 
>>> understanding of them:
>>>
>>>    - booking date - a day when bank puts a transaction into their 
>>>    books. Most of the time (always?) it is greater or equal to the other 
>>> two 
>>>    dates. I also believe it has the nice property that once there is a 
>>>    transaction with date X, then later imports (new transactions) will 
>>> never 
>>>    have a date X or before (which makes "balance" entries stable and never 
>>>    brake).
>>>    - trade/value date - I believe this is the date when the trade 
>>>    actually occurred. For example if I bought something on Saturday, the 
>>> day 
>>>    will be Saturday but it can be booked on following Monday. The only 
>>>    difference between trade and value date I found was when there is a 
>>>    "e-bill" (a way in Switzerland to automatically pay bills). In this case 
>>>    "trade date" will have a date when the transaction first shows in the 
>>> bank 
>>>    account "e.g. 2021-01-29", but then the value date is when the 
>>> transaction 
>>>    was scheduled for (e.g. first of the month, 2021-02-01). Booking date 
>>> seems 
>>>    to also match 2021-02-01 for those transactions (but I only have few of 
>>>    those, so I am not sure if they will always match). There is one more 
>>>    difference, when importing transaction, one can choose them to sort them 
>>>    either by "booking date" or "trade date" - there is no way to sort them 
>>> by 
>>>    "value date" (import contains the "balance" column, that I could use to 
>>>    generate automatic "balance" entry).
>>>
>>> Currently, I am using "value date" because it represents the actual date 
>>> of the trade (which helps me to remember what the transaction was for, if 
>>> the default bank transaction description is not clear), and it also 
>>> properly dates the periodic transactions that happen on e.g. first of the 
>>> month (makes sure there is always 1 transaction for rent in a given month).
>>>
>>> I am also consider using "booking date" (and saving "value date" 
>>> somewhere in the default description), so that I can automatically insert 
>>> "balance" entries, and those entries should almost never break with the new 
>>> import.
>>>
>>> UBS credit card importer has very similar issue, the data contains two 
>>> dates: "booking date" and "purchase date" that have similar properties to 
>>> the above one. Small note I want to add here is a refund scenario. If I 
>>> purchased something on 2021-03-15, and then I return it, it is possible 
>>> that return will be processed much later (even 2 months later), so it could 
>>> be booked on "2021-05-15", but it would still have purchase date 
>>> "2021-03-15" (which means if I have any "balance" entries in my ledger, 
>>> they all break and I have to manually adjust them).
>>>
>>> Does anyone has similar issues? Any recommendations? Is it a personal 
>>> decision (some people prefer one or the other), or is there a better choice 
>>> (or something that should be at least considered a default / best 
>>> practice)? I would love to hear from others!
>>>
>>> Thanks,
>>> Tomasz
>>>
>>> -- 
>>> 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 view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/beancount/d2d384f1-8658-4268-9b66-ba5e63d13433n%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/beancount/d2d384f1-8658-4268-9b66-ba5e63d13433n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/beancount/f8fa186b-ca40-44d6-801a-ac0122bab728n%40googlegroups.com.

Reply via email to