---
title: "XLS-66 underwriting inputs — full bundle (x402, $0.05 USDC on Base or RLUSD on XRPL)"
method: GET
path: "/api/x402/lending/underwrite"
tags: ["Lending"]
---

# XLS-66 underwriting inputs — full bundle (x402, $0.05 USDC on Base or RLUSD on XRPL)

`GET /api/x402/lending/underwrite`

## Request

- Base URL: `https://www.xrplhub.io`
- URL: `https://www.xrplhub.io/api/x402/lending/underwrite`
- Auth: none declared

Every input a LoanBroker needs for an XLS-66 underwriting decision in one call: cross-broker exposure (outstanding by asset, defaults, impairments), XRPLScore + grade, OFAC SDN screening with its own verifiable receipt, observation history + gaps, and one Merkle-anchored attestation over the whole bundle. FACTS ONLY — the response has no field for a recommended principal, rate, rate floor, approve/decline, probability of default, risk score, or eligibility, and never will. The lending decision, and responsibility for it, is entirely the broker's. Not lending or underwriting advice. x402 only — no free tier, no API-key path. Amendment-gated: 503 (carrying the live XRPLScore + OFAC result) until the LendingProtocol amendment enables on mainnet.

## Query parameters

- `borrower` string, required

## Response `200`

The bundle: exposure, score, screening (+ receipt), observation history, one attestation.

## Other responses

- `402`: Payment Required — x402 challenge. Pay EITHER in USDC on Base (v1 body; retry with X-PAYMENT) OR in RLUSD on the XRP Ledger (v2: PAYMENT-REQUIRED header, network xrpl:0; retry with PAYMENT-SIGNATURE, result wrapped as { data, x402 }).
- `503`: LendingProtocol (XLS-66) not yet enabled — body carries the live XRPLScore + OFAC screening.

---

[API](https://skmtc.dev/xrplhub/apis/xrplhub-xrplscore-and-prebuilt-xrpl-transactions.md) · [All operations](https://skmtc.dev/xrplhub/apis/xrplhub-xrplscore-and-prebuilt-xrpl-transactions/llms.txt) · [OpenAPI document](https://skmtc.dev/xrplhub/apis/xrplhub-xrplscore-and-prebuilt-xrpl-transactions/revisions/a5d4e13aff32?raw)
