The 21-year-old slotted home with just eight minutes on the clock at the DW Stadium, but the Latics – who had Chey Dunkley sent off – surrendered their perfect start to the League One season, as Pompey, who also had Gareth Evans dismissed, snatched an equaliser through Conor Chaplin.
Toney was replaced by Terrell Thomas just after the hour, with Wigan moving down to second place in the table.
And another Magpies youngster, Sean Longstaff, continued his own fine form in front of goal, netting his third goal in as many games in Blackpool’s 2-1 win over Oldham Athletic.
Longstaff’s spectacular 25-yard drive at Bloomfield Road got the Tangerines on their way after six minutes, and Kyle Vassell made it two before Darius Osei pulled one back for the visitors.
Nineteen-year-old Longstaff played the full 90 minutes for Gary Bowyer’s side, who move up to eighth in League One.
Winger Alex Gilliead started for Bradford City, but was replaced just before the hour in their entertaining 3-3 draw at Walsall in League One.
It was a miserable afternoon for Adam Armstrong, though, as Bolton Wanderers were beaten 4-0 at Hull City in the Championship.
Armstrong played the full game for the Trotters, but couldn’t help Phil Parkinson’s men muster a response.
Scottish centre back Stuart Findlay made his second debut for Kilmarnock in their 2-2 draw with Hamilton Academical in the Scottish Premiership.
In the National League, defender Callum Williams got another 90 minutes under his belt as Gateshead recorded a clean sheet in their 0-0 draw at home to FC Halifax Town.
And goalkeeper Matz Sels also kept a clean sheet, in Anderlecht’s goalless draw at Gent in the Belgian First Division A on Sunday.