Sources close to Liverpool told ESPN FC that the total deal is worth €39 million (£34.3m) and could be a club-record transfer fee, depending on the exchange rate of the British pound against the Euro. Liverpool paid £35m to Newcastle for Andy Carroll in January 2011.
Roma, though, said the deal was worth an initial €42 million (£36.9m), while incentives could add an additional €8 million (£7m).
Salah signed a five-year deal, one source said, and will wear No. 11, with Roberto Firmino agreeing to move to No. 9.
After completing a medical on Thursday, Salah becomes Liverpool's second signing of the summer, following Chelsea youngster Dominic Solanke.
Liverpool's pursuit of Salah goes back to the winter of 2014 when he nearly joined the Reds before eventually opting for Jose Mourinho's Chelsea.
However, his stay at Stamford Bridge was relatively short and unsuccessful, making just 19 appearances across two seasons.
The Egypt international moved to Fiorentina on loan in February 2015 before signing permanently for Roma last summer after a loan spell at the club.
The 25-year-old helped Roma finish as runners-up to Juventus in Serie A, scoring 15 goals in 31 league appearances.
Liverpool have been keen to recruit another winger since last summer, with Klopp interested in Christian Pulisic and Bayer Leverkusen's Julian Brandt, but neither appears likely to move this summer.
This story has been reproduced from today's media. It does not necessarily represent the position of Liverpool Football Club.