Widespread adoption of indoor positioning systems based on WiFi fingerprinting is at present hindered by the large efforts required for measurements collection during the offline phase. Two approaches were recently proposed to address such issue: crowdsourcing and RSS radiomap prediction, based on either interpolation or propagation channel model fitting from a small set of measurements. RSS prediction promises better positioning accuracy when compared to crowdsourcing, but no systematic analysis of the impact of system parameters on positioning accuracy is available. This paper fills this gap by introducing ViFi, an indoor positioning system that relies on RSS prediction based on Multi-Wall Multi-Floor (MWMF) propagation model to generate a discrete RSS radiomap (virtual fingerprints). Extensive experimental results, obtained in multiple independent testbeds, show that ViFi outperforms virtual fingerprinting systems adopting simpler propagation models in terms of accuracy, and allows a sevenfold reduction in the number of measurements to be collected, while achieving the same accuracy of a traditional fingerprinting system deployed in the same environment. Finally, a set of guidelines for the implementation of ViFi in a generic environment, that saves the effort of collecting additional measurements for system testing and fine tuning, is proposed.