How a listing enters the catalog
Cataloging is automatic and settlement-gated. There is no separate registration step and no ingest endpoint: a resource is listed only through a payment that carries the discovery extension, from inside the facilitator’s own/verify and /settle handlers.
It is hybrid, so a resource can appear during payment without a free request being able to spoof a seller.
1
Provisional, at verify
When a well-formed listing arrives at
/verify, a provisional entry is written. It is discoverable, but it carries no ranking signals and no ownership, and it is pruned on a TTL. This is why a resource can appear during payment verification.2
Confirmed, at settle
A successful settlement confirms the entry and is the only thing that earns ownership and ranking. A provisional incumbent is displaceable, so a free
/verify can never lock out or spoof a real seller.Browsing: the seven filters
GET /discovery/resources is paginated catalog browsing. It takes seven filters. Note that scheme is one of them.
The response is
{ x402Version, items, pagination }. The list key is items. Search uses a different key; see How search works.
Integrity rules
The facilitator enforces the following so no one can spoof another seller’s listing or pricing.Ownership is bound to settlement
Only a settled payment earns a claim on a listing key. A free
/verify cannot take over an existing seller’s entry.Soft-drop validation
Malformed or unpayable metadata is dropped, not accepted best-effort. A Stellar
exact listing without sponsored fees, for example, is refused rather than published unconsumable.routeTemplate is decoded first
A
routeTemplate is percent-decoded before traversal checks, so a double-encoded .. cannot smuggle a path past the check.Ranking uses only earned metadata
Only metadata that arrived through the legitimate cataloging path influences ranking. Forged fields do not.
A settled payment does not prove domain ownership. Rail402 supports SEP-1 domain verification as an advisory signal off the settlement path: a
payTo listed in a domain’s .well-known/stellar.toml displaces an unverified squatter. It never gates cataloging.Reporting a listing outcome
Cataloging feedback rides back on theEXTENSION-RESPONSES header, so a seller can tell whether a listing landed and, if not, why, with a machine-readable reason. The facilitator emits processing at verify and success or rejected at settle. See the error reference for the codes.
Next steps
How search works
Natural-language ranking over the catalog.
Seller quickstart
Make a paid endpoint discoverable.
The payment loop
Where cataloging sits in the flow.
SDK reference
Seller metadata helpers and buyer search.