What is Proof of Physical Work?
A receipt for work done in the physical world. When a task is accepted, Teleport writes a claim: what was asked, who did it, where the evidence came from and which policy accepted it. Claims are hashed, batched and anchored on the Base blockchain, so anyone can check one later — without trusting Teleport.
A PoPW receipt proves
- A defined task existed, posted by a known kind of requester for an accountable person or organization.
- This exact evidence bundle — of this declared origin — was submitted.
- It was evaluated under this exact, versioned verification policy.
- This outcome was decided, under this rights record and settlement.
- None of it has changed since the batch was anchored.
It does not prove
- That a blockchain saw anything. It didn't. Capture and verification did.
- “A human definitely folded this towel.” That remains the result of capture and verification.
- Who you are, where you live or what the photo shows. None of it is on-chain.
- That a model is right. Models estimate; a named policy decided.
- Anything about the value of $PORT.
What happens when you press Verify.
Only the batch root goes on-chain. Everything else is recomputed from the claim, fresh, every time the page loads.
- 01
Fetch
We load the claim by its id or hash: the decision, who asked, who did it, the weakest evidence and when.
- 02
Leaf
The claim hash is hashed again into a Merkle leaf — exactly how it went into its batch.
- 03
Root
We fold in each sibling from the published path, smaller value first. Landing on the batch root means the claim is in the batch.
- 04
Anchor
That root was posted to the PhysicalWorkRegistry on Base. We link the transaction so you can read it yourself.
Rather not take our server's word for it? The verification walkthrough lets you run the same checks yourself, with public data only.
What the stamp means.
Every receipt carries one of four stamps, and the page always shows the current one.
- Accepted
A reviewer accepted the work and the claim was written. It is waiting to join a batch; nothing is on Base yet.
- Anchored
Its batch root is on Base and the challenge window is open — 72 hours for Standard proofs — so a provable fault can still be raised.
- Final
The window closed without a successful challenge. The proof stands.
- Invalidated
A fault in its batch was proven and the batch was invalidated on Base. Treat the proof as void.
Looking for a claim id? It's behind the Proof link next to each accepted task in your account, and in the task's claimId from the API or MCP. For the full design — the 25 fields, the hashing and the $PORT bond behind every batch — read how proof works.
Get proof
Put a receipt on the work you already pay for.
Verify-only mode checks work done anywhere — by your team, your contractors or your robots.