Del Potro broke his Swiss opponent's serve in the final set to go up 2-0 and held on for a 7-6 (7-3), 4-6, 6-3 victory. Federer is a six-time champion at the ATP Worlds.
Del Potro and Federer, who had earlier clinched a berth in the semifinals, will lead Group B with identical 2-1 records in the round-robin tournament. World No. 1 Novak Djokovic of Serbia and Britain's Andy Murray advanced in Group A.
The semifinals will be played Sunday, followed by the championship match Monday.
Theater accidentally screens 'Nymphomaniac' trailer instead of Disney's 'Frozen'
Caroline Berg Eriksen: Soccer player's wife triggers debate with post-birth selfie