Explanation: This sentence is grammatically incorrect. The tense 'has had' (present perfect causative) clashes with the past time adverb 'yesterday'. The correct tense would be past simple causative: 'She had it delivered yesterday.' or if emphasizing the action of delivery itself, 'Mary didn't deliver a pizza herself. She had a pizza delivered yesterday.'
Correctness: Incorrect