refund: add safety checks on amount

Make sure we cannot refund an amount greater than the original charge.

Signed-off-by: Pierre-Alexandre Meyer <pierre@ning.com>