Getting Started
The BESSE web app lives at besse.netlify.app (opens in a new tab). There is also a companion mobile app for iOS and Android.
1. Sign In — Two Ways
Option A: Google or Email (recommended — no setup)
You don't need a crypto wallet, an extension, or any blockchain knowledge:
- Open besse.netlify.app (opens in a new tab) and click Register.
- Fill in your details and choose your role (more about roles under the Role Based Access Control section).
- Sign in with Google or an email code.
- A secure digital wallet is created for your account automatically, behind the scenes — you can export its keys at any time from your profile.
That's it. New accounts receive a small amount of test ETH so you can start bidding right away.
Option B: MetaMask (for crypto-native users)
If you prefer to use your own wallet, BESSE also supports one-click MetaMask sign-in via signature verification.
If the video doesn't play, [click here](https://drive.google.com/file/d/1k5bF2LRGed479H_3EVeO_6KWG03KwUOq/preview)The walkthrough videos on this page were recorded with the original wallet-first flow — the steps inside the app are the same, but the site now lives at besse.netlify.app and social sign-in is available as the simpler path.
To set up MetaMask:
- Click here (opens in a new tab) to install the MetaMask browser extension, then create a wallet by following its prompts.
- We operate on the Sepolia test network — real funds are never involved.
- On the Register page, choose Connect Wallet, approve the connection in the MetaMask popups, and sign the verification message when prompted.
Registration takes you to your tailor-made Dashboard page where you can see your profile, transactions, economic and environmental impact using the EPA WARM model, auctions, and assets. You only register once — afterwards, signing in takes a single click.
Note: after signing up, a small amount of test ETH is deposited in your account so you can transact. These are test-network tokens with no real-world value — but the faucet is shared, so please don't abuse it.
2. Create An Auction
If the video doesn't play, [click here](https://drive.google.com/file/d/1XFAORRTlRisgbD1bO6gODdngJyloFh6k/preview)Click on Create Auction in the navigation bar.
2.1 Create an Asset
First, to auction an asset, you have to create an asset representing a real-world entity on BESSE.
- Add in your asset's title
- Add a bale type representing the material type of your asset
- Add the quantity of the material in tons
- Add an image of the material (optional)
- Click on "Create Asset"
Once the asset has been created, you will see three options representing three ways to sell assets on BESSE.
2.2 English Auction or Increasing Price Auction
The traditional auction, which most people are familiar with. The seller decides the starting price, which generally is lower than the expected selling price. To become the winning bidder, one will have to bid a price higher than the current highest bid. The highest bidder at the end of the duration wins the auction. You need to enter the following configuration for an English auction:
- End Date: Date when the auction is supposed to be over
- End Time: Exact time when the auction is supposed to end
- Starting Bid: Item's initial price, to be set lower than the estimated selling price
2.3 Dutch Auction or Decreasing Price Auction
The starting price will be the highest price of the auction's lifespan. After that, the price decreases uniformly till it reaches its lowest by the end date. The bidders wait for the price to decrease enough to be affordable for them. Once that happens, they bid and win the auction. If nobody bids, the auction ends after the duration decided by the seller. You need to enter the following configuration for a Dutch auction:
- End Date: Date when the auction is supposed to be over
- End Time: Exact time when the auction is supposed to end
- Starting Price: Item's initial price, to be set higher than the estimated selling price
- Final Price: Minimum selling price, the lowest price the seller will sell the material for
2.4 Fixed Price Sale
The Fixed Price sale is a listing in which the seller sets a fixed price for the materials. The listing is live for a duration decided by the seller. Anyone who buys first during that window wins the material. You need to enter the following configuration for a fixed-price sale:
- End Date: Date when the listing is supposed to be over
- End Time: Exact time when the listing is supposed to end
- Fixed Price: Item's fixed price
3. Bidding on Auctions
The video below demonstrates how to bid on different types of auctions.
If the video doesn't play, [click here](https://drive.google.com/file/d/1A3USb9n1fJH-spR3zEqfhqk81L9xqOOJ/preview)Bids and purchases are signed by your own wallet — approve the wallet prompts when they appear (MetaMask popups, or an automatic step with the embedded wallet).
3.1 Bidding on an English Auction
- Click on the blue "Place Bid" button on the auction card
- It redirects you to the auction detail page. Click "Place Bid" and approve the wallet prompts
- A popup shows the current highest bid; enter a higher amount
- After bidding, you can see your bid under the "Transactions" table on your Dashboard
3.2 Bidding on a Dutch Auction
- Click on the blue "Place Bid" button on the auction card
- On the detail page, click "Place Bid" and approve the wallet prompts
- This purchases the asset at the auction's current (decayed) price
- After buying, you can see your new asset under "My Assets" on your Dashboard
3.3 Buying at a Fixed Price
- Click on the blue "Place Bid" button on the auction card
- On the detail page, click "Place Bid" and approve the wallet prompts
- This purchases the asset at the fixed price
- After buying, you can see your new asset under "My Assets" on your Dashboard
4. After You Win: Escrow & Delivery
Payment does not go straight to the seller. It is held in an on-chain escrow while the physical material is delivered — you can follow the shipment live in the mobile app. When you confirm delivery, the escrow releases payment to the seller (with a 7-day fallback so funds can never be stuck).