SSettlaDocs

Platform (V3)

Directory, Links & Trust

The V3 platform layer adds three opt-in surfaces on top of resolution: a public directory for discovery, payment links and QR codes for sharing, and a trust score for risk signals. All read-only with respect to money.

Public directory

GET/v1/directory/search

Search for public aliases only. The directory never returns unlisted, private, or consent_required aliases — it cannot be used to enumerate the graph. Anti-enumeration guards apply: q must be at least 2 characters and limit is capped at 50. Scope: directory:read.

FieldTypeDescription
qrequiredstringSearch query (min length 2). Trigram-matched.
typeoptionalstringFilter by alias type, e.g. merchant_handle.
limitoptionalnumberMax results (≤ 50).
curl "https://api.settla.network/v1/directory/search?q=acme&type=merchant_handle&limit=10" \
  -H "Authorization: Bearer sk_test_..."
{
  "data": [
    { "alias": "@acme", "type": "merchant_handle", "identity": "idn_...",
      "display_name": "Acme Store", "verified": true, "badge": "verified_merchant" }
  ]
}

Results include a badge derived from verification: verified_merchant (a merchant identity with verified business KYB or admin attestation), verified (at least one verified alias), or null.

POST/v1/payment-links

Create a shareable link that resolves to an alias, optionally pre-filling an asset, amount, and memo. Scope: paylinks:write.

FieldTypeDescription
aliasrequiredstringThe recipient alias (or provide identity).
assetoptionalstringOptional pre-filled asset.
amountoptionalstringOptional pre-filled amount (context only — no charge).
memooptionalstringOptional note shown to the payer.
curl https://api.settla.network/v1/payment-links \
  -H "Authorization: Bearer sk_test_..." \
  -H "Content-Type: application/json" \
  -d '{ "alias": "@acme", "asset": "USDC", "amount": "25.00", "memo": "Order 1042" }'
{
  "id": "pl_7h2...",
  "url": "https://settla.link/acme?asset=USDC&amount=25.00&memo=Order%201042",
  "alias": "@acme",
  "created_at": "2026-06-29T12:00:00Z"
}

The One Rule

A payment link is an addressing convenience — the QR encodes the url, which the payer's own wallet resolves. Settla still moves no money; the link just carries the routing context.

Identity trust score

GET/v1/identity/:id/trust

A pure-read heuristic score from 0–100 with a coarse level (low · medium · high) and the contributing factors. It is built from signals like verified aliases, verified endpoints, identity age, KYB/badge, and identity type — not from any transaction history (Settla has none).

curl https://api.settla.network/v1/identity/idn_2x9.../trust \
  -H "Authorization: Bearer sk_test_..."
{
  "score": 82,
  "level": "high",
  "factors": [
    { "factor": "verified_aliases", "weight": "+", "detail": "2 of 2 verified" },
    { "factor": "verified_endpoints", "weight": "+", "detail": "1 verified" },
    { "factor": "kyb_badge", "weight": "+", "detail": "verified_merchant" },
    { "factor": "identity_age", "weight": "+", "detail": "active 14 months" }
  ]
}

On the roadmap (not yet built)

Documented horizon items beyond V3: split / multi-recipient routing, corridor intelligence, agent-to-agent machine identity, travel-rule metadata, and federation / self-hosted resolvers. None of these change The One Rule — Settla will still never move money.

Future featureIdea
Split / multi-recipient routingRecommend a route per recipient in a single batch payout.
Corridor intelligenceCountry/currency corridor-aware recommendations.
Machine identityAgent-to-agent payment addressing for automated payers.
FederationSelf-hosted / federated resolvers over a shared protocol.