mirror of
https://github.com/simonmichael/hledger.git
synced 2024-09-18 17:57:11 +03:00
61 lines
2.0 KiB
Plaintext
61 lines
2.0 KiB
Plaintext
# Sample hledger CSV conversion rules for Daedalus's transactions export, tested with daedalus 5.3.
|
|
|
|
# The account corresponding to the CSV. This could be in a parent rules file including this one.
|
|
account1 assets:cc:cardano:wallet1:YYYY-MM-DD
|
|
|
|
# ID,Type,TOTAL (ADA),Sent amount (ADA),Deposit amount (ADA),Fee (ADA),Tokens (unformatted amounts),Date & time,Status,Addresses from,Addresses to,Withdrawals
|
|
fields id, type, total_ada, sent_ada, deposit_ada, fee_ada, tokens, datetime, status_, addresses_from, addresses_to, withdrawals
|
|
skip 1
|
|
newest-first
|
|
date %datetime
|
|
date-format %Y-%m-%dT%T%Q%Z
|
|
if ! %status_ Confirmed
|
|
status !
|
|
description %type %tokens
|
|
|
|
# Received
|
|
# posting 1 is for the wallet
|
|
# posting 2 is for the source
|
|
|
|
# The from: and to: tag values should probably have their commas removed.
|
|
|
|
if %type Received
|
|
comment \nfrom: %addresses_from\nto: %addresses_to\nwithdrawals: %withdrawals\nid: %id\ndatetime: %datetime\nstatus: %status_\ncc-ada-acquire:
|
|
amount %total_ada ADA
|
|
comment1 TODO: add lot date & cost
|
|
|
|
# Sent
|
|
# posting 1 is for the wallet
|
|
# posting 2 is for deposits
|
|
# posting 3 is for fees
|
|
# posting 4 is for the destination
|
|
|
|
if %type Sent
|
|
comment \nfrom: %addresses_from\nto: %addresses_to\nwithdrawals: %withdrawals\nid: %id\ndatetime: %datetime\nstatus: %status_\ncc-ada-dispose:\nTODO: select source lots; add costs & prices & gain/loss
|
|
amount1 %total_ada ADA
|
|
|
|
if %type Sent
|
|
& %deposit_ada [1-9]
|
|
amount2 %deposit_ada ADA
|
|
account2 assets:cc:cardano:wallet1:deposit
|
|
description %type deposit
|
|
|
|
if %type Sent
|
|
& %fee_ada [1-9]
|
|
amount3 %fee_ada ADA
|
|
account3 expenses:fees:cardano
|
|
|
|
# The CSV duplicates the amount in sent deposit transactions so we need to avoid those here.
|
|
# &! is not yet supported, work around with a regexp.
|
|
if %type Sent
|
|
& %sent_ada [1-9]
|
|
& %deposit_ada ^[^1-9]*$
|
|
amount4 %sent_ada ADA
|
|
account4 expenses:unknown
|
|
|
|
# Categorise manually, or add categorising rules below.
|
|
|
|
if %addresses_to addr1alksjdflkjsadfff098234lkjlkjasfd09234jlljkasdf09234jl
|
|
account4 assets:cc:cardano:wallet2:YYYY-MM-DD
|
|
comment4 TODO: add lot date & cost
|