Holy shit it's working! Paid a 100k sats Lightning invoice from two different Cashu mints at the same time.
Enter atomic multinut payments.
https://video.nostr.build/935d5c453c00ae7498be116b9c4d4b358d326854fd7cf19ebfa782f69a575a6c.mp4
All Cashu wallets let you use multiple mints. To reduce rug risk, we encourage users to leave only small amounts on each mint. This introduces a big UX challenge which forces users to distribute funds on different mints in a smart way. It's particularly problematic when you're trying to pay a bigger Lightning invoice from your small balances. Who has time for that?
The Lightning protocol allows nodes to split a single payment HTLC into multiple parts to increase the chance of reaching the destination, called Multi-Path Payments (MPP). Typically, that's done from one sender to one receiver. What if... you can just break the rules?
A multinut payment originates from multiple Lightning nodes to pay a single invoice, atomically. Even if none of your mint balances can cover an invoice, as long as your total balance is large enough, you can pay the invoice.
I don't think anyone was crazy enough to do this before. Pretty sure what you see here is the first invoice being paid using a CLN and an LND node at the same time. Amazing work by the team, special thanks to nostr:nprofile1qqsw8lr88lzln8x92ng073m4v72kglf9edhxvk8eztg3ftny98f46dgpz4mhxue69uhkummnw3ezummcw3ezuer9wchsz9mhwden5te0wfjkccte9ehx7um5wghxyctwvshsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshsk9y93w.
https://video.nostr.build/b9e330fbe21a772c0525ae2fceedaa99a90b8512a501c1f1d3263eac1d55219a.mp4
NutZaps got overhauled in Nostr back in February, and I couldn't find a client that works according to the revised spec. So I built NutZapMe.
It lets you create a NIP-60 compliant Cashu Wallet, a backup wallet, and a NIP-61 NutZap informational event to tell people how to send you ecash.
Once setup, you can also use your NIP-60 wallet to NutLock tokens, and unlock them using any regular Nostr signer extension.
I built it because I wanted to add NIP-60 support to Cashu Witness, and needed to set up my own NutZap wallet for testing.
https://www.nostrly.com/cashu-nutzapme/

The name sucked... so it's now "Cashu Cache"
May the 4th be with you... always.

Fascinating
Cashu Witness now fully supports tokens NutLocked to a NIP-61 (NutZap) public key...
It can even reverse lookup and tell you who it belongs to if the user's wallet supports it. [*]
And signing NIP-61 locked tokens is secure too... you simply use a regular NIP-07 extension!

[*] User's kind:10019 NutZap event must include the 'k' tag. If you create your NutZap wallet with NutZapMe, this is taken care of for you.
Just found out that chachi has good NIP-60 / NutZap support - it sees your NIP-60 wallet form NutZapMe automatically.
Pick your token amount carefully (ie base 2) and it is just one Cashu proof⦠eg, this one was 1024 sats
Come on, own up nowβ¦


A whole new generation of bitcoiners gets to experience a block size war.
Block War II
I think it's still evolving... nostr:nprofile1qyxhwumn8ghj7e3h0ghxjme0qyd8wumn8ghj7urewfsk66ty9enxjct5dfskvtnrdakj7qpql2vyh47mk2p0qlsku7hg0vn29faehy9hy34ygaclpn66ukqp3afqta478g s nutsack is the OG but as far as I can tell, isn't yet fully updated to the latest spec.
The foundation is getting Nostr users to set up NIP-60 wallets. Once that is established, it will be easier for wallets to build out NutZap functionality.
NutZaps got overhauled in Nostr back in February, and I couldn't find a client that works according to the revised spec. So I built NutZapMe.
It lets you create a NIP-60 compliant Cashu Wallet, a backup wallet, and a NIP-61 NutZap informational event to tell people how to send you ecash.
Once setup, you can also use your NIP-60 wallet to NutLock tokens, and unlock them using any regular Nostr signer extension.
I built it because I wanted to add NIP-60 support to Cashu Witness, and needed to set up my own NutZap wallet for testing.
https://www.nostrly.com/cashu-nutzapme/

Introducing Following._ β a simple way to create and share follow packs on Nostr!
Finding interesting people to follow has always been one of the biggest challenges for new users on Nostr. Even experienced users often struggle to discover new communities and voices.
Following._ makes it easy to curate lists of users and share them with anyone on the web. Whether you're helping newcomers get started or building a niche community, Following._ allows you to grow connections on Nostr.
You can create your own follow pack in minutes and share it anywhere. Hereβs an example:
https://following.space/d/d27a91a4-6155-4089-b4de-377e24dde08d
I spent months complaining that someone should build this... and eventually realized that someone had to be me. So here we are.
I also leaned heavily on AI during the process β itβs never been easier (or more fun) to create apps for open platforms like Nostr. If you have an idea, you really can just build it. No gatekeepers, no permission needed. Just ship it.
Peace

GA

Itβs the Wickerman rollercoaster at Alton Towers, UK
Easter break beginsβ¦

But like... How do we know which mint to trust?
What if it was nostr:nprofile1qqs9pk20ctv9srrg9vr354p03v0rrgsqkpggh2u45va77zz4mu5p6ccpzemhxue69uhk2er9dchxummnw3ezumrpdejz7qgkwaehxw309a5xjum59ehx7um5wghxcctwvshszrnhwden5te0dehhxtnvdakz7qrxnfk's mint all along and he hid an identifier in the cashu token so he can just redeem it regardless of the rules while you and nostr:nprofile1qqswnetlw3z32u4eagzudc83dltqkwwlmq5n45n28spef5g3pln4l6cpp3mhxue69uhkyunz9e5k7qgswaehxw309ahx7um5wgh8w6twv5q3jamnwvaz7tmwdaehgu3w0fjkyetyv4jjucmvda6kg0rvz2z thought you were all playing by the same rules.
Trust is an unavoidable part of all lightning/layer2/custodial solutions. The answer is you need to pick your mint carefully⦠same as you choose your lightning wallet provider.
Itβs an extreme example, but plenty of reasons to NutLockβ¦ eg payment offline.
Cashu MultiSig just dropped... opening up atomic swaps and escrow.
Meet Cashu Witness.
Imagine nostr:nprofile1qyt8wumn8ghj7etyv4hzumn0wd68ytnvv9hxgtcpzemhxue69uhks6tnwshxummnw3ezumrpdejz7qpq2rv5lskctqxxs2c8rf2zlzc7xx3qpvzs3w4etgemauy9thegr43sugh36r and nostr:nprofile1qy0hwumn8ghj7ct5d3shxtnwdaehgu3wd3skuep0d9h8vmmfvdjhxqg5waehxw309a3xcctnw3ezue3h0gh8s7t6qqswnetlw3z32u4eagzudc83dltqkwwlmq5n45n28spef5g3pln4l6cpqwdv9 want to do a deal, but they don't trust each other. They do, however, both trust me.
Calle can lock his payment token to all three of us, requiring 2-of-3 signatures to redeem... and specify a time limit for performance.
π₯σ σ σ £σ σ ₯σ ²σ σ ’σ Άσ €σ σ ³σ Ίσ σ σ Έσ σ §σ σ ͺσ σ ¦σ Όσ ’σ ‘σ σ σ σ σ ₯σ σ σ σ ₯σ σ σ Ίσ σ σ Έσ ½σ ₯σ σ ’σ Άσ ͺσ σ ³σ ©σ ³σ σ σ σ σ σ ’σ σ ₯σ σ σ σ σ σ ’σ Άσ σ σ σ σ ²σ σ σ Άσ σ σ ±σ ²σ σ ²σ σ ΄σ §σ σ σ Άσ ·σ σ σ ³σ ³σ σ ·σ Άσ σ ±σ σ Άσ ͺσ σ σ ·σ ‘σ σ ©σ Ίσ σ ½σ σ ²σ Όσ Ήσ σ ¨σ §σ Ήσ σ ₯σ ¦σ σ σ Ύσ σ Ήσ σ σ σ ½σ σ σ €σ σ σ Ύσ σ Ύσ σ σ ͺσ ½σ σ Άσ σ σ σ ΅σ §σ σ σ σ ’σ Ύσ ͺσ σ ‘σ Ύσ ͺσ σ ©σ Ύσ ΄σ σ ₯σ σ σ σ ͺσ Ύσ ΄σ σ ₯σ σ ·σ ΅σ £σ Ύσ σ Ήσ ¨σ Ύσ σ σ ͺσ σ σ σ €σ σ ·σ σ σ σ σ σ σ σ ͺσ Ίσ σ Ώσ σ σ ¨σ ½σ ͺσ σ σ σ ΄σ σ £σ Ώσ ³σ Ήσ £σ Ήσ σ σ σ σ ·σ ΅σ σ Ώσ σ Ήσ §σ ½σ σ Ύσ σ σ ͺσ ²σ σ Ύσ ΄σ σ σ ½σ ·σ σ ’σ Ύσ ·σ σ ’σ σ ΄σ σ σ Ύσ ’σ ΅σ ¨σ σ ͺσ σ σ σ ͺσ ½σ ͺσ ½σ ·σ σ ‘σ Ύσ ΄σ σ £σ σ σ σ ‘σ ½σ σ Ύσ σ Ώσ ·σ Ήσ §σ Ύσ σ σ σ Ύσ ͺσ Ήσ §σ σ σ σ £σ Ύσ ·σ ΅σ §σ σ σ σ σ ½σ σ ½σ ‘σ Ύσ ΄σ ΅σ ’σ σ ΄σ Ήσ σ Όσ ³σ Ίσ σ σ σ σ ͺσ Ήσ σ σ σ σ ©σ Ίσ £σ σ ’σ Ύσ ’σ σ ·σ σ €σ σ σ Ήσ £σ ½σ σ σ σ Ύσ ΄σ σ €σ Ύσ σ ΅σ σ ½σ Άσ σ £σ σ ©σ Ίσ §σ σ σ Ίσ ’σ σ σ σ ͺσ Ήσ σ §σ σ ½σ ΄σ Ήσ ‘σ ½σ ·σ σ ₯σ Ύσ ·σ σ σ ½σ σ σ €σ Ύσ σ σ §σ σ ͺσ σ €σ ½σ σ Ήσ §σ Ύσ ͺσ Άσ σ Ύσ σ σ ©σ σ σ σ σ ½σ σ σ ͺσ ½σ σ ΅σ ©σ ½σ ΄σ ²σ σ ½σ ΄σ σ §σ Ώσ ·σ Ίσ σ σ σ σ ‘σ σ σ ½σ ͺσ σ σ σ σ ½σ ΄σ σ ‘σ Ύσ σ σ σ ½σ σ σ ¨σ σ ΄σ σ ͺσ Ήσ σ §σ σ ½σ ΄σ Ίσ σ Ώσ σ σ ‘σ Ύσ ’σ σ £σ Ύσ ΄σ σ ‘σ ½σ σ σ £σ ½σ σ Ήσ ₯σ σ σ ΅σ §σ Ύσ σ ½σ ’σ σ σ ²σ σ ½σ σ σ σ σ ΄σ σ §σ σ σ ½σ ₯σ σ ·σ σ σ Ώσ ΄σ Ήσ ₯σ ½σ ’σ Άσ σ ½σ σ σ σ ½σ ’σ ½σ §σ ½σ ͺσ σ σ σ ΄σ ΅σ ¨σ ½σ σ ²σ σ σ σ σ ‘σ σ σ σ σ Ήσ σ σ £σ σ ©σ Ίσ ₯σ σ £σ Ύσ σ σ £σ ½σ σ Όσ ΄σ Άσ σ Όσ Άσ £σ σ σ σ σ σ σ σ ₯σ σ Ήσ σ §σ σ ½σ ΄σ Ήσ ‘σ ½σ ·σ σ ₯σ Ύσ ·σ σ σ ½σ σ σ €σ Ύσ σ σ §σ σ ͺσ σ €σ ½σ σ Ήσ §σ Ύσ ͺσ Άσ σ Ύσ σ σ ©σ σ σ σ σ ½σ σ σ ͺσ ½σ σ ΅σ ©σ ½σ ΄σ ²σ σ ½σ ΄σ σ §σ Ώσ ·σ Ίσ σ σ σ σ ‘σ σ σ ½σ ͺσ σ σ σ σ ½σ ΄σ σ ‘σ Ύσ σ σ σ ½σ σ σ ¨σ σ ΄σ σ ͺσ Ήσ σ ‘σ σ σ σ ‘σ σ σ ‘σ σ σ ±σ ©σ ·σ ₯σ σ σ σ σ σ σ σ ³σ σ Ίσ σ σ σ σ σ ©σ σ ·σ σ σ σ Όσ σ £σ £σ σ σ σ ©σ ¦σ ±σ ΄σ ¦σ Ώσ σ ²σ ’σ ¨σ σ σ σ σ σ σ σ σ σ σ Ήσ ²σ σ ₯σ Ίσ ²σ σ £σ »σ ₯σ σ Ύσ Όσ σ Έσ ¦σ ±σ ¦σ ΄σ ₯σ ₯σ σ ©σ ±σ ‘σ ©σ Ίσ σ Ίσ σ ΄σ ¦σ σ σ ΅σ ΅σ σ σ ¦σ ©σ Ίσ σ ½σ Έσ σ σ Ύσ σ Ήσ ³σ σ σ ΅σ €σ σ σ ΅σ ¦σ σ ³σ σ σ ‘σ €σ ²σ Ήσ σ σ Ήσ ₯σ Ήσ σ ¦σ σ Ήσ ₯σ Άσ σ ©σ ‘σ £σ σ ¨σ σ σ Ώσ ©σ €σ σ Όσ σ £σ σ σ Ίσ σ Ήσ Ήσ σ σ ±σ σ σ σ σ ‘σ ₯σ Ήσ §σ ₯σ σ ‘σ »σ §σ σ ³σ ΅σ ¦σ σ Όσ σ Ήσ §σ ’σ σ ’σ σ σ ₯σ ±σ Έσ σ σ Ύσ ½σ σ ΄σ ¨σ ³σ σ σ ·σ Άσ σ ³σ ·σ Άσ ͺσ σ σ ·σ ‘σ σ ©σ Ίσ σ ½σ σ ²σ Όσ Ήσ σ ¨σ §σ Ήσ σ ₯σ ¦σ σ σ Ύσ σ Ήσ σ σ σ Ύσ σ ΅σ ©σ ½σ ͺσ σ ‘σ ½σ σ ²σ σ σ ΄σ σ ¨σ ½σ σ Άσ σ σ σ ²σ σ Ύσ ΄σ σ σ Ώσ ΄σ σ σ ½σ σ σ £σ σ σ Άσ σ Ύσ σ σ σ σ σ Ήσ ͺσ ½σ ͺσ Ύσ σ σ σ Ήσ §σ Ώσ ΄σ Άσ σ σ σ σ §σ σ ΄σ ΅σ ₯σ ½σ σ σ ’σ ½σ σ σ ’σ ½σ ΄σ σ ©σ Ύσ ’σ σ σ ½σ σ Ήσ £σ Ήσ σ σ σ σ ·σ ΅σ σ Ώσ σ Ήσ §σ ½σ σ Ύσ σ σ ͺσ ²σ σ Ύσ ΄σ σ σ ½σ ·σ σ ’σ Ύσ ·σ σ ’σ σ ΄σ σ σ Ύσ ’σ ΅σ ¨σ σ ͺσ σ σ σ ͺσ ½σ ͺσ ½σ ·σ σ ‘σ Ύσ ΄σ σ £σ σ σ σ ‘σ ½σ σ Ύσ σ Ώσ ·σ Ήσ §σ Ύσ σ σ σ Ύσ ͺσ Ήσ §σ σ σ σ £σ Ύσ ·σ ΅σ §σ σ σ σ σ ½σ σ ½σ ‘σ Ύσ ΄σ ΅σ ’σ σ ΄σ Ήσ σ Όσ ³σ Ίσ σ σ σ σ ͺσ Ήσ σ σ σ σ ©σ Ίσ £σ σ ’σ Ύσ ’σ σ ·σ σ €σ σ σ Ήσ £σ ½σ σ σ σ Ύσ ΄σ σ €σ Ύσ σ ΅σ σ ½σ Άσ σ £σ σ ©σ Ίσ §σ σ σ Ίσ ’σ σ σ σ ͺσ Ήσ σ §σ σ ½σ ΄σ Ήσ ‘σ ½σ ·σ σ ₯σ Ύσ ·σ σ σ ½σ σ σ €σ Ύσ σ σ §σ σ ͺσ σ €σ ½σ σ Ήσ §σ Ύσ ͺσ Άσ σ Ύσ σ σ ©σ σ σ σ σ ½σ σ σ ͺσ ½σ σ ΅σ ©σ ½σ ΄σ ²σ σ ½σ ΄σ σ §σ Ώσ ·σ Ίσ σ σ σ σ ‘σ σ σ ½σ ͺσ σ σ σ σ ½σ ΄σ σ ‘σ Ύσ σ σ σ ½σ σ σ ¨σ σ ΄σ σ ͺσ Ήσ σ §σ σ ½σ ΄σ Ίσ σ Ώσ σ σ ‘σ Ύσ ’σ σ £σ Ύσ ΄σ σ ‘σ ½σ σ σ £σ ½σ σ Ήσ ₯σ σ σ ΅σ §σ Ύσ σ ½σ ’σ σ σ ²σ σ ½σ σ σ σ σ ΄σ σ §σ σ σ ½σ ₯σ σ ·σ σ σ Ώσ ΄σ Ήσ ₯σ ½σ ’σ Άσ σ ½σ σ σ σ ½σ ’σ ½σ §σ ½σ ͺσ σ σ σ ΄σ ΅σ ¨σ ½σ σ ²σ σ σ σ σ ‘σ σ σ σ σ Ήσ σ σ £σ σ ©σ Ίσ ₯σ σ £σ Ύσ σ σ £σ ½σ σ Όσ ΄σ Άσ σ Όσ Άσ £σ σ σ σ σ σ σ σ ₯σ σ Ήσ σ §σ σ ½σ ΄σ Ήσ ‘σ ½σ ·σ σ ₯σ Ύσ ·σ σ σ ½σ σ σ €σ Ύσ σ σ §σ σ ͺσ σ €σ ½σ σ Ήσ §σ Ύσ ͺσ Άσ σ Ύσ σ σ ©σ σ σ σ σ ½σ σ σ ͺσ ½σ σ ΅σ ©σ ½σ ΄σ ²σ σ ½σ ΄σ σ §σ Ώσ ·σ Ίσ σ σ σ σ ‘σ σ σ ½σ ͺσ σ σ σ σ ½σ ΄σ σ ‘σ Ύσ σ σ σ ½σ σ σ ¨σ σ ΄σ σ ͺσ Ήσ σ ‘σ σ σ σ ‘σ σ σ ‘σ σ σ ±σ ©σ ©σ €σ σ σ σ §σ ±σ Ήσ ½σ σ ͺσ ©σ σ §σ σ Ίσ §σ σ ‘σ ’σ §σ €σ §σ σ σ Ώσ σ £σ ±σ ½σ ‘σ ·σ σ Ώσ σ σ Ίσ σ σ σ ₯σ ²σ σ σ σ σ σ σ σ σ Ήσ Ήσ σ ΅σ ₯σ §σ σ ¦σ σ Όσ ¦σ ¦σ σ σ Άσ σ §σ ¨σ σ σ σ σ σ €σ σ ©σ σ §σ €σ σ σ ‘σ σ σ £σ ΄σ €σ ΅σ σ σ £σ Έσ σ §σ σ σ Ύσ σ Ήσ σ σ ³σ σ ·σ σ €σ σ ’σ σ ’σ ©σ §σ σ ¦σ σ σ »σ §σ σ ‘σ σ σ Όσ ¦σ σ σ ‘σ €σ σ σ σ σ ·σ ₯σ σ €σ σ σ Έσ ¨σ σ σ σ σ Ίσ σ Ήσ Ώσ σ σ σ σ σ σ σ σ σ σ ³σ σ σ Ήσ σ σ §σ σ σ Ήσ σ σ €σ Ίσ σ σ σ σ ²σ σ Ύσ σ σ ‘σ ¨σ ͺσ σ ‘σ ¦σ σ σ
The token can be sent up front, and all parties can see the lock using Cashu Witness.
If the deal goes through, I can witness the token and send it on to HeidE, who can then sign and swap it for an unlocked token she can spend (again using Cashu Witness).
If the deal falls through, I witness the token and send it back to Calle to cash in.
if I get hit by a bus or the deal isn't done in time, Calle can cash in the token when the the token lock expires.

Before anyone asks⦠this will be open source, as soon as its dependencies come out of development branch
I think we've hit what Seth Godin calls "The Dip"
Nostr may never be a replacement for Twitter/X, but it is amazing, and opens up a whole world of possibilities.
I see it as the social / identity / marketplace layer for Bitcoin... and a decentralised communications layer for other apps.
The work on Cashu is a testament to this... Nutzaps, P2PK locking of tokens to npubs show how Nostr can enable decentralized payments.
I can send you sats locked to your identity without you even having a lightning address in your Nostr profile.
We are barely scratching the surface of what Nostr's use cases.
I'm using LND with a pruned Bitcoin node via a BTCPay Server Docker implementation, and it seems to work just fine. Maybe use their implementation as a guide if rolling your own.