Skip to main content
GET
/
api
/
v1
/
merchant
/
tokens
Get all supported tokens and their acceptance status
curl --request GET \
  --url https://api-beta.pepay.io/api/v1/merchant/tokens \
  --header 'Authorization: Bearer <token>'
{
  "acceptance_policy": "selective",
  "environment": "devnet",
  "tokens": [
    {
      "id": 10,
      "token_symbol": "DUSDC",
      "token_name": "Devnet USDC",
      "network": "solana",
      "network_environment": "devnet",
      "is_blocked": false,
      "price": null
    }
  ]
}

Overview

Use this endpoint to list tokens your merchant can accept. Many integrations call this once at startup and cache the response. For large catalogs or search/filtering, use Search Merchant Tokens.

Authentication

  • Merchant auth: x-api-key: pk_... (scope=merchant) or Authorization: Bearer <jwt>

Request

SDK

const tokens = await pepay.tokens.listMerchantSupported({ environment: 'mainnet' });

cURL

curl "https://api-beta.pepay.io/api/v1/merchant/tokens?environment=mainnet" \
  -H "x-api-key: pk_..."

Response

{
  "acceptance_policy": "selective",
  "environment": "mainnet",
  "tokens": [
    {
      "id": 123,
      "token_symbol": "USDC",
      "token_name": "USD Coin",
      "network": "base",
      "network_environment": "mainnet",
      "is_blocked": false,
      "price": null
    }
  ]
}

Errors

  • 401 missing/invalid merchant auth

Examples

  • Cache the result in-memory and refresh periodically (token metadata is stable, price may change). Next: Mint a WebSocket token

Authorizations

Authorization
string
header
required

JWT token for wallet authentication

Query Parameters

environment
enum<string>

Filter tokens by environment (defaults to the merchant environment).

Available options:
mainnet,
devnet

Response

List of tokens with their acceptance status

acceptance_policy
enum<string>
Available options:
accept_all,
accept_none,
selective
environment
enum<string>
Available options:
mainnet,
devnet
tokens
object[]