Place an order of order total zero(0) with Billing Account as payment option.
Order gets placed successfully, but order payment preference of billing account gets created twice.
Steps to generate the issue:
1) Add promotions of Free Shipping and Free Tax from catalog for order
2) Go to order entry process and add customer
3) Add product to order and make its price 0.00 so that the cart total will be 0.00
4) Finalize order with Billing Account as Payment option and Create Order.
The code written for creating order payment preferences in 'makeAllOrderPaymentInfos' of ShoppingCart.java is creating issue.
There is no need to create the order payment preference after recalculating Billing account amount as it is done later in the CartPaymentInfo loop.