Notification is delivered by require_recipient. eosio.token::transfer calls require_recipient for from (sender of token) and to (recipient of token) account. As @towi_parallelism mentioned, only sender and recipient can get notification.
It is hard to say for sure what the problem is without seeing the error message.
It looks like you are trying to transfer money from the from account to the to account with the permission of email@example.com, which isn't possible because the transfer function of eosuperadmin requires the authorization of from.
You can bypass this in two ways:
This error message means you do not have the correct permissions to run the command as the account eosio. You need to make sure that the private key for the eosio account is in your wallet. You can do that using the command:
cleos wallet import
After you have the private key in your wallet, you can check that it matches the public key that you have on record ...
Imagine the blockchain as a tamper resistant database.
You interact with it per transactions that are signed and the log is signed as well. The method of hashing hashes (blocks) and chaining them is used for making it resistant to manipulation.
In a traditional system an attacker would be able manipulate the database and the transaction log more or less ...
You can't create a token using the eosio.token-account because you would need the authentication of the contract to do so.
void token::create( const name& issuer, const asset& maximum_supply )
require_auth( get_self() );
Therefore, you have you to deploy your own token-contract.