Settle Payment
Submit an x402 payment authorization for on-chain settlement
Settle Payment
Verify a signed payment authorization and execute on-chain settlement. Supports bothexact (fixed amount) and upto (variable amount) schemes.
The request body follows the Coinbase x402 facilitator protocol and is compatible with both V1 and V2 payload formats.
Schemes
exact (default)
The full authorized amount is settled on-chain. This is the standard payment flow.upto
The payer authorizes a maximum amount, and the server settles only the actual usage. Pass the settlement amount viaextra.settlementAmount in the payment requirements:
| Field | Description |
|---|---|
amount | Maximum authorized amount (atomic units) |
extra.settlementAmount | Actual settlement amount (must be ≤ amount) |
uptoonly supports Permit2 payload type (ERC-3009 binds value in signature)- If
settlementAmountis"0", no on-chain transaction is executed - If
settlementAmountexceedsamount, the request is rejected
Supported Payload Types
| Type | Contract | Chains |
|---|---|---|
ERC-3009 (eip3009) | USDC transferWithAuthorization | All EVM |
Permit2 (permit2) | x402ExactPermit2Proxy / x402UptoPermit2Proxy | All EVM |
Solana (solana) | SPL Token TransferChecked | Solana |
Response
| Field | Type | Description |
|---|---|---|
success | boolean | Whether settlement succeeded |
transaction | string | On-chain transaction hash |
errorReason | string | Error description (if success is false) |
payer | string | Payer wallet address |
network | string | CAIP-2 network identifier |
Authorizations
JWT access token obtained from the /api/v1/auth/token endpoint.
Body
x402 payment verification or settlement request.
The version of the x402 protocol.
1, 2 1
The x402 protocol payment payload that the client attaches to x402-paid API requests to the resource server in the X-PAYMENT header.
- Option 1
- Option 2
The x402 protocol payment requirements that the resource server expects the client's payment payload to meet.
- Option 1
- Option 2
Response
Settlement rejected after validation.
Result of settling an x402 payment authorization on-chain.
Whether the settlement was successful.
Gateway transaction payload field. The current settle implementation returns an empty string.
Gateway transaction ID for the settle task.
Machine-readable reason for settlement failure.
Address of the payer.
Network on which the settlement was executed.