TLAY User Guide
TLAY lets a connected device sell what it can do, per use, by amount or by time period. Sellers manage devices and services in the operator app. Buyers pay from their own wallet in the shop. An on-chain contract holds the money in escrow, and settlement follows the metering that the device signs.
This guide follows the order in which each of the two kinds of users works. Every step has a screenshot of the current version. The apps are in English, and this guide names buttons and labels exactly as they appear on screen, for example Sign in. Click any screenshot to enlarge it.
TLAY Operator
The operator app, for sellers: device owners and their operations teams.
Manage products, devices, services, orders, disputes, earnings, firmware and team members, and receive notifications and email. You sign in with your email and password.
TLAY Market
The shop, for buyers: anyone with a wallet.
Browse services, place orders, pay, start devices, accept deliveries or dispute them, and receive order notifications. You do not register. You sign in by signing with your wallet, and you pay no network fees.
Basic concepts
| Concept | Name in the app | What it is |
|---|---|---|
| Product | Products | A description of a kind of device (a manifest, in JSON): which actions it can perform, which parameters each action accepts, and what it measures. The device maker provides it. |
| Device | Devices | A real machine. After you claim it, it belongs to your organization, and only your organization can use it. |
| Service | Services | What a device sells: which action, at what price, and who gets paid. There are three kinds: pay for what you use, timed access and subscription. |
| Order | Orders | An agreement between a buyer and a seller. The terms are fixed when the order is placed, and nobody can change them after that. |
| Escrow contract | contract / escrow | The buyer pays into an on-chain contract. The money does not pass through the platform and does not go straight to the seller. After delivery, the contract splits it among the parties according to the terms. The part that was not delivered goes back to the buyer. |
| Payout address | payout address | The on-chain address where a service receives money. If you use your own address, every order needs a signature from that address's key before it takes effect (see Use your own payout address). |
| Metering and evidence | Measured / Evidence | The device measures how much it delivered (for example, 618 milliseconds of running) and signs the number with the device key. Settlement uses this signed number. |
| Dispute and resolver | Dispute / resolver | A buyer opens a dispute when they disagree with the delivered amount. The service terms can name a resolver (an on-chain address, usually a third party both sides trust) that decides how much was actually delivered. If there is no resolver, or the resolver does not decide in time, the buyer gets a full refund. |
| Notifications | Notifications | Things you need to act on or should know about: orders waiting for your signature, disputes, devices offline, deliveries waiting for acceptance, refunds and more. They show in the app and can also be sent by email. |
How the money moves
Take the most common kind, pay for what you use (in the app: Pay for what you use / Metered service):
flowchart LR B["Buyer's wallet"] -- "Signs an authorization (no fee)" --> C["Escrow contract"] D["Device"] -- "Signed metering: how much was delivered" --> P["Platform checks"] P -- "Reports the delivered amount" --> C C -- "Pays for what was delivered" --> S["Seller's payout address"] C -- "Part not delivered" --> B C -- "Platform fee" --> F["Platform"]
- When the buyer places the order, they pay the most the order can cost (unit price × quantity ordered). The money goes into the contract.
- The buyer starts the device. The device runs, measures what it actually delivered, signs the measurement and reports it.
- The buyer accepts the delivery or disputes it within the dispute window. If the buyer does nothing, the order settles automatically when the dispute window ends.
- The contract pays the seller for what was actually delivered (minus the platform fee) and returns the rest to the buyer's wallet automatically.
Timed access and subscriptions differ only in steps 1 and 4. Timed access is paid in full once, and the seller is paid when access starts. A subscription prepays several periods. The seller is paid for each period when it starts, and periods that have not started are refunded if the buyer cancels.
Sellers: start selling with TLAY Operator
A new seller goes from zero to the first payment in this order:
- Sign in
- Add a product
- Claim a device
- Create a service
- List it
- Handle orders
- Withdraw
The left navigation lists, in order, Overview Notifications Products Devices Orders Disputes Services Earnings Firmware Team. At the bottom left are your name (opens your account settings), your role and Sign out. What you can do depends on your role. See Roles and permissions.
01Sign in and join a team
The operator app has no self-service sign-up. You receive an invitation link from your organization's Owner or Admin. Open it, enter your name, set a password (at least 10 characters) and click Join. You join the organization and go straight to the overview. If you already have an account with this email, enter your existing password.
Forgot your password: on the sign-in page, click Forgot your password?, enter the email you sign in with and click Email me a link. If that email has an account, you receive an email with a link. The link works for one hour and only once. Open it and set a new password. This signs you out on every device where you are signed in. The page does not reveal whether the email is registered.
02Overview: what needs your attention now
After you sign in, you see Overview first. The four numbers at the top are online devices, open orders, funds held in escrow for orders, and firmware rollouts in progress. Click one to open the matching page.
03Notifications and email
Things you need to act on or should know about appear in Notifications. The red number in the navigation is the unread count (it refreshes every 30 seconds). Act items need you to act: an order is waiting for your signature, an order was voided because it was not signed, a buyer opened a dispute, a dispute has a new message, a dispute is waiting for you to decide as resolver, a device has been offline for more than 10 minutes, a device does not meet the security policy, or a firmware rollout paused automatically after too many failures. Info items tell you something happened: an order was paid, an order settled, a rollout finished.
To choose which notifications also go by email, open your account page (click your name at the bottom left), tick each one under Email notifications and click Save email choices. By default only the ones marked urgent are emailed. The read-only role (Viewer) gets no email by default. You set this separately for each organization.
04Add a product
A product describes what a kind of device can do. When you claim a device, you say which product it is, and services sell the product's actions. So the first step is to add a product.
- Go to Products and click New product (only Owners and Admins see it).
- Enter a Name (the name buyers and installers see, for example Dispenser D2).
- Choose the manifest file (.json) from the device maker, or paste its contents.
- Click Add product. The platform checks the manifest. If there is a problem, it tells you exactly what is wrong.
product_id in the manifest becomes the product ID, and product_version becomes the first version.The product page lists every action the latest version can perform (parameters, units, ranges, what it measures, whether it can only be used under an order) and all versions. You cannot edit a version after you publish it. To make changes, publish a new version under Versions.
05Claim a device
Claiming makes a device belong to your organization. The device signs a one-time challenge with its own key to prove that it is the device it says it is. Go to Devices, click Add devices and follow three steps:
- Which device: choose the Product and enter the Module ID or serial (the module number or serial number on the device label). Optionally enter a name that is easy to recognize, for example line-2. Click Continue.
- Let the device sign this challenge: the page shows a challenge that is valid for 15 minutes. In the board's serial console, run the
claim …command shown on the page (the page also explains how to do this for simulated devices and your own firmware). The device must be able to reach the platform. - Paste what the device printed: paste the line the device printed that contains
claim_proof, then click Claim the device.
The device page shows connection status, firmware version, security check results, the values the device reports, recent actions and events, and all orders for this device. You can run actions that are not sold under an order directly in Run an action, for debugging and day-to-day operations.
06Create and list a service
A service is what a device sells. Go to Services and click New service:
- Choose the device that delivers the service and how it is sold (How it is sold), then click Continue:
- Metered service (pay for what you use): the buyer first pays the most the order can cost. The device measures what it actually delivers. The buyer is charged only for what was delivered, and the rest is refunded.
- Access lease (timed access): paid in full once. The buyer can use the device a set number of times within a period.
- Subscription: several periods are prepaid. The buyer can use the device a set number of times in each period.
- Enter the name, price and limits, and choose the currency you are paid in. For pay for what you use, the limits are the maximum amount per order and how many hours the buyer has to dispute. For timed access and subscriptions, they are the allowed actions, the duration and the number of uses (0 means no limit).
- For a pay-for-what-you-use service, also set If the buyer disputes a delivery. In Resolver's address, enter the address of a resolver both sides trust (optional). Days to decide is the resolver's deadline (3 days by default). If you leave the resolver empty and a buyer disputes, the buyer gets a full refund when the deadline passes.
- Enter the Payout address. Optionally add a second payee under Also pay with a percentage share, for example an installer or the site owner (timed access can have only one payee).
- Click Create service.
New services are private by default. To make one appear in the shop, click List in the marketplace in the Services list. Click Remove from the marketplace to take it down. For a fixed-price service, you can change the price under Change the price. This publishes a new version of the terms. Orders already placed keep the original price.
07Handle orders
After a buyer places an order in the shop, it appears in Orders. You can filter by Open (in progress), Disputed and Finished.
The order page explains one order in full: what was bought, where the money is now (paid, sent to the seller, fees, refunded to the buyer, still in escrow), the deadlines, how much each party gets after settlement, and what the device did for this order, how much it measured and whether the device signed it.
08Use your own payout address: sign orders
There are two kinds of payout address:
- An address the platform holds for you (for trying things out only): the platform signs every order for you, and orders take effect right away. This suits trying things out. The safety of the money this address earns depends on the platform.
- Your own address (required in production): the contract only accepts orders signed with this address's key. So every order waits for your signature, for up to about 10 minutes (how long the quote is valid). In that time the buyer can pay first, but the money does not leave the buyer's wallet until you sign.
Orders waiting for a signature appear at the top of Orders under Waiting for your signature, and the overview flags them in red. Check that the payees under "Who is paid" are right. Then click Sign with wallet, and review and sign in your browser wallet (such as MetaMask). Once you sign, the buyer's payment takes effect immediately.
mce seller sign-orders. It automatically signs orders that match rules you set in advance (a fixed contract address, your payout address, accepted currencies, a maximum fee, a minimum price). It refuses the rest and records why. The private key never leaves that machine. The exact commands are under How you get paid on the Earnings page.09Handle disputes
When a buyer disputes a delivery, the order state changes to Disputed, and you receive a notification and an email that quotes the buyer's reason. Open the order. The Disputed by the buyer card at the top shows:
- The buyer's reason: the buyer's own words, written when they signed. The platform shows it only after checking that it matches the signature recorded on the chain.
- Who decides: the resolver address named in the service terms. If none was named, the card shows "No one arbitrates".
- Deadline: the resolver must decide before this time. If it does not, the buyer gets a full refund. Until then, the money stays in the contract.
10Decide disputes as a resolver
If your organization resolves disputes for other people's services (or a seller names their own organization as resolver), use the Disputes page:
- Under Addresses you decide as, click Add the address of my wallet. Your wallet asks you to sign a statement (it moves no money) to prove the address is yours. The resolver address in the service terms must be this address.
- After that, every dispute whose terms name this address appears under Disputes to decide, and you are notified about new disputes.
- Open a dispute. Review the buyer's reason, the messages from both sides, the amount ordered and the amount reported as delivered, and the metering records signed by the device. You can leave messages for the buyer and the seller.
- Under Decide, enter the delivered amount you accept (0 means a full refund, and the most is the amount ordered) and click Decide with wallet. The decision is an on-chain transaction sent from this address itself, so the wallet needs a small amount for network fees. Once the transaction confirms, the order settles at this amount and the rest goes back to the buyer.
11Earnings and withdrawals
After an order settles, the contract records what each payee is owed. Earnings lists, by payout address, total earnings and the amounts still in the contract waiting to be sent.
12Firmware releases and staged rollouts
Devices only install firmware signed by a publisher key they trust. To publish a release:
- Before your first release, register your publisher public key under Register a publisher key. The private key always stays on the signing machine.
- Sign the firmware with
mce firmware signon an offline machine. Then upload the signature file (.json) and the firmware image (.bin, up to 4 MiB) under Add a release. - Under Releases, click Roll out for that release, set how the rollout runs and click Start rollout.
13Team and account
Owners and Admins invite members in Team: enter an email, choose a role and click Create invitation link. Send the link that appears to the person. It is shown only once. For existing members, you can change the role, create a password reset link or remove them from the organization. You can revoke unused invitations.
Buyers: buy and use services in TLAY Market
You do not need an account to buy. You only need an ordinary wallet (such as MetaMask) with the stablecoin you will pay with. As a buyer, you only sign in your wallet and never send a transaction, so you do not need coins for network fees.
- Browse services
- Connect a wallet
- Place an order
- Sign the payment
- Start the device
- Accept the delivery
- Get the rest back automatically
01Browse services
The shop's home page lists every service that is listed. You can search, show only services whose device is online now, or filter by kind: Pay for what you use, Timed access and Subscription.
Open a service to see how it works and which device is behind it (whether it is online, whether it meets the seller's security policy, and its on-chain identity). You also see all the terms you agree to: price, limits, what happens in a dispute, which currency you pay in and who gets paid. These terms are fixed in your order exactly as shown, and the seller cannot change them later.
02Connect a wallet
Click Connect wallet at the top right or in the order panel. Your wallet asks you to sign a sign-in message that says "Signing this moves no money". This signature does not touch your money. You stay signed in for 7 days. Only the wallet that paid can see its orders. Click Disconnect to sign out.
03Place and pay for an order
- For a pay-for-what-you-use service, enter How much, the most you want in this order (for example 1000 milliseconds). The page shows "You pay in at most …", the most you will spend. Timed access and subscriptions show the total price directly.
- Click Continue. You have not paid yet. This only creates the order and holds the price for you for a while (the page shows the deadline).
- On the order page, click Pay … and sign a payment authorization in your wallet. The authorization is valid only for this order and this amount. The platform pays the network fee.
Some sellers use their own payout address and confirm each order themselves. In that case, after you sign the payment, the order shows Waiting for the seller. Your payment is signed and ready, and the money has not left your wallet yet. If the seller does not confirm before the deadline, the order is voided and your signature becomes invalid. No money is taken.
04Start the device
After the payment confirms on the chain (usually within a few seconds), the order becomes Paid or In use, and Use it appears on the page. For a pay-for-what-you-use order, enter the amount for this run (no more than the amount ordered) and click Start: ….
05Accept the delivery or dispute it
When the device finishes, the order becomes Delivered. Check the delivery on the page shows three numbers: the amount actually delivered, what you pay and what you get back. The delivered amount comes from the device's own signed measurement.
- All good: click Accept the delivery and sign in your wallet. The order settles immediately.
- Something is wrong: click Something is wrong, describe the problem (up to 500 characters) and click Sign and dispute. The money stays frozen in the contract. If the service names a resolver, the resolver decides how much was actually delivered. If there is no resolver, or the resolver does not decide within the deadline (shown on the service page, often 3 days), you get back everything you paid.
- Do nothing: when the dispute window ends (shown on the page, for example 5 minutes), the order settles automatically at the delivered amount.
After you dispute, Your dispute appears on the order page. It shows the reason you wrote, who decides, the deadline, and messages from the seller and the resolver. You can reply below, and they are notified. After a decision, or a refund at the deadline, the settlement result shows here.
06Timed access and subscriptions
Timed access is paid in full once. You can start the device a set number of times within a set period. The order page shows the uses left and when access ends. To end early, click End access now, confirm and sign. Ending early gives no refund.
A Subscription prepays several periods. You can use the device a set number of times in each period. When each period starts, that period's payment goes to the seller. You can cancel at any time with Cancel subscription. Periods that have not started are refunded. The current period is not refunded, and you can keep using it until it ends.
07Notifications and email
After you connect a wallet, Notifications in the header shows this wallet's unread count. You are notified about deliveries waiting for acceptance (with a deadline), settled orders and refunds, expired orders, and replies from the seller or the resolver in a dispute. Click a notification to open the order and mark it as read.
To get email, enter your address under Email me on the right of the notifications page and click Send me a link. Then open the link in the email and click Confirm my email address (the link works for 24 hours). Emails go to this address only after you confirm. To stop them, click Stop emails.
08My orders and refunds
My orders lists all orders for the current wallet, newest first. Open any order, and Your money on the right shows how much you paid, how much went to the seller, how much was refunded and how much is still in escrow.
Order states
Sellers and buyers see different state names for the same order. Each seller state matches one buyer state:
| Seller sees | Buyer sees | Meaning | Who does what next |
|---|---|---|---|
| Awaiting funding | Waiting for payment | The order exists, but the money is not in the contract yet | The buyer pays. If the service uses the seller's own payout address, the seller must also sign (meanwhile the buyer sees Waiting for the seller). |
| Funding | Confirming payment | The payment is confirming on the chain | Wait a few seconds |
| Ready | Paid | The money is in the contract | The buyer starts the device |
| Active | In use | The service is in progress | The buyer uses it, and the device meters it |
| Awaiting acceptance | Delivered | The device has reported the delivered amount | The buyer accepts or disputes. If the buyer does neither, the order settles automatically after the dispute window. |
| Disputed | Disputed | The buyer disputed, and the funds are frozen | The resolver decides. If time runs out, the buyer gets a full refund. |
| Closed | Finished | Settled | The seller sends out earnings in Earnings. The buyer's remaining money is refunded automatically. |
| Expired | Expired | Not paid or not delivered before the deadline | Any money paid goes back to the buyer |
| Cancelled | Cancelled | Cancelled before payment | Nothing |
Roles and permissions (operator app)
| What you can do | Owner | Admin | Operator | Viewer |
|---|---|---|---|---|
| View all pages | ✓ | ✓ | ✓ | ✓ |
| Run device actions, create and list services, change prices, sign orders, send out earnings | ✓ | ✓ | ✓ | — |
| Reply in disputes; register resolver addresses and decide disputes (the wallet must hold that address) | ✓ | ✓ | ✓ | — |
| Choose which of your own notifications are emailed | ✓ | ✓ | ✓ | ✓ |
| Upload firmware, start and pause rollouts | ✓ | ✓ | ✓ | — |
| Claim devices | ✓ | ✓ | Needs an installer credential | — |
| Add products, publish versions, set security policies, issue installer credentials | ✓ | ✓ | — | — |
| Invite members, change roles, create password reset links, remove members | ✓ | ✓ (cannot change the Owner) | — | — |
| Name a new Owner | ✓ | — | — | — |
The platform makes the final decision on permissions. The app only hides the actions you cannot take. If you see "Your role does not allow this.", your current role cannot do this. Contact your organization's Owner or Admin.
FAQ and current limits
Sellers
- Not getting emails? First check that this kind of notification is ticked under Email notifications on your account page (by default only urgent ones are emailed). Then check your spam folder. If that page says the platform has no email service set up, notifications only appear on the Notifications page.
- A buyer disputed. Can I refund them directly or charge less? You cannot change the outcome yourself. The resolver decides where the money goes, or it all goes back to the buyer at the deadline. What you can do is reply on the order and provide evidence.
- Why is the Disputes page empty? It only lists disputes that your organization must decide as a resolver. Disputes on your own orders are on those order pages.
- An order stays at Awaiting funding? The buyer may not have paid yet. If the service uses your own payout address, the order may also be waiting for your signature. Check Waiting for your signature at the top of Orders. If you do not sign within about 10 minutes, the order is voided.
- Claiming a device failed? The challenge is valid for 15 minutes. If it expired, click Start again. You must paste the whole line the device printed that contains
claim_proof. The device must be able to reach the platform. - I changed the price. Do old orders change? No. Changing the price publishes a new version of the terms. Existing orders follow the terms from when they were placed.
- Which actions have no confirmation step? Cancelling a rollout, removing a member and revoking an invitation all take effect immediately.
Buyers
- Do I need coins for fees? No. You only sign in your wallet, and the platform sends the on-chain transactions for you. Your wallet only needs the coin you pay with.
- I paid, but the device did not deliver? Every pay-for-what-you-use order has deadlines to start and to deliver (shown on the seller's order page). If nothing is delivered by the deadline, the order expires automatically and the money you paid goes back to your wallet.
- How long until a dispute is decided? If the service has a resolver, it depends on when the resolver decides, at the latest by the deadline on the order page. If there is no resolver, you get a full refund at the deadline.
- Not getting the confirmation email? Check your spam folder. After one minute, you can send it again from the notifications page.
- Can I use a pay-for-what-you-use order in several runs? No. A pay-for-what-you-use order can run only once, up to the amount ordered. If you need several uses, choose timed access or a subscription.
- Why can't I connect my wallet? Only ordinary wallets are supported for now, not smart contract wallets. Also, if there are too many sign-ins from the same network location in a short time, sign-in is limited for a while. Wait a few minutes and try again.