Full workflow without service