# User Stories User stories to explore the usefulness of anonsats ### Dramatis Personae * **Uncle Jim** is a technically proficient user (not a programmer) who wants to help his friends and family to learn how to use sats. Uncle Jim has some Bitcoin and a Lightning Wallet. * **Alice:** is family member of Uncle Jim. Alice is curious, but is casual user of social media and doesn't really care about the underlying technology. * **Bob** a close family friend and neighbour. Bob is trusted by Uncle Jim and Alice. ### User Story 1: Uncle Jim sets up an anonsats wallet and adds in some anonsats. Uncle Jim has heard about anonsats.io and figures this is the best way to get Alice on board by sending her some sats.He 1. Uncle Jim hears about an exciting new service called anonsats. He checks out the [Anonsats API](https://asats.io/anonsats/docs). 2. Convinced this is the way to get Alice into the sats game, Uncle Jim creates an [anonsats wallet](https://asats.io/anonsats/docs#/owner/anonsats_wallet_create_wallet_create_post) and writes down the `wallet_key` and `wallet_name` which are the keys to use the wallet: * The `wallet_key` key is the owner key and he must keep completely secret or risk loss of his funds. The `wallet_key` has full control and owner access to the wallet. * Uncle Jim is less worrid about the `wallet_name`, because the `wallet_name` is the user key and has limited read-only and deposit-only access to the wallet. Anyone who has this `wallet_name` can deposit to this wallet, that only Uncle Jim can withdraw! 3. With wallet in hand, Uncle Jim now needs to add some anonsats. Anonsats is fully-backed by Bitcoin, but to use anonsat tokens, they need to be minted using Lightning. Unfortunately, a simple user app is not yet available, but Uncle Jim is ready to navigate the challenging waters of API calls to make this happen. Fortunately, whoever wrote this service, is taking the time to document the backend [Anonsats API](https://asats.io/anonsats/docs). It looks pretty easy that Uncle Jim might create his own frontend client! But once the user app is available, it will be super-easy for everyone! 4. Unle Jim now has his `wallet_key` and his `wallet_name` handy (they are easy to type in!). He accesses the [deposit method](https://asats.io/anonsats/docs#/users/anonsats_lightning_deposit_wallet_deposit_post), enters an amount of sats and his `wallet_name`. He presses 'Execute'. 5. He then heads over to the [lnqrinvoice method](https://asats.io/anonsats/docs#/users/anonsats_lightning_invoice_qr_wallet_lnqrinvoice__wallet_name__get) and enters his `wallet_name`. When he presses 'Execute' a QR code appears, and he scans and pays with his Lightning wallet. 6. Once the payment has been completed, Uncle Jim checks if the sats got in with the [balance method](http://asats.io/anonsats/docs#/users/ansonsats_balance_wallet_balance_post) to see if the sats are in the wallet. He can use either user `wallet_key` or `wallet_name`. Sure enough, they are there! 7. Jim now has anonsats and he is ready to send some to Alice! ### User Story 2: Uncle Jim send anonsats to Alice Uncle Jim is now ready to send Alice some sats. 1. Uncle Jim instructs Alice to create her own [anonsats wallet](https://asats.io/anonsats/docs#/owner/anonsats_wallet_create_wallet_create_post). Heeding Uncle Jim's advice, she writes down for sakekkeping the `wallet_key` and `wallet_name` using a pen and a secret notebook. She emails Uncle Jim the `wallet_name` because Uncle Jim said it was ok. But Jim reminded her, "Don't ever share your `wallet_key`!" 2. Still being written, more to come... ## Additonal User Stories Will be written in due time... * Uncle Jim needs to receive anonymous donations * Uncle Jim is feeling generous * Alice doesn't have access to the internet, but she has a token she can spend! * Alice is feeling nervous * Uncle Jim burns his anonymous donation wallet *