Handle negative amount in transactions #6347

An AuthorizeInvalidError is raised when amount is negative, so
instead of raising it, we log it in transaction.