The singer, who performed 'No Name' on last week's show, originally took part in The Voice of Ireland but was sent home after his first night.
The teenager signed a deal with Universal Music, which includes touring commitments, when he appeared on The Voice, and is now locked into that contract.
A Britain's Got Talent source told The Sun: "Ryan can't take part in the live shows unless he is released from the contract."
Universal has said that O'Shaughnessy can continue with BGT but has refused to release him from the contract he signed.
O'Shaughnessy is now planning to hire a lawyer in a last-ditch attempt to get out of the contract in time for the Britain's Got Talent live shows.
The girl who inspired 'No Name' was recently revealed as his "best pal" Katie Lucia Keegan.
> BGT Ryan O'Shaughnessy on 'No Name' girl: 'We'll stay friends'
Watch Ryan O'Shaughnessy perform 'No Name' on Britain's Got Talent below: