CHELSEA had the lion’s share of possession but faced a well-organised and resilient Palmerias team who were tough to break down.
After half time, the Blues came out with fresh energy and were immediately rewarded when a Romelu Lukaku bullet header found the top corner.
But the Brazilians found their way back into the game when they were given a penalty for a Thiago Silva handball, concluded by VAR.
Palmeiras held on to produce extra-time but another handball was given by VAR to allow Havertz to win it for Chelsea.
Thomas Tuchel will be desperate to keep Antonio Rudiger at the club as they face a summer of contract negotiations in the back line.
EDOUARD MENDY – 7/10
Dealt well with a dangerous header when he was under pressure in the 17th minute.
Handled anything that came his way.
ANDREAS CHRISTENSEN – 6
Reasonably solid but a poor header nearly gave Palmeiras a chance in the 32nd minute.
JOIN SUN VEGAS: GET A FREE £10 BONUS WITH 100s OF GAMES TO PLAY AND NO DEPOSIT REQUIRED (Ts&Cs apply)
THIAGO SILVA – 6
Played the centre of the back three as usual but was frustrated by lack of movement in front of him when in possession.
Hit a 40-yard blaster which produced a finger-tip save.
Was unfortunate to give away the penalty but his hand was unnecessarily high.
ANTONIO RUDIGER – 7
Looked comfortable at the back but got up to head a corner over just before half time.
Very assured performance.
CALLUM HUDSON-ODOI – 6
Fairly non-existent in first half.
Poor end product for the most part but produced a pearler for the goal, right onto Romelu Lukaku’s head.
Kept fighting until he was taken off.
MATEO KOVACIC – 7
Consistently dropped deep to collect the ball in front of the back four and start the play.
Battled well and made some big tackles.
N’GOLO KANTE – 7
Had freedom to roam forward tonight. Was key to opening Palmeiras up in the second half.
CESAR AZPILICUETA – 6
Played very high up due to constant Chelsea possession and did not create a great deal.
Won the penalty in fortunate circumstances.
KAI HAVERTZ – 7
Disappointing opening half an hour but kept trying to put his stamp on the game.
Some good touches all round but got his moment eventually, burying the penalty.
ROMELU LUKAKU – 7
Good hold up play at the start but had his back to goal too much.
Brilliant header for the goal, straight in the top corner.
Whipped off for Timo Werner as the Blues went for a winner, presumably to rest.
MASON MOUNT – 5
Was a busy and skilful start from the Englishman but he was tugged off on the half an hour mark for Pulisic for an apparent injury.
CHRISTIAN PULISIC (for Mount, 31) – 7
Made an impact straight away with some good build-up play.
The American was close to scoring as he flashed wide twice in the second period.
TIMO WERNER (for Lukaku, 76) – 6
Nippy as ever and gave the Palmeiras defence something to think about.
SAUL NIGUEZ (for Huson-Odoi, 76) – 5
Went largely unnoticed.
MALANG SARR (for Christensen, 91) – 6
Looked decent and will be pleased to get more under his belt.
HAKIM ZIYECH (for Kovacic, 91) – 7
Fresh legs were needed in extra-time as the Blues went for win.