diff --git a/app/code/Magento/Vault/Model/PaymentTokenRepository.php b/app/code/Magento/Vault/Model/PaymentTokenRepository.php
index 0cc17c3011efcadfc65b6f2d84902641d8def0ef..2fc35d56388dc83ddf9603473216c0ebf03469aa 100644
--- a/app/code/Magento/Vault/Model/PaymentTokenRepository.php
+++ b/app/code/Magento/Vault/Model/PaymentTokenRepository.php
@@ -129,6 +129,7 @@ class PaymentTokenRepository implements PaymentTokenRepositoryInterface
         }
 
         $tokenModel->setIsActive(false);
+        $tokenModel->setIsVisible(false);
         $tokenModel->save();
 
         return true;
diff --git a/dev/tests/integration/testsuite/Magento/Vault/Model/PaymentTokenRepositoryTest.php b/dev/tests/integration/testsuite/Magento/Vault/Model/PaymentTokenRepositoryTest.php
index cfb126fd9ee4ab53a1104681c929626911e3a249..121ecffa48a64751ff729f4235c5289a2bf0b11e 100644
--- a/dev/tests/integration/testsuite/Magento/Vault/Model/PaymentTokenRepositoryTest.php
+++ b/dev/tests/integration/testsuite/Magento/Vault/Model/PaymentTokenRepositoryTest.php
@@ -8,39 +8,48 @@ namespace Magento\Vault\Model;
 use Magento\Framework\Api\FilterBuilder;
 use Magento\Framework\Api\SearchCriteriaBuilder;
 use Magento\Framework\Api\SortOrderBuilder;
+use Magento\TestFramework\Helper\Bootstrap;
+use Magento\TestFramework\ObjectManager;
 
 /**
- * Class PaymentTokenRepositoryTest
- * @package Magento\Vault\Model
+ * PaymentTokenRepositoryTest contains tests for Vault token repository
+ *
  * @magentoDbIsolation enabled
  */
 class PaymentTokenRepositoryTest extends \PHPUnit_Framework_TestCase
 {
-    /** @var  PaymentTokenRepository */
+    /**
+     * @var PaymentTokenRepository
+     */
     private $repository;
 
-    /** @var  SortOrderBuilder */
+    /**
+     * @var SortOrderBuilder
+     */
     private $sortOrderBuilder;
 
-    /** @var FilterBuilder */
+    /**
+     * @var FilterBuilder
+     */
     private $filterBuilder;
 
-    /** @var SearchCriteriaBuilder */
+    /**
+     * @var SearchCriteriaBuilder
+     */
     private $searchCriteriaBuilder;
 
+    /**
+     * @var ObjectManager
+     */
+    private $objectManager;
+
     public function setUp()
     {
-        $objectManager = \Magento\TestFramework\Helper\Bootstrap::getObjectManager();
-        $this->repository = $objectManager->create(PaymentTokenRepository::class);
-        $this->searchCriteriaBuilder = $objectManager->create(
-            \Magento\Framework\Api\SearchCriteriaBuilder::class
-        );
-        $this->filterBuilder = $objectManager->get(
-            \Magento\Framework\Api\FilterBuilder::class
-        );
-        $this->sortOrderBuilder = $objectManager->get(
-            \Magento\Framework\Api\SortOrderBuilder::class
-        );
+        $this->objectManager = Bootstrap::getObjectManager();
+        $this->repository = $this->objectManager->create(PaymentTokenRepository::class);
+        $this->searchCriteriaBuilder = $this->objectManager->create(SearchCriteriaBuilder::class);
+        $this->filterBuilder = $this->objectManager->get(FilterBuilder::class);
+        $this->sortOrderBuilder = $this->objectManager->get(SortOrderBuilder::class);
     }
 
     /**
@@ -77,4 +86,26 @@ class PaymentTokenRepositoryTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals('second', array_shift($items)->getPaymentMethodCode());
         $this->assertEquals('first', array_shift($items)->getPaymentMethodCode());
     }
+
+    /**
+     * @covers \Magento\Vault\Model\PaymentTokenRepository::delete
+     * @magentoDataFixture Magento/Vault/_files/token.php
+     */
+    public function testDelete()
+    {
+        /** @var PaymentTokenManagement $tokenManagement */
+        $tokenManagement = $this->objectManager->get(PaymentTokenManagement::class);
+
+        $token = $tokenManagement->getByPublicHash('public_hash', 0);
+
+        /** @var PaymentTokenRepository $tokenRepository */
+        $tokenRepository = $this->objectManager->get(PaymentTokenRepository::class);
+        $tokenRepository->delete($token);
+
+        $deletedToken = $tokenRepository->getById($token->getEntityId());
+
+        static::assertEquals('public_hash', $deletedToken->getPublicHash());
+        static::assertFalse($deletedToken->getIsActive());
+        static::assertFalse($deletedToken->getIsVisible());
+    }
 }
diff --git a/dev/tests/integration/testsuite/Magento/Vault/_files/token.php b/dev/tests/integration/testsuite/Magento/Vault/_files/token.php
new file mode 100644
index 0000000000000000000000000000000000000000..14cc2c73226ee5eb83d201b6c1da17512a6dc4cf
--- /dev/null
+++ b/dev/tests/integration/testsuite/Magento/Vault/_files/token.php
@@ -0,0 +1,26 @@
+<?php
+/**
+ * Copyright © 2016 Magento. All rights reserved.
+ * See COPYING.txt for license details.
+ */
+
+use Magento\TestFramework\Helper\Bootstrap;
+use Magento\Vault\Model\PaymentToken;
+use Magento\Vault\Model\PaymentTokenRepository;
+
+$objectManager = Bootstrap::getObjectManager();
+
+/** @var PaymentToken $token */
+$token = $objectManager->create(PaymentToken::class);
+
+$token->setGatewayToken('gateway_token')
+    ->setPublicHash('public_hash')
+    ->setPaymentMethodCode('vault_payment')
+    ->setType('card')
+    ->setExpiresAt(strtotime('+1 year'))
+    ->setIsVisible(true)
+    ->setIsActive(true);
+
+/** @var PaymentTokenRepository $tokenRepository */
+$tokenRepository = $objectManager->create(PaymentTokenRepository::class);
+$tokenRepository->save($token);