App should remember that a transaction has been sent

Currently as soon as the transaction is sent the balance gets deducted and a pending transaction shows up in history. But when user refreshes the wallet just goes back to the pre-send state. 

The app should remember the transaction until the actual transaction shows up on the network; only then we "forget" the transaction by deleting it from db