Originally posted on Substack on Feb 09, 2024. Updated here on Dec 20, 2024
A use case scenario for Ecash over Bitcoin LN, using Cashu mints. How we can bring more Bitcoin adoption to people that can't afford to start with an UTXO.
Lately I was talking with a lot of people asking me questions about how to start with Bitcoin, but the easy way, from zero level and with very limited resources (money, knowledge, infrastructure).
I even wrote a dedicated guide for them “Stacking Sats - The noobs journey” explaining how to start from low level with basic custodial wallet apps and climb slowly the ladder, towards the self-custody apps. But is not enough. Some people even that “journey” they find it hard to do it.
This guide is NOT for those noobs, but for all those “Uncle Jim”s out there, willing to help for more adoption of Bitcoin. And this time will explain a use case how to onboard those noobs, using Ecash with Cashu mints, over Lightning Network (LN).
Let’s be clear: Ecash is NOT replacing LN (as I heard others saying)! Ecash is just an additional protocol that can communicate with LN.
In a previous guide I also explained how these “Uncle Jim”s could run “Private banks over Lightning Network” and what infrastructure they need. So this guide will be an extension of that previous one, with focus on using Cashu mints.
WHAT IS ECASH CASHU MINTS ?
Cashu is a free and open-source Chaumian ecash system built for Bitcoin. Cashu offers near-perfect privacy for users of custodial Bitcoin applications. Nobody needs to knows who you are, how much funds you have, and with whom you transact.
Cashu is a new ecash protocol for custodial Bitcoin applications that is tightly integrated into the Lightning network. An Ecash system consists of two parts, the mint and the ecash wallet. Ecash transactions are untraceable, instant, and require no fees. Cashu is built for Bitcoin. Wallets use the mint's Lightning node for making or receiving Bitcoin payments in exchange for ecash.
A Cashu mint does not know who you are, what your balance is, or who you're transacting with. Users of a mint can exchange ecash privately without anyone being able to know who the involved parties are. Bitcoin payments are executed without anyone able to censor specific users.
Source - Cashu.space
How Ecash works slides - by Gandlaf (very nice and clear animated slides)
So in more simple terms, consider ecash Cashu as digital gift cards, with additional privacy and cryptographic proof of (sats) reserves.
Think about that these tokens are like smaller parts (coins) minted from a bigger reserve of bitcoin. Who is minting these tokens is the banker and this banker is distributing them among his customers.
But keep in mind: THE BANKER IS HAVING THE CUSTODY OF THE SATS! So in order to use these mints, the user still have to put some trust in the minter (banker). The banker cannot create more sats (fractional reserve) than he have in custody, but still can shut down the mint and users cannot redeem their sats anymore.
So the rug-pull danger still exist! So be aware, do not leave all your life savings in these mints and also use only trusted mints.
That’s why in this guide, we will talk about a scenario where “the banker” and the users are from a local community, where they have a certain trust between each others.
WHY WOULD USE SUCH THING AS ECASH?
The situation with Bitcoin (BTC) and Lightning Network (LN) right now, is not favorable with onboarding billions of people, that are not well prepared and this situation will get more complicated until we could find more practical and easier solutions.
Yes, some old bitcoiners will not see any advantage of using this ecash, other than adding some more privacy on top of the existing LN protocol. Those that have already a lot of liquidity in LN channels and various UTXOs in cold storage, this use case will not bring them too many advantages, except if they want to use ecash as a form of coinjoin their income sources. But that is another story.
But for many new Bitcoin users is quite hard to get started with a UTXO directly onchain and from there running sophisticated LN nodes, public or even private nodes. Managing LN liquidity is not so easy for many new users. Yes, they can use a large number of custodial LN wallets / accounts, but those also still could leak a lot of personal information and easily be shut down or limiting access to users funds.
Some important aspects to consider:
- Using Ecash is NOT the ultimate way of using Bitcoin ! Keep in mind that this is more suitable to onboard new users, until they get comfortable and more knowledgeable. Yes, using ecash day to day payments is very useful and cheap, but please DO NOT keep all your sats into a Cashu wallet!
- Between users of the same mint, there are NO FEES. You can send back and forth sats under the same mint, without going to use LN or onchain, remember you are just exchanging IOU digital signatures. This could be a huge advantage for members of local communities, transacting each others.
- Users can pay any other LN wallet (out of the mint), directly from their ecash wallets, but that will be a regular LN payment and will involve the regular LN fees.
- User can redeem the sats out of the mint, ANYTIME, to any of his other LN wallet. But that redeem will involve some fees as a regular LN payment. This redeem will reduce the amount of sats that the banker will have into his “bank” (node). So as a node runner you will have to maintain a good liquidity and enough balance on both sides (inbound and outbound).
- User can make swaps between multiple mints (banks) but also that will involve some fees over LN. Swaps are actually LN payments between two nodes or two mints. Even that the mints are from the same LN node, it could involve fees.
- The “banker” could earn sats from regular LN routing, when the users are cashing out to other of their regular LN wallets. In your LNbits you could also set a fee to be charged for the users wallets (including the mints).
- Ecash mint is ALWAYS custodial ! Once the users start depositing sats into the mint, those sats literally sits into “banker’s” node channels.
- If the banker delete the mint, users cannot redeem anymore their sats.
- If the user lose their backup from their ecash wallets, nobody can redeem those tokens anymore, not even the banker knows how much each user can have. So please make your backups! Each app offer this option.
- The banker will NEVER know who is paying who and also cannot see exactly how much tokens were spent between users. This is very good for privacy. Here is a Ecash Workshop presented by Supertestnet, explaining all these aspects.
USE CASE SCENARIO
LOCAL COMMUNITY MERCHANT
Let’s consider a local grocery store owner that want to help his customers to start using Bitcoin for their shopping:
- S/he still have to pay his suppliers with fiat currency, until also these ones will start accepting BTC.
- the customers DO NOT HAVE ANY SATS but are willing to start using or even stacking some.
- the shop owner is willing to offer discounts to people that are using BTC in his shop
- the shop owner knows what is going to do, this is a serious task and require good knowledge about Bitcoin, LN, liquidity, managing nodes etc. S/He will be the local “banker” that also will have the duty to educate his customers how to use this solution based on Bitcoin and Cashu ecash.
STEPS TO DO AS THE “BANKER”
- Read and learn how ecash mints are working. Test before use. Start here:
- https://cashu.space/ | https://docs.cashu.space/
- LNbits - Webpage | Github | Documentation | SaaS instance - easy to create and manage Cashu mints (I wrote several guides about LNbits, with several use cases).
- Wallets - eNuts | Minibits | Cashu.me | Nutstash.app | More…
- Tutorial Cashu.how
- Run a good public LN node, with good liquidity and maintenance. This is a serious task, do not ignore the maintenance aspect, you are a banker now. I wrote several guides about running routing nodes, please read them:
- What software could I run for a LN node?
- Managing Lightning Node Liquidity
- Lightning Node Maintenance
- Private banks over the Lightning Network
- Recommendations for LN users
- Lightning Routing Fees Experiment
- Getting started with Umbrel as LN node
- Lightning Network Submarine Swaps
- and many more… on my substack and github page
-
On top of your LN node, install LNbits. A powerful apps suite with many extensions useful for a merchant and for the customers. In LNbits, you can start creating the Cashu mints, practically you could create various “banks”. With just 2 clicks and selecting a LNbits wallet dedicated for the mint, you can have a “bank” Cashu mint that will manage all the tokens.
As you can see, I could use a very descriptive name, that will appear in the user wallet as name of the mint (bank).
You can have various mints, with various destinations, use cases, and assigned to specific LNbits wallets.
Please, remember these are only for testing and demo, DO NOT use them as a regular ecash mint !
Install and run Cashu wallets to familiarize with using ecash and mints. By scanning the QR code displayed for each bank you can open it in Minibits or eNuts apps or just in browser with Cashu.me or Nutstash.app.
-
Create some tokens in your mints (banks). Just by depositing (from any LN wallet) let’s say 100.000 sats into a mint, you will create the same amount of ecash tokens.
!!! Keep in mind that if you want to share / distribute those ecash tokens to other users, you must have imported your mint link into one of those wallets. Each import in a different wallet app will have its own mint amount, but could communicate with other users under the same mint, WITH NO FEES.
This could be a scheme for a scenario where the banker created 3 different mints, for different destinations. It could be just one or many others, is up to you how you organize them.
So, as a “banker”, open your mint into one of those wallets. It will be EMPTY, no tokens. By depositing let’s say 10.000 sats to the mint, it will create 10k tokens, ready to be distributed among your customers.
-
Make an announcement among your shop customers. They could buy with their fiat currency, the amount of ecash desired, directly from you.
How?
They will have to install the Minibits or eNuts wallet apps into their devices and you will just be able to send them directly the ecash tokens from your own Minibits / eNuts / Cashu.me wallet where you start “minting” those new tokens.
Now they can start transacting with those new ecash tokens, in your shop or between each others, or even send them to any other LN wallet (cash out).
-
If the user spend all his tokens bought from you, they have 2 options:
- buy more tokens with fiat currency from you (the banker)
- just deposit sats from any other LN wallet into his Cashu wallet, using your mint or any other mint. If they choose the same mint of yours, could transact again free fee in your shop.
-
You could incentivize your customers to buy from you the tokens offering them a good discount in your shop and a good rate price for fiat/BTC. Practically if you buy more BTC from the market, then you sell them to your customers as ecash, you will get back your sats when they come back and spend them in the shop. Exactly like regular gift cards.
Then you use that fiat currency to buy more BTC and pay your suppliers. Everybody is happy.
With LNbits is also possible to create physical NFC cards, pre-loaded with sats, using the extension BoltCards. As a banker you can sell these are gift cards and your customers will come into your shop to use them.
Here is an example of how kids are using NFC cards pre-loaded with sats and pay for groceries in a shop in Brazil. See more examples here.
STEPS TO DO AS THE MINT USER
As the user you don’t have to do too much:
- install one of those Cashu wallets - Minibits | eNuts or both…
- save your backup information in a safe place
- receive or redeem the ecash tokens from your local minter (banker)
- start transacting with your tokens or redeem them into any of your self-custody wallets in case you accumulated too much.
In each app you can also see each mint details (if you use multiple mints), make backups, swaps between mints and more technical details about the tokens.
The swaps between mints also could be a very nice and easy form of coinjoin…
Here is also a very good video tutorial of how to use Minibits wallet by BTC Sessions:
CONCLUSION
As you can see, this could be another way to onboard more people into using Bitcoin, without even knowing all the technical details behind the UTXO, nodes, liquidity, channels, routing fees etc. For many all these aspects will be a hassle and they will just not want to start using Bitcoin.
But with simple solutions, as ecash, NFC cards, “uncle Jim” local banks could be a start for all these simple users.
Later, once they learn more about Bitcoin, they can move their sats into more self-custody wallets and hold safely large quantities of sats.