The runners-up berth has already been sewn up ahead of their final qualifier in Norway on Sunday, and they could be assured of a play-off place before that if results on Saturday night go their way.
Crucially for O’Neill, neither their goal difference or perilous disciplinary situation were impacted too much - and they remain very much on course for a two-legged tie in November that will determine if they will join Germany in Russia.
As was the case with so many German attacks in the first period, it originated down the right. Leon Goretzka’s cross was volleyed out by Lee Hodson to Kimmich and he teed up his Bayern team-mate Rudy to unleash a 30-yard bullet into the top corner.
The Germans’ did not have to wait long to double the visitors’ lead.
Thomas Muller rolled the pass into the Hoffenheim forward and he took a touch to open his body up and turn away from McAuley before ruthlessly rifling a left-footed attempt beyond McGovern.
O’Neill recognised the need to try and nullify Kimmich’s threat and brought on Stuart Dallas at the start of the second period for Hodson, switching to a back four in the process, and the home side were much improved after the break, even if they were indebted to McGovern’s fine save to deny Muller.
Another opportunity to make it 2-1 was passed up, substitute Conor Washington side-stepping Jerome Boateng with ease only to lash his attempt on to the frame of the goal.
Kimmich’s quieter second half did not prevent him from getting in on the act as his fine volley beat McGovern at his near post.
Amazingly, the Green and White Army were still singing at full-time thanks to Magennis heading home from a Brunt corner that was directed to him by McAuley.
A historic win proved beyond Northern Ireland, but the chance to make history by reaching back-to-back finals is still on regardless.
McGovern, Jonny Evans, Conor McLaughlin, McAuley, Hodson (Dallas 46), Brunt, Norwood, Davis, Corry Evans (Saville 80), Daniel Lafferty (Washington 69), Magennis.
ter Stegen, Kimmich, Boateng, Hummels, Plattenhardt, Rudy, Kroos, Goretzka (Can 66), Muller (Stindl 83), Draxler (Sane 72), Wagner.