implement rest of transaction methods