The wallet is fully in ran in the browser.
This part sounds good.
There is server that holds the encrypted wallet info for transferring between people
But this part makes me wonder: Can the giftcard still be redeemed if the server disappears?
but the information is encrypted with the giftcard
Can you share a (Bitcoin testnet) example of what data would be available on each step of the process, from creating a gift card to letting it expire or redeeming it.
So its non-custodial as a local web wallet on the useres machine.
If the gift card holds all the information required to redeem the funds even without the server, it can indeed be non-custodial. But wouldn't it be much simpler to add a privkey to the gift card?
The server would hold a refund transaction to broadcast once the wallet expires.
Is this transaction time-locked? And will it also be available for the creator of the gift card, so that he can still broadcast it in case your server disappears?
The wallet lives in the senders browser, so they can retrieve the funds at anytime they choose.
Does this mean the sender can make the gift card expire sooner? I think it's better if that's not possible.
Thanks for the great questions around custody, there is a lot of nuance to be had so I hope I was clear in communicating how this is non-custodial from the technical aspect. At no point can the service send your funds anywhere you did not sign a transaction approving for them to go.
I must say it looks much better than my first impression. This might actually work
If the website goes down, the code is open source and runs locally. So the user can clone the repo and continue on their way. Feel free to ask anymore technical questions about custody with the gifting app.
Does that mean cloning the site is enough to claim a gift certificate, or to claim funds from an expired gift certificate?
in production the gifter will set the refund time as long as its under 30 days.
My opinion: this should be much longer. I gave someone a funded paper wallet 4 years ago, it's still untouched. That also means the gift certificate should contain all instructions on how to redeem it in case your website is gone.
As far as paper wallets go. There are a lot of informed people who hate paper wallets and think they should not be used for gifts
~
people have different opinions
Bitcoin is all about freedom. If some people don't want to use a certain feature, that's fine. I don't agree, and that's fine too.
a paper wallet requires an app to use.
Even though I don't think installing a wallet is a bad thing, your statement isn't true. ETFbitcoin already mentioned Coinb.in, which can be used to redeem a paper wallet without installing anything.
I think that the process for gifting a non-coiner bitcoin is not as easy(simple) as people think it is.
"Here's a piece of paper with Bitcoin. Safely keep it, treat it like cash, and if it ever becomes valuable, learn how to use it."
I think it would be very hard to condense the instruction set for a no-coiner , with no crypto experience, to send a transaction using electrum from a mnemonic seed down to just one page. These instructions would take no less than 30 minutes to complete correctly if they did exist.
This sounds like something to put to the test: fund a wallet, write down 12 words, give it to a no-coiner, and tell him to download a wallet from Electrum.org and use those 12 words to pay Bitcoin to a certain address. There, I put it in one sentence. It's not enough for someone who's never used a computer before, but an experienced computer user shouldn't need much more than that and his own reading skills.
I know my app will be easier and simpler for nocoiners to get started with than any process that currently exist.
Let's say that's true. Then what? They have an empty gift certificate, they have an Amazon coupon, and they still have no idea how to continue with Bitcoin.
your proposal seems like a lot of mental gymnastics to come to the same result as giving someone the seed phrase to a wallet with the gifted Bitcoin on it?
There's a different risk involved: by giving someone a seed phrase, they may actually start using that wallet, which means you have access to their future deposits. It's much better to teach a new Bitcoin user to create their own wallet, so they know for sure nobody else has access to their seed phrase.