Companies will be breaking the law if they delay or refuse refunds, warns the competition watchdog.