In case someone accidentally spends to basecoin instead of stealth using a stealth target address this is what would happen, so they should not worry.


How might this happen.

When beginning to type sendringcttoringct in the Debug Console it may autocomplete to sendringcttobasecoin and the transaction will succeed even though a basecoin address was not used.


What will happen.

If you try it in the GUI wallet interface it will only send to stealth, as sending to basecoin is not possible in the graphical user interface.
If you do (in the Debug Console): sendringcttobasecoin LongAddressForStealth Amount it will give you a transaction ID as it succeeds. (Please note, the addresses used here are slightly different, as they are for the test network, not mainnet.)

You may then check the transaction with gettransaction TXID and you will see something like this. If it says is_mine: false, then maybe your wallet has either been corrupted, or recovered, but the addresses not been restored yet.

        "type": "basecoin",
        "sent_to": "15jd4qt4rzmtyz7xzh6xx6wcl8pjzq79838m6hl",
        "amount": "10.00",
        "is_mine": true,
        "has_tx_rec": true,
        "output_record": {
          "type": 1,
          "flags": 3,
          "n": 1,
          "scriptPubKey": "76a914a49b502ea316d64178c2be8c6d3b1f38642078a788ac",
          "amount": "10.00",
          "is_spent": false
        }

You might then check the address it was output to and not recognise it. Don't worry! The amount is not lost.

getaddressinfo 15jd4qt4rzmtyz7xzh6xx6wcl8pjzq79838m6hl

Invalid address (code -5)

getbalances 

{
  "basecoin_spendable": "0.00",
  "basecoin_unconfirmed": "10.00",
  "basecoin_immature": "0.00",
  "ct_spendable": "0.00",
  "ct_unconfirmed": "649.9985736",
  "ct_immature": "0.00",
  "ringct_spendable": "30659.8303784",
  "ringct_unconfirmed": "237.9954736",
  "ringct_immature": "0.00",
  "zerocoin_spendable": "0.00",
  "zerocoin_unconfirmed": "0.00",
  "zerocoin_immature": "0.00"
}


At this stage your transaction is still in the mempool. Once it confirms you will see it in your basecoin amount when you type getbalances. (Never mind the new 150 there. I was mining to hurry along the transaction getting confirmed on testnet.)

   

  "basecoin_spendable": "10.00",
  "basecoin_unconfirmed": "0.00",
  "basecoin_immature": "150.00",
  "ct_spendable": "0.00",
  "ct_unconfirmed": "0.00",
  "ct_immature": "649.9985736",
  "ringct_spendable": "30659.8303784",
  "ringct_unconfirmed": "0.00",
  "ringct_immature": "237.9954736",
  "zerocoin_spendable": "0.00",
  "zerocoin_unconfirmed": "0.00",
  "zerocoin_immature": "0.00"

If you do getaddressinfo TheOriginalStealthAddresstps1qqpvxegxcn0y2z4r27sldq7unjk355gz47v87l3a2zad52f5yhc7rkspq2yw9p8f32ltsk3zcnx5j7pauzx745rtz0xaplcujqjpggdkrjuw7qqq8lmtnf you will not find the basecoin address eg. 15jd4qt4rzmtyz7xzh6xx6wcl8pjzq79838m6hl in the list, because that list is a list of "stealth destinations". 


Do not worry. Your Veil basecoin amount is still spendable, although as can be seen in Coin Control it is found in a different address than we have seen so far.

You can check this address and see that it belongs to your wallet, and you can spend it to RingCT where you should have wanted it in the first place. Please note, that Veil is a privacy coin, and public explorers cannot see all of the details as they do not have your wallet's private keys.

getaddressinfo mvXKAs9FckMs3MCbKTxZx7qmEEDES2AiMS

{
  "address": "mvXKAs9FckMs3MCbKTxZx7qmEEDES2AiMS",
  "scriptPubKey": "76a914a49b502ea316d64178c2be8c6d3b1f38642078a788ac",
  "ismine": true,
  "iswatchonly": false,
  "isscript": false,
  "iswitness": false,
  "pubkey": "0331d494a1653b3b960e5496eaa73bde1d1bcb56a9caba3817380b0e1015b11590",
  "iscompressed": true,
  "timestamp": 0,
  "labels": [
  ]
}

Enjoy your Veil wallet, because privacy is a human right!