If caller ID is being sent, then it should pass it on automatically. What sort of trunking are you using? If it is via a gateway, then a setting may be incorrect. Have you checked the 3CX Activity Log to confirm that caller ID is actually being sent?