MPP Sessions enable fast offchain micropayments with onchain settlement.
MPP Sessions enable fast offchain micropayments with onchain settlement.
Sessionscan indexes payment channels on Tempo, the primitive behind sessions in the Machine Payments Protocol. Sessions are how software pays for something continuously — per API call, per token, per byte — without sending a transaction for each payment.
Every row on the home page is one channel between a payer and a service. Deposit is what the payer locked up when the channel opened. Settled is how much of it the service has claimed onchain so far. In escrow is the remainder — still locked, not yet claimed, and refundable to the payer if the channel closes without it being spent.
A session's whole purpose is that most of it never touches the chain. Sessionscan reads six kinds of onchain event: a channel opening, a settlement, a top up, a close request, a cancelled close, and a close. The payments themselves — one signed message per request — are exchanged directly between the payer and the service and are never broadcast anywhere.
So no explorer can show you those payments, including this one. What you get here are the bookends: the money going in, the amounts claimed against it, and the refund at the end. If a session settled $0.05 across three transactions, the thousands of signatures in between left no trace by design.
Closing is optional, and rare in practice: of the 208.64K channels indexed here, only 755 have closed. Channels do not close themselves — if nobody calls close, the deposit stays reserved until the service closes it or the channel expires. That is why almost every row on the home page still shows a balance in escrow.
It works like a card authorization at a fuel pump. The pump holds an amount up front, meters what you actually use, and charges once at the end — two interactions with the payment network no matter how much fuel flows. A session does the same thing for software: the deposit is the hold, each voucher is a meter reading, and settlement is the charge.
The alternative is a transaction per request, which fails on both cost and latency. Nothing that bills per token can wait for a block, and nothing that charges fractions of a cent can afford a fee on every call. Verifying a voucher is a signature check measured in microseconds.
Sessionscan reads TIP-1034 channel reserve logs from the Tempo Indexer API on Tempo mainnet and re-syncs every ten minutes. Indexing starts at block 24,458,546, so anything earlier is not here. Amounts are shown as US dollars at six decimal places without looking up token symbols, and open channels are refreshed against the chain when you open their page — which means a session page can be slightly fresher than the table you clicked it from.
Those 208.64K sessions have produced 367.99K onchain transactions in total — about 1.8 per session. Every payment in between was verified with a signature check and never reached the chain.
A payer locked $0.05 into a channel with
OpenRouter, then spent it in pieces. The service settled 3 times, each transaction submitting a newer voucher with a higher cumulative total: $0.007732 → $0.016502 → $0.047029 — all within 17 minutes of the channel opening.
When the channel closed, $0.047029 went to the service and $0.002971 went back to the payer. Those two figures add up to the deposit exactly — that reconciliation is what the reserve guarantees, and it is why the payer never had to trust the service with more than it actually spent.