Create a return payment if the client has overpaid

When the client pays a sale, than later the sale is edited and its value
decreases, the client has overpaid.

This patch will create a return payment for the client (either money or
credit), for the overpaid value.

Change-Id: I3224f7a4eaaee3b421be0b3e658a628054b21cc3