Caller ID when transferring calls

I’m trying to figure out how to configure an extension so that when a call is transferred internally, the receiving extension shows the CID of the external caller not the extension transferring the call. We have a client that has several extensions on the same switch; when they transfer a call internally sometimes they see the CID of the external caller, sometimes they see the extension number that’s transferring the call. They’re stating that the behavior is consistent depending on which extension the call is being transferred from. All phones are the same make / model and as far as I can tell, all the extensions are set up the same way.

Is there some per-extension option I’m missing that would control this?

I think you have to look at the RPID setting in the extension. I played with that once, but don’t remember the specifics.

There’s a Send RPID and Trust PID. From what you are describing, I’d set the TRUST RPID to YES.

RPID = Remote Party ID (CallerID)

It looks like they’re all set to Trust RPID - Yes and Send RPID - Send P-Asserted Identity Header.