The bout has been arranged after Pacquiao's followers on Twitter voted Khan as the opponent that they would like to see the Filipino fight next.
The 38-year-old boxing legend posted on Twitter: "Negotiations between team Pacquiao and team Khan have come to terms for the April 23 bout as this is what the fans wanted."
Khan, meanwhile, tweeted on his page: "My team and I have agreed terms with Manny Pacquiao and his team for a super fight."
Six-weight world champion Pacquiao retired in April last year but returned to claim his belt by beating Jessie Vargas in November.
Khan's last fight was in May 2016 when he was knocked out by Mexico's Canelo Alvarez.