Aegora.jp: An Explainer

Aegora.jp is a somewhat complicated system in that it directly uses on-chain contract call transactions as its payment method. This means that a sale’s status passes through phases that are governed by actions that occur on the chain which can only be initiated by transactions that are signed by the users and must be verified by Aegora’s backend rather than being actions that Aegora can independently take on its own.

How this works will be explained in this post at least to the level necessary for an ordinary user to understand what is going on when they click a button or sign a call.

Remember, the most important thing happening here is that Aegora represents the first time that cryptocurrency tokens are measured in real things rather than fiat currency. The value of the items traded are agreed upon in terms of AE, and the final decision to make a trade or not is strictly between the buyer and the seller.

For more information about the rationale behind Aegora please see this post: Alternative Tracks.

The Video

Note that everything discussed below is mentioned and demonstrated in a screen recorded video available here:

Specific Feature Explanations

Aegora’s Service Fee

Aegora’s service charge is a flat 2% (rounded down to the aetto) of the traded value.

The Aeternity Blockchain’s Fee

Aeternity’s service charge is limited strictly to the gas fee required to process a given transaction (a fraction of a penny/yen at the time of this post).

Language selection

Click the Murrican flag for Cheeseburger, click the Japanese flag for Moonspeak.

Click the Murrican flag to switch from Moonspeak to Cheeseburger.
Click the Gundam flag to switch from Cheeseburger to Moonspeak.

Other languages are planned, but not currently a priority. If you want to go to the trouble of helping us translate to a given language, please let us know!

Logging In

You log in to Aegora by using your Aeternity key. This is handled by your wallet. For this reason there are no user names or passwords to keep track of. Within the site every user can set a “username” but this is really a “display name”.

If you do not click “log out” your login cookie will remain valid for 30 days, after which you will need to log in again (sign another authentication message with your wallet).

Because all financial transactions are between the user and the chain (rather than the user and the website) it is not possible for anyone to cause financial loss to you by stealing your login cookie (though they could do annoying things like edit your sales item data or user profile).

(Once you get used to this system you will start wondering why this hasn’t been the login standard for websites for the last 20 years. It is just that much better.)

Creating an Account

Because all logins are through wallet signatures (simple message signatures) and your account ID is your public key, account creation is handled automatically the first time you click “login”. The first time you log in you will be taken to an account edit screen with a name of the form “名無し[unique number]” (the term “名無し” is just Japanese for “Anonymous”). You are free to change your display name, add a description of you as a seller (or buyer) and set your default location.

Working with Wallets

The site currently supports a browser wallet called Superhero which has been published by the Aeternity project. The first time you try to log in and the wallet isn’t found a link to the relevant browser plugin store will be presented to you. Follow the link, install the wallet, and you’ll be able to login.

There is one problem with the current system: The use of browser wallets restricts use of the buy and sell features of the site to desktop browsers (specifically Firefox, Chromium/Chrome and their descendants) for now. Other wallet uses, to include mobile wallets and standalone desktop wallets, are in the works. The easiest case is what we covered first, and that was Superhero, so this is where we are at the time of this writing.

Site Moderation

All sales that are posted have to pass through moderation. This means that it is not possible to sell anything that violates Japanese law on the site. Sorry, Silk Road enthusiasts, no rocket launchers, no drugs, no Uighur livers, no stolen credit card lists, etc. are accepted for sale. Further, the intent of Aegora is to encourage the buying and selling of real actual things, not ephemerals.

Also, please note that Tsuriai (the parent company that runs the site) is not interested in sales of “digital assets” such as NFTs or service/API keys and so on. There are already plenty of sites for that sort of thing, and their overabundance VS the utter lack of marketplaces for real actual things in the crypto world is what has led us to the ridiculous situation we find ourselves in today with “currencies” that can’t be used to buy anything real… so thanks, but no.

Why is my sale item not visible on browsing pages?

For a sale item to be visible three conditions must be met:

  1. The item must be created
  2. The item must be approved by a moderator (this can currently take up to a day as we are very low volume at the moment, so it isn’t like the red telephone rings every time a new sale has been created!)
  3. The sale contract must have been created on the chain.

As a seller you can very quickly create a new sale item. What is slightly less obvious is the need to go ahead and post the sale item on the chain (using the “post to chain” button at the top of the sale item’s management menu). If you have done both of those things then the only thing you are waiting on is a moderator to review and approve that item.

Note that you can post the item on chain before or after moderation — the order these two things occur in doesn’t matter. If you want your item visible right away go ahead and post it to chain and the moment it is reviewed it will be visible.

Why can’t I post large images?

The maximum upload size total for images per sale item is 5MB. That sounds small in an era of everyone’s phones creating 80MB jpegs at insane resolutions, but from the perspective of an online image post-processing background, that’s a lot of stuff to store, render down, sanitize and re-post.

Due to the privacy concerns and quirks of data storage and network jurisdiction involved (Tsuriai has no relationship with and no desire to be involved with the Clown Show That Seeks To Control Everything), Tsuriai has decided to directly host Aegora on its own hardware locally. This places constraints on the resources committed (to include bandwidth) to what is essentially an experimental project at a time when it is unclear whether financial markets will collapse to the point of there simply not being any real things to buy and sell before the public makes any transition in the way it utilizes alternative systems such as blockchain for real-world payments.

Alllll that said… there is a solution to the processing bottleneck and we are looking into it, but for now, shrink the size of your images! This is actually extremely easy to do, but it just isn’t a step most people are accustomed to doing for the last few years.

How does the actual sale procedure work?

(This is also explained in the second half of a forum post I wrote [here], which I have decided to directly plagiarize starting two paragraphs from now…)

When a user has created a sale item and that item has been approved by a moderator and the sale contract has been posted to the chain, the item becomes visible on Aegora’s browsing pages.

When a buyer clicks “BUY” on an item on the site a contract call is created that will commit the amount of the sale into the contract. Note, this money does not yet go to the seller, but rather it is held by the contract until final two-way acceptance of the sale.

At this point the sale item is no longer visible on the sale browser and is instead found in the “in progress sales” or “in progress buys” part of the seller and buyer’s user navigation, and the sale item page itself becomes a message log between the two. The buyer can (and in most cases should) place a “block” on finalizing the transaction which prevents the seller from claiming the funds until the block is removed.

During this period the buyer can message the seller, and the seller the buyer – and the seller can update the price up or down. If the price is adjusted down the buyer is refunded the difference at that moment, and if the price is adjusted up the sale cannot be completed until the buyer commits the difference to the contract (there is a button for this).

Most sellers will require a price adjustment no matter what, because they will need to negotiate shipping overhead. Occasionally the buyer may want to renegotiate the price, however, simply due to the volatility inherent in crypto prices.

Once both parties have agreed to the final price, the full price has been paid into the contract by the buyer and the buyer has removed any block on the sale, the seller can then click “accept” and receive the funds – at which point the sale item page (which is still for now a log of all messages between buyer and seller as well as a log of all on-chain transactions adjusting prices, blocks, etc. to date) changes to add an item-reception section where the buyer can review the seller and register whether or not he received he desired item.

Either party can reject involvement in the sale at any point prior to acceptance of the sale, at which point the buyer is fully refunded and the contract goes back into “NEGO” status and is once again made visible on the sale browsing screens of the site.

All of the price adjustment, sale blocks, acceptance, rejection, etc. are governed by contract calls on-chain and the statuses of those calls are verified by the site backend (listed as “pending changes” until they are confirmed on-chain).

How can I check my transactions on the blockchain?

Every transaction on Aegora (posting a sale to the chain, posting a buy request, adjusting a price, placing a sale block, cancelling, accepting, etc.) is, of course, governed by “smart contracts” on the Aeternity blockchain and the site merely manages a web interface to them. On every Aegora page where a relevant on-chain transaction exists, the transaction hash is listed and the text of that hash is a clickable link to the Aeternity blockchain explorer’s site where the details of the transaction itself can be viewed.

The “ContractID” field here is a link to that contract on the chain.

Contracts, public keys, contract calls, etc. can all be followed in this way.

Further Coverage Forthcoming

The above should be enough, particularly with the video and some careful though and perhaps experimentation on the testnet site, to get you started as a seller or buyer on Aegora.

The interface is still 4chan-tier rough, but once you understand how things work it is quite natural to use. Further articles will explain some do’s and don’ts as a seller and a buyer, and a few tips to make trade experiences smooth for you.

Site improvements will be ongoing as will further documentation, explanation (in video and prose), and hopefully a bit of promotional effort (at the very least locally here in Japan and likely also some parts of South America, though anyone in the world is free to adopt Aegora as a very low overhead sales platform and make use of it).

This blog has comments, so if you have questions or things you want me to add to this explanation please feel free to ask!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.