better error message when exchange fails