returns a transaction