Skip to main content
curl https://api.payonproof.com/api/anchors/catalog

GET /api/anchors/catalog

Returns a list of active Stellar anchors with their capabilities and operational status.

Query parameters

country
string
Filter by country code (ISO 3166-1 alpha-2, e.g., “US”, “PH”). Case-insensitive.
type
string
Filter by anchor type: on-ramp or off-ramp
operationalOnly
boolean
default:"false"
If true, only return anchors with operational: true (full SEP-10 and SEP-24 support)

Response

anchors
array
Array of anchor objects

Response example

{
  "anchors": [
    {
      "id": "anchor_moneygram_us",
      "name": "MoneyGram",
      "domain": "stellar.moneygram.com",
      "country": "US",
      "currency": "USD",
      "type": "on-ramp",
      "operational": true,
      "sep": {
        "sep10": true,
        "sep24": true,
        "sep6": false,
        "sep31": false
      },
      "lastCheckedAt": "2026-03-03T10:30:00.000Z"
    },
    {
      "id": "anchor_ph_example",
      "name": "Philippines Digital Bank",
      "domain": "anchor.example.ph",
      "country": "PH",
      "currency": "PHP",
      "type": "off-ramp",
      "operational": true,
      "sep": {
        "sep10": true,
        "sep24": true,
        "sep6": true,
        "sep31": false
      },
      "lastCheckedAt": "2026-03-03T09:15:00.000Z"
    }
  ]
}

Error responses

405 Method Not Allowed
{
  "error": "Method not allowed"
}
500 Internal Server Error
{
  "error": "Failed to retrieve anchor catalog"
}

Filtering examples

Operational US on-ramps

curl "https://api.payonproof.com/api/anchors/catalog?country=US&type=on-ramp&operationalOnly=true"

All Philippine anchors

curl "https://api.payonproof.com/api/anchors/catalog?country=PH"

SEP-24 enabled anchors

const { anchors } = await fetch('/api/anchors/catalog?operationalOnly=true')
  .then(r => r.json());

const sep24Anchors = anchors.filter(a => a.sep.sep24);

Implementation notes

  • Anchors are sourced from the Stellar anchor directory and Horizon network
  • Capabilities are refreshed periodically via background jobs
  • operational: true requires both SEP-10 (authentication) and SEP-24 (interactive flows)
  • Invalid filter values (e.g., type=invalid) will exclude all results for that filter
  • Country codes are normalized to uppercase for comparison

Build docs developers (and LLMs) love