Erling Haaland scored twice as Borussia Dortmund emerged with a hard-fought 4-2 win over Union Berlin in the Bundesliga on Sunday.

The 21-year-old Norwegian grabbed Dortmund’s second goal in the 24th minute and secured the result in the 83rd just after Union scored to set up what looked like a nervy finale.

The visitors made a good start in Dortmund, where Taiwo Awoniyi had a first-minute goal ruled out for offside.

There was nothing Union could do about Raphaël Guerreiro’s opening goal in the 10th, when the Portugal defender let fly with a spectacular volley over goalkeeper Andreas Luthe and inside the far corner.

READ : Ligue 1: Icardi gives PSG win over Lyon on Messi home debut

Thomas Meunier set up Dortmund’s second as Haaland beat two Union defenders to reach the Belgian’s cross. It got worse for Union early in the second half with an own-goal from captain Marvin Friedrich, who was trying to cut out Marco Reus’ cross in the 52nd.

Max Kruse pulled one back with a penalty in the 58th after a foul from Axel Witsel on Kevin Behrens, who had just come on for Union.

Dortmund’s intensity had dropped and Andreas Voglsammer — another substitute — rewarded Union’s efforts with a header from a corner in the 81st.

However, Haaland sealed the win two minutes later, stretching to lift the ball beyond Luthe and inside the far post.

It was Haaland’s 11th goal from seven games across all competitions for Dortmund this season.