Teamleader Focus
Connect Teamleader Focus to Schedulinq — contacts, companies, appointments and team members, in both directions.
The Teamleader integration keeps your customer records in one place, whichever of the two systems you happen to be working in. New and changed contacts, companies and appointments then travel back and forth on their own.
This guide covers the integration as it stands in Schedulinq today: connecting, what syncs, the one-off import and export, linking team members, and disconnecting again.
Connecting
You'll find Teamleader under Settings → Integrations, in the CRM category.

The categories on the left count how many integrations each kind holds. Teamleader is the only CRM integration.
Click Connect
Schedulinq sends you to Teamleader to grant access. You sign in there with your own Teamleader account.

Give Schedulinq access
The consent screen belongs to Teamleader, not to Schedulinq. You grant access on behalf of the Teamleader account you are signed in with — so sign in with the account that holds the contacts and companies you want to connect, not a personal trial account.
You land back in Schedulinq
After granting access you return automatically, and Schedulinq opens the integration's settings page straight away. From now on the card in the overview carries a Connected label.

The settings page
Everything you can configure sits on one screen: Settings → Integrations → Teamleader Focus, or via the Settings button on the card.

The screen falls into four parts, and they genuinely do different things:
- Import from Teamleader — a one-off action you start yourself.
- Export to Teamleader — the same, in the other direction.
- Bidirectional sync — the ongoing connection, which runs by itself.
- Danger zone — disconnecting.
The distinction between the first two and the third is the most important thing on this page. Import and export are catch-up runs for what is already there; the sync handles everything that happens afterwards.
Bidirectional sync
These three switches decide what is kept in step continuously, without you doing anything.

Contacts
Default: onNew and changed private customers travel in both directions.
This is the switch to keep on if Teamleader is your customer administration. Turn it off and an address change you make in Schedulinq stays in Schedulinq — which you only notice when you see the old address in Teamleader.
Companies
Default: onThe same, but for business customers. In Schedulinq that is a customer of type Business; in Teamleader it is a company.
Private and business customers follow separate routes, so these two switches are independent. If you only work for consumers this switch changes nothing — but turning it off is tidier than leaving it on "just in case".
Meetings
Default: onAppointments from Schedulinq appear as meetings in Teamleader and stay updated afterwards.
Useful when colleagues use Teamleader as their calendar and never open Schedulinq. An appointment without a start or end time is not pushed — there is no meeting to make of it.
Flipping a switch saves immediately; there is no save button.
The one-off import
Importing pulls your existing Teamleader contacts and companies in as Schedulinq customers. You use this once, right after connecting, to catch up on what you already have.

Contacts and companies import separately, so you can start with just one of them. Afterwards the button reports how many records were processed.

The one-off export
The other direction: putting your existing Schedulinq customers into Teamleader as contacts.


An export runs in the background. There is no progress bar and no notification when it finishes — the button changes to Export started and that is that. For a large customer base, check the result in Teamleader itself rather than in Schedulinq.
Avoiding duplicates
This is the part worth understanding, because it is the one step no switch undoes.
Schedulinq links an existing record to an existing customer by email address, using a single rule:
| Records sharing the email address | What happens |
|---|---|
| Exactly one | Linked to that record. Nothing is added. |
| None | A new record is created. |
| More than one | A new record is created. |
That last row surprises people. Schedulinq deliberately does not pick from
several candidates: two customers are allowed to share an email address (a couple,
or a general info@ address), so choosing one of them would be a guess. A guess
that goes wrong is worse than a duplicate you can see.
A customer or contact without an email address has nothing to match on, and so always produces a new record.
This rule is not limited to the manual import and export. The ongoing sync uses it too: edit a customer that has no counterpart in Teamleader yet, and Schedulinq first looks for one by email address. If nothing is found, that edit creates a new record.
Linking team members
Contacts are your customers; team members are your colleagues. They get their own screen, via Manage team members in the import block.

Every Teamleader user gets a row, with a status that decides what you can do:
Linked
This Teamleader user and a Schedulinq user are paired. Users with the same email address in both systems are linked automatically — nothing to do.
The link decides whose appointment it is when one arrives from Teamleader. Without it, Schedulinq does not know which staff member it belongs to.
New
Default: Do nothingThis Teamleader user is not known in Schedulinq yet. You choose per row: Invite (that person gets an invitation to Schedulinq) or Link to existing user (for someone who already has a Schedulinq account under a different email address).
The default is deliberately Do nothing, so you can never accidentally invite your whole Teamleader address book. Note that every invited colleague who accepts counts towards your Schedulinq subscription.

Invited
An invitation is already outstanding for this person. There is nothing to do until they accept it.
No email
This Teamleader user has no email address, so inviting is impossible — linking to an existing Schedulinq user is the only option, which is why the search field is ready and waiting.
Your choices are only carried out when you click Apply at the bottom. Until then you can change them freely. One Schedulinq user can be linked to only one Teamleader user: someone already linked, or picked in another row, no longer appears in the search list.
Unlink works differently: it happens immediately, outside Apply, after a confirmation.
Disconnecting
The danger zone sits at the bottom of the settings page.

Disconnecting stops the sync and removes the integration data. What you hold in either system — customers, appointments, contacts — stays exactly where it is; only the link between them disappears.
Read the warning above about reconnecting before you use this: the pairings do not come back, not even if you reconnect the same Teamleader environment.
Frequently asked questions
I imported and now I see duplicate customers. Those customers had either no email match or more than one. Merge the duplicates in Schedulinq and fill in the email addresses, so a later import does recognise them.
A colleague is missing from the team members list. The list comes straight from Teamleader. If someone is not a user there, they will not appear here either.
My appointments are not reaching Teamleader. Check that the Meetings switch is on, and that the appointment has a start and end time. Appointments without a time are skipped.
Can I sync only contacts and nothing else? Yes. The three switches are independent; turn the other two off.