The bachelor prince has been secretly having a romance with US star Meghan Markle for several months. The 32-year-old royal is said to have first met the TV actress, who plays Rachel Zane in the hit TV series Suits, when he was in Toronto publicising his Invictus Games for disabled British troops.

The couple have met for several hush-hush assignations in London, according to media reports. "He's happier than he's been for years," a source told the Daily Star.

"They are taking each week as it comes and just enjoying each other's company but it's fair to say that they love seeing each other and there's a definite chemistry between them. He's in a very relaxed period of his life and Meghan has come along at the right time.

"Harry's been desperate to keep the relationship quiet – he doesn't want to scare Meghan off. He knows things will change when their romance is public but he also knows he can't keep it a secret for long."

Markle, who was born in LA but lives in Toronto, has shared two photos of her time in London on Instagram. In June and July she was spotted watching tennis from the royal box at Wimbledon. She is said to have stayed at Kensington Palace during her stay in the British capital and met Prince William and Kate Middleton.

The source said: "William and Kate really liked her and she fitted in well. Meghan is a very confident and intelligent woman and she's not overawed mixing with royalty. That's one of the things that Harry admires about her."

Meghan Markle at a promotional event for the TV show Suits
Meghan Markle at a promotional event for the TV show Suits Wikipedia

Markle, whose mother is African-American and her father of Dutch and Irish descent, is a global ambassador for World Vision Canada. She has also worked on behalf of the Clean Water Campaign in Uganda.

Prince Harry has reportedly been single since his break-up with English actress Cressida Bonas in 2014. Bonas said she couldn't bear the public scrutiny.

Suits Season 3 Premiere: Mike and Rachel Get Sexy
Markle with her co-star Patrick J. Adams in Suits. Tumblr