[GNC] Removing commission split on stock transaction

Jim DeLaHunt list+gnucash at jdlh.com
Sun Mar 1 16:38:10 EST 2026


On 2026-02-28 19:36, Fred Tydeman wrote:
>
>
> On Sun, Mar 1, 2026 at 9:33 AM Jim DeLaHunt <list+gnucash at jdlh.com 
> <mailto:list%2Bgnucash at jdlh.com>> wrote:
>
>     Fred:
>
>     On 2026-02-28 11:52, Fred Tydeman wrote:
>     > ...I am importing stock transactions from an old Quicken.
>     > Many of those transactions have a small commission
>     >     (due to rounding error in price).
>     > Those transactions end up in GnuCash with 5 splits:
>     >    stock
>     >    cash
>     >    commission
>     >    trading (stock)
>     >    trading (cash)
>     > I try to remove the commission split by deleting
>     >    commission
>     >    trading (stock)
>     >    trading (cash)
>     > When I click on Enter, those three splits reappear.
>     >
>     > If I change the dollar amount in the trading (cash) split,
>     > it reverts back to the previous value when I press Enter.
>     >
>     > What is the correct way to remove the commission split?
>
>     I suspect that the trading (stock) and trading (cash) splits are to
>     trading accounts. GnuCash enters them to make the sum of all stock
>     splits in the transaction, and of all cash splits in the transaction,
>     sum to zero.
>
>
> Correct, they are trading accounts.
>
>     If the non-Trading splits ever sum to something other than zero,
>     GnuCash
>     will add a corresponding Trading split. Thus deleting them does no
>     good.
>     You must instead ensure that the other splits sum to zero.
>
>
> That is what I am trying to do by deleting both trading splits and the 
> commission split.
> So, all that is left is a stock split with the correct number of shares,
> and a cash split that is the correct total amount of money used.
The important extra fact to know is that the stock split has a cash 
amount embedded in it. I suspect that Quicken set this amount to 
something slightly different than the cash split. The difference is the 
commission amount.
> But, when I click Enter, the commission split comes back
> and the trading split with the dollar amount has the old value (total 
> - commission).
So, in addition to deleting the commission split, you need to change 
that cash amount in the trading split to be the (negative of the) amount 
of the cash split.
>
>     GnuCash does not store the cash amount of a stock split. It just
>     stores
>     the number of shares, and the price.  It calculates the cash
>     amount by
>     multiplying these two numbers. The number of shares in the
>     transaction
>     is an external fact from the brokerage statement. So is the cash
>     value
>     which the brokerage says you have. Thus you have to use those exact
>     numbers.  However, the price is under your control.
>
>
> I see no way to alter the price.

This may be a good time to re-read section 9.5. *Buying Shares*[1] and 
section 9.7. *Selling Shares*[2] of the GnuCash /Tutorial and Concepts 
Guide/[3].

[1] <https://www.gnucash.org/docs/v5/C/gnucash-guide/invest-buy-stock1.html>
[2] <https://www.gnucash.org/docs/v5/C/gnucash-guide/invest-sell1.html>
[3] <https://gnucash.org/viewdoc.phtml?rev=5&lang=C&doc=guide>

Are you in the correct register?  I suspect you might be in the register 
for the cash account associated with your investments. You should also 
have a stock register for each different stock or security associated 
with your investments. You can adjust the price from either place, but 
it is easier from the stock register.

Once your stock transactions are imported, and you open the GnuCash 
register for that stock, do you see columns for "Shares", "Price", 
"Debit" (or "Buy"), and "Credit" (or "Sell"), as shown in figure 9.10 
*The Transaction Register Of The AMZN Account After The First Purchase*, 
within section 9.5 of the Guide?

In the line for the transaction you want to correct, delete Price (leave 
it empty so it will be calculated), and enter the cash amount for the 
stock transaction in "Debit" (or "Buy"), and "Credit" (or "Sell") as 
appropriate. Press the Enter button. GnuCash fills in the transaction 
price as computed from the number of shares and the cash amount.

But the stock register does not show commissions. You are seeing a 
commission line, so I suspect you are looking at the register for the 
cash account. The way you adjust the price from there is to:

 1. Find the transaction where you buy or sell the stock.
 2. Click in the split within that transaction which refers to the stock
    account, has the number of shares transacted.
 3. In the "Actions" menu, select the "Edit Exchange Rate" entry. A
    dialogue appears. It is titled, "Transfer Funds".
 4. In the "Currency Transfer" section at the bottom of the Transfer
    Funds dialogue, click the radio button for "Debit Amount".
 5. Enter the desired cash amount of the transaction in the text box.
    This amount is positive or negative depending on whether this is a
    purchase or a sale.
 6. Press the OK button in the dialogue. The Transfer Funds dialogue closes.
 7. An imbalance split appears in the transaction. Its amount equals the
    commission amount, but in the other column (that is, with opposite
    sign).
 8. Delete the commission split. The commission split disappears, and
    the imbalance split also disappears. The trading splits appear, but
    with the appropriate amounts.
 9. Press the Enter button to save the transaction.

Something like this should get rid of the commission imbalance. I have 
not tried this experiment myself on a dummy file, so I'm guessing what 
happens in steps 7 onwards.

By the way, I always get confused about which sign to use in this 
dialogue box. I will often get it wrong two or three times before I get 
it right. Don't ask me how I can get a two-option choice wrong two or 
three times. I'm just special, I guess. Or the Transfer Funds dialogue 
is confusing.


> Perhaps, it has to be deleted from the price history.
> I tried removing the price for that day from the price history,
> then removed the commission split, and two trading splits.
> When I click on Enter, the commission comes back as Imbalance.
That is expected behaviour. The price history is helpful for reports, 
and for suggesting prices when entering transactions. But when you enter 
a transaction, GnuCash sets a price specific for that transaction. 
Further changes to the price history do not affect the price set within 
each transaction.
>
>     To drive the Trading split to zero, use the Transfer Funds
>     dialogue, and
>     the "To Amount" field. This forces GnuCash to set the price to that
>     exact fraction which, when multiplied by the number of shares,
>     gives you
>     the cash amount you want.  This might well mean that the price you
>     see
>     in GnuCash is different than the price reported by the brokerage.
>     That
>     is fine.
>
>
> I am trying to drive commission split to zero (not trading split).
> I tried using Transfer funds.  It has nothing to do with stock price.
> It is just moving cash from one account to another account.
Note that I said the "Transfer Funds dialogue", not "the 'Transfer…' 
entry in the 'Actions' menu". However, note that the Transfer Funds 
dialogue which appears in response to the 'Edit Exchange Rate' entry in 
the 'Actions' menu is very similar to the Transfer Funds dialogue which 
appears in response to the 'Transfer…' entry. This similarity comes from 
using one dialogue box for two purposes, which is expedient but leads to 
confusion.
>
>     Does that help?
>
>
> No. But thanks for trying.

Let me try again.  Does /that/ help?

Best regards,
       —Jim DeLaHunt


More information about the gnucash-user mailing list