Richards ended the deadlock in a dramatic finish as Wales stretched their unbeaten run to 15 games.
Wales finish their group effort against Belarus on Wednesday, 9 August (18:00 BST) and the winners will top Pool B.
The semi-finals are on Friday, 11 August with the final the following day.
The hosts opened their campaign with a 6-1 win over Austria.
Media playback is not supported on this device
Goalscorer Pheobe Richards said: "It was a stressful game for our part.
"We didn't really play as well as we did in the previous game, but we showed a lot of resilience because we stuck to the process.
"We knew fitness wise, if we got to the fourth quarter still at a draw, then we would be fine and it showed in the end."
Captain Abi Welsford and Leah Wilkinson joined Wales hockey legend Anne Ellis on a record 138 caps.
Welsford added: "If we had written it beforehand, that might be what we did - qualify for the semi finals with a game to spare - you can't really ask for much more than that.
"But we know we've got an awful lot to work on if we want to do well in the semi finals."
Phoebe Richards' goal three minutes from time sealed Wales' place in the EuroHockey Championships B Division semi-finals in Cardiff.