Paymentsense Retail Terminals API

The Retail Terminals API from Paymentsense — 2 operation(s) for retail terminals.

Operations 2

GET /retail/terminals #
GET /retail/terminals/{tpi} #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/paymentsense-retail-terminals-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

paymentsense-retail-terminals-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 3.0-beta
  title: Connect REST Retail Terminals API
servers:
- url: https://your-host-here.test.connect.paymentsense.cloud/
security:
- connectBasicAuth: []
tags:
- name: Retail Terminals
paths:
  /retail/terminals:
    get:
      description: Gets a list of all card terminals that are currently connected. This can be filtered by currency, capabilities and status.
      tags:
      - Retail Terminals
      operationId: RetailTerminals
      parameters:
      - name: status
        in: query
        required: false
        $ref: '#/components/schemas/terminalStatus'
        type: string
        description: Filter the response to only available or only busy terminals.
      - name: capabilities
        in: query
        required: false
        description: Filter the response to only terminals with particular capabilities. This should be a comma separated list of values.
        schema:
          type: string
      - name: currency
        in: query
        required: false
        description: Filter the response to only terminals in a particular currency.
        schema:
          type: string
      responses:
        '200':
          description: Returns a list of terminals
          content:
            application/connect.v0+json:
              schema:
                $ref: '#/components/schemas/terminalWrapper'
        '401':
          description: Authorization credentials must be provided in the request headers.
        '401 ':
          description: The provided authorization credentials were not correct.
        '500 ':
          description: An internal Connect error has occurred.
      x-unitTests:
      - request:
          method: GET
          uri: /retail/terminals?capabilities=["TRANSACTION_SALE", "TRANSACTION_REFUND"]
        expectedResponse:
          x-allowExtraHeaders: true
          x-bodyMatchMode: KEYS
          x-arrayOrderedMatching: false
          x-arrayCheckCount: false
          x-matchResponseSchema: true
          headers: {}
          body: '{    "22161332": {        "state": "ready",        "pstid": "22161332",        "capabilities": [            "TRANSACTION_SALE",            "TRANSACTION_REFUND",            "LAST_TRANSACTION",            "CANCEL_TRANSACTION",            "REPORT_END_OF_DAY",            "REPORT_BANKING",            "REPORT_X_BALANCE",            "REPORT_Z_BALANCE",            "TERMINAL_STATUS",            "CALL_TMS",            "LOGON"        ],        "currency": "EUR"    },    "22161339": {        "state": "ready",        "pstid": "22161339",        "capabilities": [            "TRANSACTION_SALE",            "TRANSACTION_REFUND",            "LAST_TRANSACTION",            "CANCEL_TRANSACTION",            "REPORT_END_OF_DAY",            "REPORT_BANKING",            "REPORT_X_BALANCE",            "REPORT_Z_BALANCE",            "TERMINAL_STATUS",            "CALL_TMS",            "LOGON"        ],        "currency": "GBP"    }}'
        x-testShouldPass: true
        x-testEnabled: true
        x-testName: RetailTerminals
        x-testDescription: Get a list of terminals optionally filtered by capabilities and or state
      x-operation-settings:
        CollectParameters: false
        AllowDynamicQueryParameters: false
        AllowDynamicFormParameters: false
        IsMultiContentStreaming: false
  /retail/terminals/{tpi}:
    get:
      description: Gets details for a specific terminal.
      tags:
      - Retail Terminals
      operationId: RetailTerminalsByTPI
      parameters:
      - name: tpi
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Returns information about the requested terminal
          content:
            application/connect.v0+json:
              schema:
                $ref: '#/components/schemas/terminal'
        '401':
          description: Authorization credentials must be provided in the request headers.
        '401 ':
          description: The provided authorization credentials were not correct.
        '404 ':
          description: Unavailable terminal or no data available for terminal.
        '500 ':
          description: An internal Connect error has occurred.
components:
  schemas:
    terminalStatus:
      type: string
      enum:
      - AVAILABLE
      - BUSY
    capabilitiesList:
      type: array
      items:
        $ref: '#/components/schemas/capabilities'
    currency:
      type: string
      enum:
      - GBP
      - EUR
    terminalWrapper:
      title: terminalWrapper
      description: a list of terminals keyed by 'terminals'
      type: object
      properties:
        terminals:
          $ref: '#/components/schemas/terminalList'
      additionalProperties:
        $ref: '#/components/schemas/terminal'
    terminal:
      title: Terminal
      type: object
      required:
      - tpi
      - status
      - currency
      - capabilities
      - location
      properties:
        tpi:
          type: string
          description: Terminal Public Identifier. This is a unique identifier assigned to each terminal.
        status:
          $ref: '#/components/schemas/terminalStatus'
        currency:
          $ref: '#/components/schemas/currency'
        capabilities:
          $ref: '#/components/schemas/capabilitiesList'
        location:
          type: string
          description: The uri where the information about this particular terminal can be found.
    terminalList:
      title: TerminalList
      type: array
      items:
        $ref: '#/components/schemas/terminal'
    capabilities:
      type: string
      enum:
      - SALE
      - REFUND
      - DUPLICATE
      - CANCEL_TRANSACTION
      - REPORT_END_OF_DAY
      - REPORT_BANKING
      - REPORT_X_BALANCE
      - REPORT_Z_BALANCE
      - TERMINAL_STATUS
  securitySchemes:
    connectBasicAuth:
      type: http
      scheme: basic