protected override async Task HandleCore(RemovePayeFromAccountCommand message)
        {
            await ValidateMessage(message);

            var accountId = _hashingService.DecodeValue(message.HashedAccountId);

            await AddAuditEntry(message.UserId, message.PayeRef, accountId.ToString());

            await _payeRepository.RemovePayeFromAccount(accountId, message.PayeRef);

            var loggedInPerson = await _membershipRepository.GetCaller(accountId, message.UserId);

            await QueuePayeRemovedMessage(message.PayeRef, accountId, message.CompanyName, loggedInPerson.FullName(), loggedInPerson.UserRef);

            await NotifyPayeSchemeRemoved(message.HashedAccountId, message.PayeRef);
        }