implement transaction create method with tests