With the 3CX VOIP based phone system when you put a call on 'hold' is is only retrievable from the phone that placed the call on 'hold'.
Most likely what you will want to use is what 3CX calls 'Shared Park'. There are several Shared Park 'orbits' as they are called. When you place a call in Shared Park then it can be retrieved from any phone on the system.
When you have a call engaged and you want to place it in Shared Park 1 do thus:
Use Blind Transfer and transfer the call to *01. Press Transfer (not Attended Transfer), then key in *01 Transfer
To retrieve the call from another phone or the 3CX mobile app - just dial *11 SENDorCALL
Thee are several shared park orbits numbered consecutively i.e. 1, 2, 3, .... 9
So you could park multiple calls using *01, *02, etc.