How to make and give Bitcoin gift cards
I wanted to give small gifts of Bitcoin to friends, but the two challenges were:
- Doing it securely.
- Making it a nice-looking gift.
I solved both of those for myself and I’m going to explain how to make your own.
Since I work at Shopify I set up a Shopify store to sell them, but that’s mostly an excuse to build something with our own product (I wanted to build and customize a complicated Shopify store) so I won’t promote that here.
They are laser-engraved solid metal cards, beautifully packaged in a gift box.
Background knowledge, if you want it
First, you should know some Bitcoin basics. You may have heard of a Bitcoin “wallet”. Technically Bitcoin is not stored in a Bitcoin wallet, it’s stored “in the cloud” on something called the “blockchain”, which is basically a big ledger of transactions that is duplicated and stored by thousands of Bitcoin servers all over the internet, in a way that’s verifiable and unalterable.
So what’s a Bitcoin “wallet” then? It’s actually more like a keychain. It contains digital private keys that let you unlock the money that’s stored in the blockchain.
What actually is a Bitcoin gift card then?
A Bitcoin wallet can be represented as a unique set of words that are easy to write down, called a “seed phrase”. Think of it like a passphrase. If you give that seed phrase to a Bitcoin wallet app then it can regenerate the entire wallet and give you access to the funds.
So, to oversimplify a bit, all you need to do is generate a Bitcoin wallet with an app like Electrum, send money to it’s Bitcoin address, and write down the seed phrase and give it to someone (without keeping a copy). Voilà, you have given them a Bitcoin gift card. They can then recreate the wallet to use it.
But it’s difficult to do this securely. Read on for details.
Note: there is also another method called a “paper wallet”, which is not quite the same, and it’s not recommended. A paper wallet is a single private key and Bitcoin address, both printed out on paper. You can read about the downsides of this here if you like. The preferred method is to use a full Bitcoin wallet (which actually contains multiple keys and addresses), represented as a seed phrase.
Step-by-step DIY instructions to do it securely
If you want to make your own, here are the instructions to do it right.
The main thing to be aware of is that Bitcoin funds can be stolen by viruses installed on your computer, and this is more common than you might think. So it’s actually risky to do this on any network-connected computer. (Temporarily turning off network access is not enough.)
This is why people use a “hardware wallet” to store their own funds, which is a hardware device that generates the wallet, so that the sensitive info is never on their computer.
I have a separate computer that I use for this. It is permanently disconnected from the Internet.
So, ideally on a permanently disconnected computer, do the following:
1. Install Electrum
Electrum is a trusted open source Bitcoin wallet app. Download it, verify the GPG signature, copy it to your offline computer on a USB drive, and install it.
2. Create a new wallet
Using Electrum create a new standard wallet. Select “create a new seed”, and choose “segwit”.
You may be wondering how this works offline. Your computer doesn’t need to connect to a server to create this address. Technically all possible addresses already exist and you’re just choosing one at random. There’s an almost infinitely small chance that someone else will ever choose the same one. That’s just how Bitcoin works.
3. Write down the seed phrase
You will then be shown the seed phrase. Write it down on paper.
Leave the password blank.
4. Write down one of the Bitcoin adddresses
View the addresses, and write down the first one. Be careful, if you make a mistake and send Bitcoin to the wrong address you will not be able to recover it.
Electrum can also show you a QR code for it if you want to print that out, but again, it’s not recommended to do this on a computer that’s connected to a network.
The address and QR code are not secret, but the seed phrase is. Anyone who knows it can steal funds from the wallet at any time, even in the future.
5. Securely delete the Electum wallet file
Electrum has a “Delete” command under the “File” menu, use this to delete the wallet file.
6. Create the gift card, keeping the seed phrase hidden
Now you can create the gift card however you like, but make sure the seed phrase is not easily visible. And even better, it should be tamper-proof somehow, so that if the recipient stores it for a few years (as Bitcoin is becoming exponentially more valuable), there’s no risk that anyone sees it during that time.
Mine have a tamper-proof sticker covering the seed phrase, so that you can be sure it has never been seen by anyone until the time it’s needed. The sticker shows “void” if it’s peeled off and replaced, and it has a serial number so that nobody can replace it with a new one.
Be sure to destroy any other copies of the seed phrase that you wrote down on paper.
Note that Electrum seed phrases are different from the BIP39 seed phrase standard, read this for more info on the advantages of the Electrum Seed Version System over BIP39.
6. Send money to the Bitcoin address
Now you can send money to the Bitcoin address. For example using a Bitcoin exchange like Coinbase. It doesn’t matter that you have deleted the Electrum wallet file, the address still exists. (Remember, Bitcoin is stored on the blockchain on the Internet, not actually “in” the wallet file.)
You can check the balance of the address at any time using a Block explorer like this one. Just enter the Bitcoin address and you will see the balance.
7. Recommend that the recipient transfer the funds ASAP
You should let the recipient know that anyone else who ever sees the seed phrase can steal their Bitcoin any time. They’re trusting that you securely destroyed and forgot it. Recommend that they transfer it to a new address.