TLAY turns a connected device's actions into services that people and software can buy. Buyers pay into a contract, the device measures and signs what it delivered, and they are charged for exactly that. The rest goes back to them on its own.
The demo opens with a throw-away wallet and test money, so you can order, run a device and see the settlement. It resets every night.
ORDER rgv13fq8Settled
ServiceActuator timePrice0.00001 USDC / msOrdered1,000 msDelivered618 msmeasured and signed by the device
Charged0.00618 USDCRefunded to the buyer0.00382 USDC
Held by escrow contract 0xCf7E…0Fc9 until settled. Refund sent with no fee to the buyer.
A real order from a test run: paid for 1,000 ms, charged for 618.
A
No account to buy. A wallet signs in and signs the payment.
B
No gas for the buyer. The platform sends the transactions the buyer signed.
C
No money with the platform. A contract holds it until the order settles.
The film · 2 min 46 s
Watch one order go from a signature to a settlement.
English narration with captions. The order, amounts and addresses in it come from a test run. For the long version, read the thesis.
How it works
From a device on the bench to money in your address.
01
Describe the device
A manifest lists what it can do, the inputs each action takes and what it measures. Your device maker writes it once per product.
02
Claim it
The device signs a one-time challenge with its own key. From then on only your organisation can run it, or sell it.
03
Sell a service
Pick the action, the price and who gets paid, a site owner or installer included. List it in the market, or sell it to your own customers.
04
Get paid for what it did
The device runs, meters and signs. The contract pays each payee their share of what was delivered and refunds the buyer the rest.
Three ways to sell a machine's time.
metered_service_escrow
Pay for what you use
The buyer pays in the most an order can cost. The device runs once, up to what was ordered, and the buyer is charged for what it measured. Every delivery can be accepted or disputed.
0.00001 USDC per ms, up to 5,000 ms
access_lease
Timed access
One payment for the right to use the device for a while, a set number of times. The seller is paid when the access starts; the lease ends by itself.
0.005 USDC for 1 hour, up to 5 uses
access_subscription
Subscription
Prepaid periods with a number of uses in each. The seller is paid period by period; a buyer who cancels gets the periods that have not started back.
0.002 USDC a day, 7 days, 10 uses a day
Prices are the sandbox's examples. Every service is priced by its seller.
Why trust it
Built so that nobody has to trust the platform.
The money sits in a contract
Buyers pay an escrow contract on chain, never the platform and never the seller directly. Settlement credits each payee; sending it on can only go to the payee's own address.
The device signs its measurements
Each run's meter readings and result carry the device's own signature, and the charge is computed from them. The evidence can be anchored on chain.
Your payout key stays yours
On your own address, every order waits for your key to sign its terms. Sign in the app with your wallet, or run the signer next to the key under rules you set.
Disputes have a named judge
A service names who decides a disputed delivery. Without a decision in time, the buyer gets everything back. The buyer's reason and both sides' messages are on the order.
For sellers · TLAY Operator
Run the fleet, sell the time, see the money.
→Claim devices in three steps, or give an installer a credential for the site.
→Create services, list them, change prices without touching orders already placed.
→Earnings per payee, sent on to their addresses with the fee paid for them.
→Signed firmware, rolled out in waves that pause by themselves when too many fail.
→A security policy per product: devices that fail it are flagged or kept from trading.
→Notifications in the app and by email: orders to sign, disputes, devices offline.
For buyers · TLAY Market
Buy a machine's work with a wallet.
→See the device, whether it is online, and the exact terms before paying.
→Pay with a signature; start the device from the order page.
→Accept the delivery, or say what is wrong and follow the dispute.
→What was not delivered comes back to the wallet by itself.
For developers
From the firmware to the order, one platform.
On the device
A C runtime and ESP-IDF components for ESP32-C3 and S3: as the main controller, or as a module next to your own MCU. The device keeps its keys, signs its records, takes only firmware signed by your publisher key, and falls back if a new image does not start.
On the platform
A REST API described in OpenAPI, with SDKs for TypeScript, Python and Go, webhooks with signed deliveries, and the same orders, disputes and notifications the apps use. Software can buy too, within a spending grant its owner signed.
// buy 1,000 ms of a machine's time, then run itimport { MceClient } from"@tlay/mce-platform-sdk";
const mce = new MceClient({ baseUrl, clientId, clientSecret });
const quote = await mce.quotes.create({
offering_id, quantity: "1000", buyer: { address: wallet },
});
const order = await mce.agreements.create({ quote_id: quote.id });
// the buyer's wallet signs the payment; once it is held:await mce.invocations.create(deviceId, {
action: "leased_run", product_version: "1.0.0",
parameters: { duration_ms: 1000 }, expires_at,
agreement_id: order.id,
});
TypeScript SDK. The same calls exist in Python and Go.
Where it stands
Now: metered orders, leases, subscriptions and disputes work end to end, from the device's signed record to settlement.
Next: verification on production hardware, then opening to the first device makers and fleet operators.
Put a machine to work.
We are onboarding device makers and fleet operators one by one ahead of launch. Tell us what your devices do; we will come back with how they could sell it.