transaction procedure