Syncing Events

You can sync your Android calendar events with Yandex account. Follow the instructions at Using Yandex.Calendar on your mobile device. You have to install a CalDAV sync app as Android doesn't come with CalDAV sync feature. I am using the CalDAV-Sync app and it works great. (It's a paid app but free version is also available). You have to install a patch app if the app notifies about it. The yandex.ru CalDAV configuration for default as well as domain accounts is as below:

Server name : caldav.yandex.ru:443
Use SSL: true
Username: username@yandex.ru/username@yandex.com or username@your-domain.com
Password: your password. For 2FA with authenticator app, generate app specific password for calendar from yandex passport.

Once you tap on next, it will connect and show you the default calendar to sync. In my case it is Мои события (My Events). You can enable two-way or one-way sync. Proceed next and complete the setup. Now when you add new event, choose the yandex calendar and it will sync to the account. The following fields from the S Planner app will sync with the account - title, location, start date, end date, recurring, participants, description, attending.

Syncing Tasks

Install the free OpenTasks app which is by the same developer of the above app. Yandex mail has tasks feature. OpenTasks will sync with the yandex task if you have the above app. You can add the task from the yandex web or from the app, it will sync both ways but tasks created via web is very limited in feature. The task account will get listed in the CalDAV-Sync account. You can change the name of the default tasks list from the web. Note that the yandex task is very minimalist in nature. It does not have a description field. You can create plain todos with reminders in the interval of 30 mins only and that's it. A description field and choosing minutes would have made it more useful. On the contrary the app has many fields, but those fields won't sync. Also the tasks added via web does not produce any reminder notification on the app. Not very useful at the moment.

Syncing Contacts

You need CardDAV sync app, as Android doesn't have this feature by default. You can use CardDAV-Syc app. (It's paid, but free version is also available). You need to install the patch app if you are on Android 4.1 or using a Samsung device. Choose CardDAV from the list and use the below configuration:

Server name or URL: carddav.yandex.ru
SSL: true
Username: user@yandex.ru/user@yandex.com or user@customdomain.com
Password: your password. For 2FA enabled accounts, create a new app password under the contacts section from yandex passport.

Choose next and you can choose the address book where your contacts will be synced to. In the next step, choose import contacts, and choose the ones to sync, like phone book, linkedin, google contacts, skype etc. The list depends upon the accounts added to the phone. Yandex contacts doesn't have lot of additional fields, so the details like organisation, title etc added in your phone's contact app will not sync. To add additional details like organisation, address etc., use the notes field. This will be synced as comments.

As a side note, I have been using Yandex domain account for a couple of years now and I find it to be an awesome service. I moved from Google Apps. I had a free Google Apps account. I also use Yandex to host the DNS for my domain. Happy camper!