[GNC] CVS Deposit Issue

Geert Janssens geert.gnucash at kobaltwit.be
Wed Apr 26 05:02:59 EDT 2023


Hi Chris,

The names "Deposit" and "Withdrawal" are a bit misleading. In 5.0 they have been renamed 
to "Amount" and "Amount (negated)" in the hopes this will slightly improve the situation.

Internally, gnucash stores only one single amount per transaction(split). So that's what 
eventually has to be derived from the CSV data. Which columns to select depends on the 
initial structure of your CSV data.

I'll give a few examples to illustrate (I have added spaces in the examples to have a nicer 
alignment - they should not be in the CSV data):

Example 1:
Date,       Description,   Amount
23/04/2024, Sell Widget A, 100.00
23/04/2024, Buy Groceries, -56.00

This is an example of a CSV file in which all the amounts are in a single column. Incoming 
money is represented with a positive amount, money going out is represented with a 
negative amount.

To import this you'd set the Amount column to "Deposit" (or "Amount" in 5.0), which gnucash 
interprets as "use these amounts as they are, no changes required".

Example 2:
Date,       Description,   Debit,  Credit
23/04/2024, Sell Widget A, 100.00,   0.00
23/04/2024, Buy Groceries, 0.00,    56.00

This is an example of a CSV file in which incoming money is represented as a positive 
number in the Debit column and money going as a positive number in the Credit column.

To import this you'd set the Debit column to "Deposit" (or "Amount" in 5.0) and the Credit 
column to "Withdrawal" ("Amount (negated)" in 5.0). That way you instruct GnuCash to use 
the Debit numbers unchanged and negate the Credit numbers.


Example 3:
Date,       Description,   Deposit, Withdrawal
23/04/2024, Sell Widget A, 100.00,  -100.00
23/04/2024, Buy Groceries, -56.00,    56.00

This example is similar to your demo. It has both a deposit and a withdrawal column which 
essentially hold the same information, albeit one is negated version of the other.

GnuCash only needs this information once, so in this case you choose only one column in the 
importer. You can either set the "Deposit" column to "Deposit" (or "Amount" in 5.0) or set the 
"Withdrawal column to "Withdrawal" (or "Amount (negated)" in 5.0), but not both. If you set 
both, GnuCash will assume you meant to combine both columns in to a single one (like the 
previous example) and will perform the calculation
amount = deposit - withdrawal
for each row. And that would indeed result in doubling all amounts while importing for this 
kind of CSV file.

Hopefully this will clear it up for you.

Regards,

Geert

Op woensdag 26 april 2023 01:13:51 CEST schreef Chris Ledbetter via gnucash-user:
> I am importing Transactions via CSV.  When the importing is finished the
> Deposit is being doubled upon import.  I am using 4.12 and have not updated
> yet since I am doing a lot of input and would rather not mess with this
> until later.  I use a MacBook Pro M1 Ventura 13.3.1.  Here is a demo import
> CSV file that Deposits $15 via import but should be $7.50.  I have been
> going in and dividing transactions in the register by 2 to get the correct
> values.  I just tried dividing the cells by 2 before exporting to CSV but
> when the system doubles the amount at import, there is often a penny
> difference.  If there is an easy work around that will be fine.  I can get
> by doing the math in the register but I’d rather not.  Here is a screenshot
> of my sample numbers file that I export to CSV before I import.  Thanks


More information about the gnucash-user mailing list