Valeo Infrastructure · February 2026
AI agents are spending real money autonomously. The x402 protocol enables internet-native payments — but gives you zero visibility into which agent spent how much on what endpoint and who approved it. Sentinel fixes this with a single line of code.
6 min read
Every x402 payment today is a black box. Money leaves a wallet, hits an endpoint, and… that's it. No log. No budget. No audit trail. Your agent spent $47.83 last Tuesday and you have no idea what it bought, which endpoint charged what, or whether it was even authorized to spend that much.
This isn't a theoretical problem. KPMG published a report in February 2026 showing that 75% of enterprise leaders rank compliance as the #1 blocker for deploying autonomous agents. 61% report fragmented payment logs across their agent fleets. The tooling gap is real and it's costing companies their ability to ship.
Meanwhile, the x402 ecosystem is thriving: 161M+ transactions, $43M+ in volume, 417K+ buyers. Zero audit tooling. Until now.
1 line
of code to add
0 config
to start tracking
$0
to get started
Sentinel wraps your x402 fetch function. One function call. Every payment that passes through is intercepted, budget-checked, and logged — before and after execution. Your code doesn't change. The payment still works exactly the same. You just get visibility.
Flow — Payment to Audit Trail
PRE-FLIGHT: Generate a unique event ID. Check the agent's budget against configured policies. If the budget is exceeded, throw immediately — no payment is made, no money is spent.
EXECUTE: x402 handles the payment normally. Sentinel never touches the payment flow. It never consumes the response body.
POST-FLIGHT: Parse the payment receipt from the PAYMENT-RESPONSE header. Build a structured audit record. Log to your chosen storage backend. Fire hooks. Done.
const res = await x402Fetch(
"https://api.example.com/data"
);
// Hope for the best.
// No idea what it cost.
// No idea which agent.
// Good luck explaining
// this to your CFO.import {
wrapWithSentinel,
standardPolicy,
} from "@valeo/x402";
const fetch = wrapWithSentinel(
x402Fetch,
{
agentId: "researcher-01",
budget: standardPolicy(),
}
);
const res = await fetch(
"https://api.example.com/data"
);
// ✓ Budget enforced
// ✓ Receipt captured
// ✓ Full audit trail
// ✓ Exportable. Auditable.Not “can help with.” Does. Here's the real list.
Per-call, hourly, daily, lifetime spend limits. Blocks before payment.
Flags payments exceeding N× the rolling average price.
Every payment logged: agent, endpoint, amount, tx hash, timing, context.
Allowlist and blocklist URL patterns per agent or team-wide.
In-memory (default), JSONL file, or remote API. Your choice.
Spend by agent, endpoint, category, time range. CSV/JSON export.
Base, Ethereum, Arbitrum, Solana. Any x402-supported chain.
No runtime deps beyond x402. Remove Sentinel, code works identically.
Four presets out of the box. Or build your own.
| Preset | Per Call | Per Hour | Per Day |
|---|---|---|---|
| conservativePolicy() | $0.10 | $5.00 | $50.00 |
| standardPolicy() | $1.00 | $25.00 | $200.00 |
| liberalPolicy() | $10.00 | $100.00 | $1,000.00 |
| unlimitedPolicy() | — | — | — |
const fetch = wrapWithSentinel(x402Fetch, {
agentId: "trader-bot",
budget: {
maxPerCall: "500000", // $0.50
maxPerHour: "10000000", // $10.00
maxPerDay: "50000000", // $50.00
maxTotal: "500000000",// $500.00
spikeMultiplier: 3,
allowedEndpoints: [
"api.openai.com/**",
"api.anthropic.com/**",
],
},
});Every payment produces this. Structured, queryable, exportable. Turn “where did the money go?” into a SQL query.
{
"record_id": "rec_7kQ3mXvB9pLw",
"timestamp": "2026-02-22T14:32:01.847Z",
"agent_id": "researcher-01",
"url": "https://api.openai.com/v1/chat/completions",
"method": "POST",
"payment_status": "settled",
"amount": "85000",
"amount_human": "$0.085",
"network": "eip155:8453",
"asset": "USDC",
"tx_hash": "0x3a9f...c2e1",
"scheme": "x402",
"pay_to": "0x1234...abcd",
"response_time_ms": 234,
"policy_evaluation": "approved",
"budget_remaining": "9915000",
"budget_utilization": 0.085,
"task_id": "task_research_q4",
"category": "llm-inference",
"tags": ["production", "research-team"]
}The SDK logs payments. The dashboard makes them useful. A real-time analytics interface built on Next.js 15 with 18 API endpoints, covering everything from high-level KPIs to individual transaction drill-downs.
KPI cards — total spent, payment count, active agents, average payment. Spend-over-time charts — area charts with hourly/daily/weekly buckets. Drill-downs — by agent, endpoint, category, network. CSV export for auditors. Alert feed for budget violations and anomalies. Policy management UI for creating and editing budget rules.
Flow — Data Pipeline
Live at sentinel.valeocash.com. Login with your API key.
Open Dashboard →| Capability | Without Sentinel | With Sentinel |
|---|---|---|
| Budget limits | ✗ None | ✓ Per-call, hourly, daily, total |
| Audit trail | ✗ None | ✓ Every payment logged |
| Spend visibility | ✗ Check wallet balance | ✓ Real-time dashboard |
| Agent attribution | ✗ Unknown | ✓ Agent + sponsor + task |
| Compliance export | ✗ Manual reconstruction | ✓ One-click CSV |
| Spike detection | ✗ Find out when wallet drains | ✓ Automatic flagging |
| Multi-chain | ✗ Per-chain tracking | ✓ Unified view |
| Integration effort | — | ✓ One line of code |
Sentinel works on any chain x402 supports. Same wrapper. Same dashboard. All chains in one view.
Base
eip155:8453
Base Sepolia
eip155:84532
Ethereum
eip155:1
Arbitrum
eip155:42161
Solana
solana
npm install, wrap fetch, done. Local audit logs immediately. Connect to the dashboard for team visibility.
Running 10–500 agents? Set team budgets, monitor spend across your fleet, export for accounting. See which agents are burning through budget and which endpoints cost the most.
The tooling KPMG says you need before deploying autonomous agents. Budget policies, audit trails, CSV exports for auditors, endpoint-level spend attribution.
161M+
Transactions
$43M+
Payment Volume
417K+
Buyers
83K+
Sellers
Sentinel is the compliance layer this ecosystem needs. Built by Valeo. Open source. MIT licensed.