Skip to main content

Overview

This endpoint mints a payment address for a selected token/network pair. Use it after you’ve chosen a token from Available tokens.

Authentication

Requires:
  • x-session-token: pst_...
  • x-signature: sig_...

Request

Endpoint:
  • POST /api/v1/payments/payment-addresses
Example:
BASE_URL=${PEPAY_API_URL}

curl -X POST "$BASE_URL/api/v1/payments/payment-addresses" \
  -H "x-session-token: pst_..." \
  -H "x-signature: sig_..." \
  -H "Content-Type: application/json" \
  -d '{"network":"base","tokenId":123}'

Response

{
  "success": true,
  "quote_status": "available",
  "status_code": "ok",
  "message": null,
  "temp_address": "<payment_address>",
  "network": "base",
  "supported_token_id": 123,
  "estimated_token_amount": "49.990000",
  "exchange_rate": "1.000000",
  "usd_amount": 49.99,
  "quote_last_updated_at": "2025-12-21T12:34:56.000Z",
  "quote_valid_until": "2025-12-21T12:39:56.000Z",
  "quote_expires_in_seconds": 300,
  "retryable": null,
  "retry_after_seconds": null,
  "ws_connection": {
    "token": "<payment_session_jwt>",
    "endpoint": "/ws/payment",
    "format": "event_v1",
    "ws_url": "/ws/payment?format=event_v1"
  }
}

Errors

  • 401 invalid session token/signature
  • 400 invalid token selection or quote unavailable

Examples

  • Use ws_connection.ws_url (or append ?format=event_v1) with ws_connection.token to connect to the Payor WebSocket.
Next: Customer email