On July 28th, I submitted my proposal to @HRF for the Serverless Payjoin bounty: Payjoin over Nostr.
You can read the protocol addendum here:
The proposal is incredibly simple in nature, just as BIP78 was designed to be, to increase adoption chances. All logic within the Payjoin protocol stays the same, so the version is still 1. It is asynchronous (receiver can process later when back online), encrypted (communication is end-to-end encrypted), and lightweight (no server requirement, leverages existing Nostr network).
In addition to this, I also added building blocks for a new experimental addition: Nostr Payjoin Market.
If your wallet supports receiving Payjoin, you can share a static payjoin endpoint using the Nostr Coinjoin Discovery protocol (
Other wallets, which support Payjoin but want to send money to wallets that don't, can use these static endpoints to enhance their transactions. The goal? Make every transaction to every wallet a coinjoin.
See the sample wallet code and additional detailed description:
See quick video demo of prototype:
GitHub
BTCPayServer.BIP78/BTCPayServer.BIP78.Nostr/README.md at nostr · Kukks/BTCPayServer.BIP78
a BIP78 Payjoin implemention in C# for both sender and receiver. - Kukks/BTCPayServer.BIP78

GitHub
Build software better, together
GitHub is where people build software. More than 150 million people use GitHub to discover, fork, and contribute to over 420 million projects.
GitHub
BTCPayServer.BIP78/BIP78SampleWallet at nostr · Kukks/BTCPayServer.BIP78
a BIP78 Payjoin implemention in C# for both sender and receiver. - Kukks/BTCPayServer.BIP78