> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eqxpay.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Get public session data for the checkout page (no auth required)



## OpenAPI

````yaml GET /v1/checkout/sessions/by-token/{token}
openapi: 3.0.0
info:
  title: EQXPay API
  description: >-
    EQX v2.5 staging API for admin, liquidity-provider, and integrator
    operations.
  version: 2.5.0
  contact: {}
servers: []
security: []
tags: []
paths:
  /v1/checkout/sessions/by-token/{token}:
    get:
      tags:
        - Checkout
      summary: Get public session data for the checkout page (no auth required)
      operationId: CheckoutSessionsController_getSessionByToken
      parameters:
        - name: token
          required: true
          in: path
          description: Opaque checkout session token from the checkout URL
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CheckoutSessionPublicResponseDto'
        '404':
          description: Session not found or expired
components:
  schemas:
    CheckoutSessionPublicResponseDto:
      type: object
      properties:
        session_id:
          type: string
          example: e3d4b5c6-...
        market:
          type: string
          example: MW
        market_name:
          type: object
          example: Malawi
          nullable: true
        amount:
          type: number
          example: 5000
        currency:
          type: string
          example: MWK
        description:
          type: object
          example: 'Payment for Order #123'
          nullable: true
        merchant_name:
          type: object
          example: Acme Corp
          nullable: true
        logo_url:
          type: object
          example: https://cdn.example.com/logo.png
          nullable: true
        primary_color:
          type: object
          example: '#FF5733'
          nullable: true
        status:
          type: string
          example: active
          description: active | collection_bound | expired | cancelled
        collection_id:
          type: object
          nullable: true
        collection_status:
          type: object
          nullable: true
          description: Current collection status if bound
        expires_at:
          format: date-time
          type: string
        rails:
          type: array
          items:
            $ref: '#/components/schemas/CheckoutRailSummaryDto'
      required:
        - session_id
        - market
        - amount
        - currency
        - status
        - expires_at
        - rails
    CheckoutRailSummaryDto:
      type: object
      properties:
        code:
          type: string
          example: mobile_money
        name:
          type: string
          example: Mobile Money
        customer_fields:
          example:
            - phone_number
          type: array
          items:
            type: string
        min_amount:
          type: number
          example: 100
        max_amount:
          type: number
          example: 5000000
      required:
        - code
        - name
        - customer_fields
        - min_amount
        - max_amount

````