Thanks for this, Ross. I asked a similar question in July, but your look into the code gave a much better answer than I got.
It would be very nice if this information can be added to section 2.8.2 of the Tutorial and Concepts manual. Stan Brown Tehachapi, CA, USA https://BrownMath.com On 2024-10-01 10:54, Ross Reedstrom wrote: > So, answering the question. Internally, GnuCash has an enumeration > GnuAccountType, which that drop down is populated from. There are > conditionals all over the code that switch based on the account type. One > significant one for answering your question (Cash vs. Bank or any other > Asset account, Credit vs. generic Liability) is that there are two > mappings for human friendly column names for "debit" and "credit" actions. > > Cash uses "Receive" and "Spend". Bank uses "Deposit" and "Withdraw". Asset > uses "Increase" and "Decrease". On the other side of the ledger, Credit > uses "Payment" (debit) and "Charge" (credit), generic Liability uses > "Decrease" (debit) and "Increase" (credit). Helps get past the > non-accountants "Wait, I debit the cash account when I put money in my > wallet???" confusion. > > There are probably other differences, but that's what I found with a quick > search through the code. Note that the code is well structured, and > heavily commented with good comments, for example: > > /* The type field is the account type, picked from the enumerated > * list that includes ACCT_TYPE_BANK, ACCT_TYPE_STOCK, > * ACCT_TYPE_CREDIT, ACCT_TYPE_INCOME, etc. Its intended use is to > * be a hint to the GUI as to how to display and format the > * transaction data. > */ > > Hope that helps. > > Ross > > On Tue, Oct 1, 2024 at 12:24 PM Chris Miller via gnucash-user < > gnucash-user@gnucash.org> wrote: > _______________________________________________ gnucash-user mailing list gnucash-user@gnucash.org To update your subscription preferences or to unsubscribe: https://lists.gnucash.org/mailman/listinfo/gnucash-user ----- Please remember to CC this list on all your replies. You can do this by using Reply-To-List or Reply-All.