---
title: "Paid x402 sandbox — prove your client can pay"
method: GET
path: "/v1/testpayment"
---

# Paid x402 sandbox — prove your client can pay

`GET /v1/testpayment`

## Request

- Base URL: `https://soren.com`
- URL: `https://soren.com/v1/testpayment`
- Auth: none declared

Pay $0.10 in USDC on Base and receive your own settled payment back so you can assert your x402 integration works. Scenario parameters exercise failure handling for free.

## Query parameters

- `scenario` 'success' | 'price' | 'underpaid' | 'expired' | 'settle_fail'
- `price` string

## Response `200`

Payment settled. Your client works.

- object
  - `ok` boolean
  - `message` string
  - `payer` string
  - `amount` string
  - `asset` string
  - `network` string
  - `settlement` string
  - `resource` string
  - `timestamp` string
  - `scenario` string
  - `next_steps` string
  - `docs` string

## Other responses

- `402`: Payment required. Requirements are in the PAYMENT-REQUIRED header (x402 v2) and the body (v1).

---

[API](https://skmtc.dev/soren/apis/soren-free-games-api.md) · [All operations](https://skmtc.dev/soren/apis/soren-free-games-api/llms.txt) · [OpenAPI document](https://skmtc.dev/soren/apis/soren-free-games-api/revisions/00402cfcf30d?raw)
