separate payload and params