diff --git a/apps/dav/lib/CardDAV/SyncService.php b/apps/dav/lib/CardDAV/SyncService.php
index b0a4ce81e707ef890c757bedda9300bbcbeb8d0e..477e912a79708e3ebb0d27bc4035f60fd4ba4811 100644
--- a/apps/dav/lib/CardDAV/SyncService.php
+++ b/apps/dav/lib/CardDAV/SyncService.php
@@ -26,6 +26,7 @@ namespace OCA\DAV\CardDAV;
 
 use OC\Accounts\AccountManager;
 use OCP\AppFramework\Http;
+use OCP\ICertificateManager;
 use OCP\ILogger;
 use OCP\IUser;
 use OCP\IUserManager;
@@ -68,12 +69,7 @@ class SyncService {
 		$this->userManager = $userManager;
 		$this->logger = $logger;
 		$this->accountManager = $accountManager;
-
-		$certManager = \OC::$server->getCertificateManager(null);
-		$certPath = $certManager->getAbsoluteBundlePath();
-		if (file_exists($certPath)) {
-			$this->certPath = $certPath;
-		}
+		$this->certPath = '';
 	}
 
 	/**
@@ -141,6 +137,28 @@ class SyncService {
 		return $this->backend->getAddressBooksByUri($principal, $id);
 	}
 
+	/**
+	 * Check if there is a valid certPath we should use
+	 *
+	 * @return string
+	 */
+	protected function getCertPath() {
+
+		// we already have a valid certPath
+		if ($this->certPath !== '') {
+			return $this->certPath;
+		}
+
+		/** @var ICertificateManager $certManager */
+		$certManager = \OC::$server->getCertificateManager(null);
+		$certPath = $certManager->getAbsoluteBundlePath();
+		if (file_exists($certPath)) {
+			$this->certPath = $certPath;
+		}
+
+		return $this->certPath;
+	}
+
 	/**
 	 * @param string $url
 	 * @param string $userName
@@ -154,9 +172,10 @@ class SyncService {
 			'password' => $sharedSecret,
 		];
 		$client = new Client($settings);
+		$certPath = $this->getCertPath();
 		$client->setThrowExceptions(true);
 
-		if (strpos($url, 'http://') !== 0 && $this->certPath) {
+		if ($certPath !== '' && strpos($url, 'http://') !== 0) {
 			$client->addCurlSetting(CURLOPT_CAINFO, $this->certPath);
 		}
 
diff --git a/apps/dav/tests/unit/CardDAV/SyncServiceTest.php b/apps/dav/tests/unit/CardDAV/SyncServiceTest.php
index de4e8ead4c0b6a0f25c81e6bcbb2caf94419843d..c06e48577437f0fcbb04b4d99142eed7f03f96a4 100644
--- a/apps/dav/tests/unit/CardDAV/SyncServiceTest.php
+++ b/apps/dav/tests/unit/CardDAV/SyncServiceTest.php
@@ -179,7 +179,7 @@ class SyncServiceTest extends TestCase {
 		$accountManager = $this->getMockBuilder('OC\Accounts\AccountManager')->disableOriginalConstructor()->getMock();
 		/** @var SyncService | \PHPUnit_Framework_MockObject_MockObject $ss */
 		$ss = $this->getMockBuilder(SyncService::class)
-			->setMethods(['ensureSystemAddressBookExists', 'requestSyncReport', 'download'])
+			->setMethods(['ensureSystemAddressBookExists', 'requestSyncReport', 'download', 'getCertPath'])
 			->setConstructorArgs([$backend, $userManager, $logger, $accountManager])
 			->getMock();
 		$ss->method('requestSyncReport')->withAnyParameters()->willReturn(['response' => $response, 'token' => 'sync-token-1']);
@@ -189,6 +189,7 @@ class SyncServiceTest extends TestCase {
 			'statusCode' => 200,
 			'headers' => []
 		]);
+		$ss->method('getCertPath')->willReturn('');
 		return $ss;
 	}