Ching! User Guide

Step by step walkthrough for xDai powered Cypherpunk Speakeasies

Aaron Lyn Anderson
Ching!
10 min readApr 3, 2019

--

This guide is intended to walk new users through the flow of listing and selling items for xDai at Cypherpunk Speakeasies. If you find it to be incomplete, there are multiple ways to help me fill in the gaps:

  1. Reply directly to this Medium article and I’ll update it accordingly.
  2. Open an issue on the Ching! GitHub repo.(https://github.com/ChingStore/ching)
  3. Send me an email at aaron@ching.store.

This guide will assume that you and your guests have xDai loaded onto Burner Wallets. If you don’t have xDai to load onto your guests’ devices, Burner Wallet has an exchange built in. The organizer can exchange their ETH into the the corresponding amount of DAI, then to the corresponding amount of xDai. It is essential to use xDai at this time because Ching! and Burner Wallet are actively being developed to support each other. Plus, the confirmation times are crazy fast!

Anyone can get a Burner Wallet by visiting https://xdai.io/.

In this guide, the minimum essential information will be in bold.

Step 1. Start by visiting https://ching.store/ from any mobile device or computer. You can simply type “ching.store” into your nav bar.

Here you can scan down the page and learn a little bit about what Ching! is. At the bottom of the page you can familiarize yourself with the founders.

The important part here is that bright blue-green “Become a vendor” button. Select “Become a vendor”.

Step 2. You will land on the DApp’s landing page.

You can skip right here by going to app.ching.store or master.ching.store. But this is a step by step guide and it doesn’t skip!

It presents two options, “Become a vendor” and “Log In”. Since we are starting anew, select “Become a vendor”.

Step 3. You will land on the account creation screen.

Here we have several options to get you authenticated. “Sign up with Google” works well for me. “Sign up with Github” and “Sign up with Facebook” might not work for some users. “Continue with e-mail” is a safe fallback if all else fails.

Select “Sign up with Google” and you’ll choose a gmail account to associate with this DApp.

Step 4. You will land on your store’s initial configuration page. If you make a mistake here, it’s okay because you can edit this stuff from inside the DApp as well.

We will assume that your event is only using Burner Wallets and xDai so copy your public Ethereum address from you Burner Wallet and paste it in the “Ethereum address” field.

You can find your Burner Wallet public address by clicking on “Receive” in the Burner Wallet. You public address is that string of random numbers and letters starting with “0x” directly below the QR code.

***Weird Edge Case!: If you are operating a Ching! terminal for a third party and they give you a seed phrase to use on your Burner Wallet, it won’t work if Burner Wallet detects injected web3 like Metamask. This means that you can go through the advanced settings to configure the seed phrase, but Burner Wallet won’t care because your injected web3 is more important (because it is much safer than the way Burner Wallet handles private keys). I had this happen to me at a MakerDAO DAppy Hour and all my sales went to my own account instead of theirs. I configured Burner Wallet from Chrome where I had Metamask enabled. If I had configured Burner Wallet from Brave where I don’t have Metamask installed, it wouldn’t have happened***

Information: If you click on “What is it?” you will be taken to this screen that recommends some wallets you can use.

The Coinbase wallet is good for accepting ETH as payment, but it does not support DAI or xDai yet.

The Status and Trust wallets can handle both ETH and DAI, but not xDai yet.

Again, for this guide, use the Burner Wallet from xdai.io.

Step 5. Once you have given your store a name and pasted in your Burner Wallet address, press the “Continue” button.

Step 6. Now we find ourselves in inventory screen. The DApp defaults to edit mode when you first get here.

From here you can edit your store name and add an item. We’ll add our first item. Just select “Add first item”.

Step 7. There will be four fields to fill out to add a new item. The name of the item you are selling, the price in USD, the amount in inventory, and a photo of the item.

In this example, I have opted to sell chapstick at $2.50 and I declare that I have 22 in stock. I used a stock image for the chapstick since I’m making this walkthrough on a laptop. If you are using a mobile device, it’s easier to take a picture with your device’s camera.

If you are selling a variety of drinks, it doesn’t hurt to be specific and specify the exact item you are selling. So if you are selling a variety of soft drinks, create an item called “Mr. Pibb” and another called “Sundrop” and so on.

When you are done filling in the four fields, press “Add a First Item” or “Add an Item”, it doesn’t matter as long as it’s the button at the bottom.

Step 8. I’ll assume we are selling two items, so instead of pressing “Done” or “Start Selling” we will press “Add another”.

Step 9. This time I’ll sell my old cash register since I don’t need it now that I have Ching!. The process is the same as before, I’ve input the values unique to this item like it’s name, price, number in stock, and it’s picture. Finally, I’ll select “Add an Item”.

Step 10. If you need to you can add more items. The “Add another” button will always be the last option displayed while you are in edit mode. If you don’t see it, scroll down or swipe up depending on if you are on a computer or mobile device.

To exit edit mode, press the red “Start Selling” prompt above your store name. The edit badge will disappear from your inventory items and “Start Selling” will turn into a subdued “Edit inventory” prompt.

In this example I’m ready to sell everything a budding chapstick vendor would ever need. In your case, you probably have drinks and snacks. It’s really all the same, Ching! doesn’t discriminate.

Step 11. My chapstick and cash register store is up and running. I have a customer who wishes to purchase a single chapstick. One of us will select the desired item and the number 1 will show up to the top right displaying how many of that item is being ordered.

If we press the item button too many times, a number greater than 1 will appear. No worries, just click on the number to knock it down a notch.

We see that a little tab has appeared at the bottom. It has some handy information for the merchant and customer alike. It shows the total number of items being ordered and the total cost. When the customer has finished selecting items to buy, click on that tab on the bottom of the screen.

Step 12. The shopping cart slides up all slick-like. Now we have a few options before checkout. We can press the “x” next to the item to remove it from the shopping cart or we can select and edit the quantity from here. If a customer wanted to buy all 22 chapsticks in my inventory, we could just edit the number here instead of clicking on it’s inventory button 21 more times.

But from here, the customer is in control. The next three steps will be completed from their Burner Wallet.

Ask the customer to pay with their Burner Wallet.

Step 13. The customer should have Burner Wallet on their mobile device with some xDai already in it. In order to complete the transaction, the customer will need at least a thousandth of a penny extra in order to pay for gas. This will almost always be the case except at the end of a Cypherpunk Speakeasy where the organizers gave everyone $10 in xDai and priced drinks at $10, $5, $2.50, or $1 a piece.

As long as they have slightly more xDai than the cost of their order, the customer should press the QR reader button on the bottom right of their Burner Wallet.

Step 14. When the customer clicks the QR reader button, they should grant permission for the DApp to use their camera if they haven’t already done so. Then they should just focus the camera on the QR code displayed in the Ching! shopping cart.

Step 15. In their Burner Wallet, they will see the “Send to Address” interface. Three important pieces of information have been populated for them. The receiving address you set up with your ching.store account is populated in the “To Address” field. The “Send Amount” is the same as their order total. And the “Message” kind of acts like a receipt for both merchant and customer.

There is no need to edit any of this information. If everything looks right, the customer should just press the orange “Send” button.

Step 16. At roughly the same time, the customer’s Burner Wallet will display a “Receipt” and your ching.store will display a checkmark with the word “Confirmed!”. Be sure to give the customer what they ordered and then press the “Sell more items” button.

In the workflow you will have at a Cypherpunk Speakeasy it will be handy to wait to hit the “Sell more items” button until after you have fulfilled the customer’s order, but it’s not absolutely critical.

Step 17. Ching has a “Sales” tab that keeps track of all of your transactions. If it takes some time to fulfill orders and you choose to take orders from more customers, you can use the “Sales” tab to view recent sales.

This feature is still in development, so the “Download report” button doesn’t do anything cool yet. You also can’t clear your “Sales” tab yet. Like everything else in the crypto-universe, we are still learning how the public will use our tools. If you have any ideas for how to make this feature more valuable, please send them to us! (Grants are also welcome.)

Step 18. Finally, in the “Profile” tab you can change your Ethereum Address whenever you like. If you click on the little green pencil icon, it will turn red and you will be in edit mode. I find it handy to use my Metamask address as a receiving address and you might, as well.

For the safest possible experience, you’ll want to use a more permanent address than your Burner Wallet’s default address. Just make sure it’s an address you can point to side chains with. I use Metamask in this case because I can switch over to the xDai side chain at will. You can also configure your Burner Wallet with your more permanent addresses private keys and use Burner Wallet to exchange from xDai to DAI to ETH. These are strategies outside of the scope of this walkthrough.

Once you’re done with the event, you can hit that “Log out” button and go back to your Burner Wallet to settle out for the night.

At the end of the event, all of your revenues have been forwarded to the address you provided. You can trade your xDai for cash with someone at the event or you can use Burner Wallet’s “Wyre” fiat off-ramp. Personally, I send all my burner wallet assets to my metamask account and then open Burner Wallet from my web3 enabled browser where it automatically detects metamask. That gives me the benefits of both DApps. Just don’t change any Burner Wallet settings if you have any assets left in it! Burner Wallet and Ching! are both underfunded open source projects so don’t take any risks with them yet. Just have fun running Cypherpunk Speakeasies and come up with new ideas for real world solutions, make friends and be awesome to each other!

--

--

Aaron Lyn Anderson
Ching!
Editor for

I co-founded web3devs and Ching!. As a chain agnostic DApp developer, I create applications to help connect people.