I ran into an issue the other day on a client site with how transactions with fees show up in batches. I wanted to be sure it wasn't unique to their instance so I deployed a fresh CiviCRM 4.7.20 instance to test it out. It appears related to this ticket. What happens is that when you enter a transaction with a fee it shows in the batch as two separate transactions. One for the full (not net) amount of the transaction and one for the fee amount. Meaning that the batch total is more than the actual cash received. I've created a short video demonstrating it here. Am I doing something wrong here or is this just a bug?
The current batch total in CiviCRM is confusing as it is summing the amounts for all of the bookkeeping entries in the batch, NOT the total payments received for the contributions included or the total expected revenue from them.
To see this clearly, if you edit a contribution and change most fields this results in reversing and reposting a corrected copy of the transaction. Putting all of the relevant bookkeeping transactions into a batch results in a 'batch total' significantly larger than the contribution, even if you haven't changed the contribution amount.
We're finalizing (Sep 2017) some new functionality in core and extensions that will allow some batches to be used to more easily track batches of payments, and other ones to deal with non-payment bookkeeping entries.