MCB GoldLink, 3CX, and Call Transfers

One of the features of MCB GoldLink to 3CX is to “pop” the GoldMine record of an inbound call received through 3CX. However, users sometimes find that this doesn’t work as expected. Why not?

The short answer is, GoldLink can only find the GoldMine record when 3CX provides the external CallerID. You can see what number 3CX is providing in the 3CX Phone app.

Note that this article applies to 3CX Server version 15.5 SP5, 3CX Phone 15.5.12227.5, and GoldLink

An Example with GoldLink

Simplifying a bit, 3CX notifies GoldLink of three events for each call:  Started (or ringing), Connected, and Ended. A CallerID is provided with each event.

Let’s look at how calls behave if you have GoldLink configured as follows:

Caller ID Handling tab:

GoldLink Transfer 1

GoldMine History tab

GoldLink Transfer 2

Standard Call

On a “normal” call, as soon as the phone is ringing, 3CX sends a Start event with the external CallerID. 3CX Phone shows you the name and number of the calling party:

GoldLink Transfer 3

(Hint To always see the 3CX Phone dialog when a call comes in, click on the Settings gear icon in the lower right corner, then go to Advanced Settings >  Behavior and check the Focus box.)

Once you answer the call, 3CX Phone sends a Connect event and shows you in the call with various call options:

GoldLink Transfer 4

Because 3CX provides the external number, GoldLink is able to search for the number in GoldMine and “pop” the record if found.

Blind Transfer

If you do a Blind Transfer to another extension (here’s a Yealink example), the transferring station is off the call and the receiving station immediately gets the external CallerID, allowing GoldLink to “pop” the GoldMine record:

GoldLink Transfer 3

Attended Transfer

Here’s where things get dicey. If you instead do an Attended Transfer, the original call is placed on hold and a new call “leg” is created between the transferring station and the receiving station. When the receiving station first answers, they will only see the CallerID of the sending station, in this case 21:

GoldLink Transfer 5

Because the external number is not available, GoldLink cannot “pop” the record of the external caller. (3CX does send a Connect event with CallerID 21, but GoldLink ignores short numbers and does not attempt to “pop” anything in GoldMine.)

The final step in an attended transfer is for the transferring station to press the Transfer button. The transferring station drops off the call and the external caller is now connected directly with the destination station. In my testing, 3CX Phone changes to show the external Caller ID.

GoldLink Transfer 4

For some reason, 3CX Phone actually sends two Connect events in rapid succession, but at least they have the external CallerID. With that external Caller ID, GoldLink is able to find the record in GoldMine; it will open one History dialog for each Connect event, so you may see two History dialog events.

Workaround 1:  Shared Parking

3CX supports a nice feature called shared parking that offers a pretty clean workaround to the attended transfer issue. Rather than transfer a call directly to a person, the initial recipient station pushes the button for a numbered “parking spot,” essentially doing a blind transfer to the parking spot. Then they call the final recipient to notify them of the new call and the number of the parking spot. When the recipient picks up the call from the parking spot (also a single button press), they are directly connected to the external call; 3CX Phone provides the external CallerID and GoldLink is able to “pop” the GoldMine record.

Workaround 2:  Auto-Attendant

If you set up an auto-attendant (“phone tree”) to handle inbound callers, the auto-attendant will do a blind transfer to the extension and the external CallerID is preserved.

Workaround 3:  Direct Inward Dial (DID) Numbers

If your system is configured to assign an external phone number to each extension, the external number rings directly on the extension and the external CallerID is preserved.


Call transfers present a challenge to GoldLink because the way 3CX identifies callers. Blind Transfers work great. Attended Transfers seem to work, but only after the transferring station completes the transfer, and you may get duplicate Call History dialogs. Shared parking, auto-attendant, or DID numbers work around the transfer issue by providing the external CallerID directly to the final recipient. Talk to your 3CX vendor about how one of these options could work in your environment. .

Leave a Reply

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.

This site uses Akismet to reduce spam. Learn how your comment data is processed.