# How to sync contacts between iCloud and Exchange On-Premises?
LOOKING FOR PARTNERS 🤝
We're currently looking for partners and distributors in different regions. If you're interested, please feel free to contact us.
With SyncPenguin you can configure real-time two-way synchronization of Apple iCloud Contacts and Exchange On-Premises Contacts in just a few clicks. This page provides a short guide on how to set up and start the integration using our dashboard.
# 1. Register and log in
The first step is to create a SyncPenguin account. Please follow this link to the dashboard to do that:
# 2. Create the sync
The next step is to create a sync in the Synchronizations section of the dashboard by clicking the + New sync button. You'll see a wizard page, where you have to do the following three steps:
- Add the first app (Apple iCloud Contacts)
- Add the second app (Exchange On-Premises Contacts)
- Click the Create button
# 3. Provide access to iCloud and Exchange On-Premises
Now that your sync is created, the next important step is to grant SyncPenguin access to your data.
You'll see two Access & Settings sections for both apps involved in your sync. For each of them, you have to click the Connect button and sign in to the corresponding app. If you don't see the Connect button, it means you need to enter the credentials manually, which can be an API Key, username/password combination, or similar.
To make sure your app is connected and we have the access to the needed data, just click the Verify access button.
If you're concerned about your data security, please check out the Security and Reliability page.
In some complex scenarios, it might be difficult to get the settings right. Please don't hesitate to contact us in case of any errors or doubts.
# 4. Basic settings
In the Basic settings section you have the ability to adjust some of the default properties of your integration flow:
- The name of your sync
- Sync direction (two-way or one-way)
- Sync interval (by default the sync is triggered every 5 or 10 minutes)
- Allow delete (whether deleted data should be deleted on the other side of the sync)
- Proceed on error (should the sync continue when an error is encountered, or try again)
- Avoid duplicates (should the sync try to match historical data instead of creating duplicates)
# 5. Customizing field mapping
SyncPenguin provides all sync connections with one or more default field mappings. The default mapping usually includes all common fields that the connected apps have.
In some cases, you might need to include information from custom fields, or just customize the way data is mapped during synchronization. Luckily, SyncPenguin provides customers with the ability to customize field mapping in any way possible. It's much more than just including/excluding default or custom fields. You can add filters, conditions, loops, custom logic, and so much more. All is done in just a few clicks using our no-code visual programming interface.
You can create a custom mapping by clicking the Create new button in the Field mapping & filters section of the sync page. More information on how to create and customize field mapping can be found here. Feel free to contact us for any help with your customization!
Please note that customization might not be available for some older sync connections. Feel free to contact us in such a case.
# 6. Start the sync
The last thing, of course, is to start the continuous sync. To do that, click the Start sync button.
You'll then be prompted with the following four options:
- Only sync new data, meaning anything that will be added or updated starting from now.
- Merge all historic data two-way: take all Apple iCloud Contacts and Exchange On-Premises Contacts and merge them together. Any data that already exists on both apps should be merged instead of creating a duplicate.
- Merge Apple iCloud Contacts to Exchange On-Premises Contacts: take all Apple iCloud Contacts and add/merge them to Exchange On-Premises Contacts.
- Merge Exchange On-Premises Contacts to Apple iCloud Contacts: similar to the previous option but in the opposite direction.
Once you make your choice, just click Start sync. In case you decided to do the initial merge, it'll be instantly queued. Once it's done, we'll be checking for data changes every now and then (depending on the sync interval specified) and syncing accordingly. Each sync execution can be seen in the Sync logs at the bottom of the sync page.
# Contact us
In case you have any questions regarding our integrations feel free to contact us using the form below.