Payments

The underpayment policy

Three zones, chosen because there is no refund path.

Why there is a policy at all

Moove has no Send endpoint. That is what makes Tollbooth safe to run multi-tenant — a leaked key cannot redirect money — and it also means there is no refund path. So a settlement that arrives short must never end with the payer holding nothing. The bands below trade a small amount of revenue for never stranding someone who actually paid.

The three zones

received, as a fraction of askedwhat is grantedcharge status
≥ 99.5%The full packsettled
10% ≤ r < 99.5%Credits scaled to what landed, floored at onesettled
< 10%Nothingpending — stays visible to the tenant

The tolerance band exists because Moove documents a market-quote slippage tolerance of 0.10% Moove documentation; 0.5% absorbs it with room rather than punishing a payer for a route that filled a shade under quote. Below the floor the charge is left pending on purpose: with no refund it cannot be closed quietly, so reconciliation keeps raising it until a person decides. Both thresholds are configurable — see configuration.

Time passes

A pass has no credits to scale, so a short settlement scales its duration instead: a quarter of the money buys a quarter of the day.

Exactness

The ratio is computed on bigints in parts per million, so the decision itself involves no floating point. Scaled credits are floored, never rounded in the tenant’s favour. A receivedAmount of null is treated as full: a completed link with no figure to check is not evidence of a shortfall.

One trap the probes found: toAmount is normalised on read — a "1.00" comes back as "1". Comparisons are scale-aligned, so this is handled, but a naive string equality would report a false shortfall on a payment that was exactly right.measured

Whether it ever fires

For a payment link, Moove documents that the payer's wallet is debited enough to deliver your amount in full, and that the payer covers the fee.Moove documentation If that holds, the policy never fires on a clean payment.

UnresolvedNot yet confirmed by a real payment
A live payment is scheduled. Until it lands, whether receivedAmount equals toAmount in practice is marked pending on the results page, and the policy is documented behaviour rather than observed behaviour.
Tollbooth

A paywall layer for MCP servers. An agent calls a paid tool, a human pays, the agent retries. Every number on this page is one we measured, at the precision we measured it.