After publishing my BIP39 mnemonic article, a few people asked how my Bitcoin donation widget worked and whether it used BTCPay Server.
It doesn’t. I love BTCPay, but for a little website like mine, it’s overkill.
So I wrote up a guide on how to build a self-custodial, privacy-friendly donation setup using nothing but an XPUB, a serverless function, and some frontend JS. The full source code is on GitHub, so it can be cloned and modified freely. Not sure how many folks need something this minimal, but I figured I can’t be the only one.
Bookmarked in case I ever need this. Too bad not many wallets are doing Silent Payment's. That would be an easier guide!
Ugh, there is no, "serverless." There's always a server, it's just someone else's server. I wish that buzzword would cease existing. Function as a Service is more truthful.
I agree! It's a stupid buzzword and I don't like it either. Problem is, I tested a couple titles with friends and this is the one which they immediately understood. Maybe I should've gone with your idea - FaaS is a good description.
But yeah, you're right. It's just someone else's server, which for the purposes of my tutorial means you can host a simple, stateless function for free, i.e. no Linux box to provision, no SSH, no uptime monitoring, etc.
Love this minimalist approach Not everyone needs a full BTCPay setup this is perfect for solo devs who want privacy without the hassle. Thanks for sharing the code!
Interesting. Hopefully more wallets implement silent payments to make this setup even easier.
Agreed, I'd love that. Wide availability of BIP 352 in wallets would avoid the XPUB step.