# ScanPay Session Deposit

> ScanPay Session Deposit is a paid API for AI agents from scanpay-ob3w.onrender.com, paid per call via x402, $0.85/call, status unknown (last checked 2026-10-31).

Registers a completed payment transaction to create or top up a ScanPay session with credits for subsequent code security scanning calls

## Facts

- Endpoint: POST https://scanpay-ob3w.onrender.com/v2/session/deposit?utm_source=zero.xyz
- Price: $0.85/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/scanpay-session-deposit-93b47c54
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_npqMPKK96WHZuLSaEv36k

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability scanpay-session-deposit-93b47c54 -d '<json body>'
```

Example prompt: I just sent the Solana payment for ScanPay and got transaction signature 5J3kLm...XqZ — can you register that deposit so I get a session ID and scan credits?

## When to prefer this

Use this endpoint immediately after completing an x402/Solana micropayment to ScanPay, in order to exchange the payment proof for a session credential. This is the required first step before calling any code scanning endpoints — without a valid session_id obtained here, scan requests will be rejected. Prefer this over alternatives when operating in a pay-per-use, agent-driven pipeline where credits are purchased on demand rather than via a subscription API key.

## Known failure modes

- Invalid or malformed transaction signature returns error — session not created
- Transaction not yet confirmed on-chain causes rejection
- Duplicate deposit submission may fail if already registered
- Expired or rolled-back transaction hash results in no session grant
- Missing deposit_tx field returns 400 validation error

## How this service works

Deterministic AST code security scanner with x402 Solana micropayments, remote MCP, and ERC-8183 Evaluator oracle.

## Output

Returns a JSON object containing a unique session_id (e.g. sess_abc123) that can be used for subsequent scan requests, an expires_at ISO 8601 timestamp indicating session validity, and a credits_remaining integer showing how many scan calls are available under this session.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "deposit_tx"
 ],
 "properties": {
  "deposit_tx": {
   "type": "string",
   "description": "Signature or transaction hash of the deposit payment"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "expires_at": "2026-12-31T00:00:00Z",
  "session_id": "sess_abc123",
  "credits_remaining": 10
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/scanpay-session-deposit-93b47c54/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from scanpay-ob3w.onrender.com](https://www.zero.xyz/host/scanpay-ob3w.onrender.com/llms.txt)
