This is a very general bug that is found in most of the osCommerce Stores using default PayPal Module that comes with Vanilla 2.2 version of osCommerce.
The logic associated with the code is that on return to success page the data base tables will be populated for orders.But if for some reason a customer does not return then order is lost.
1) Add Order Holding Contribution.
(With this we can track those order’s status which order is placed but does not complete checkout process due to several reasons: (i.e. customers has paid payment in paypal but does not rerurn to store, while return to store computer getting shutdown or interrupttion of Internet connection, etc…))
2) Go for Paypal IPN version of Paypal Payment Module(Recommended).