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

# AvailabilityCheck



## OpenAPI

````yaml /openapi/spark.yaml post /AvailabilityCheck
openapi: 3.0.1
info:
  title: Nayax Spark API
  description: RemoteStart V2
  version: v2
servers:
  - url: https://{domain}/api
    variables:
      domain:
        default: nayax-spark-dmz.nayax.com
        description: >-
          Your Nayax-assigned domain (e.g., nayax-spark-dmz.nayax.com). Nayax
          provides a QA domain during sandbox onboarding and a production domain
          after certification.
security: []
tags:
  - name: Transactions
paths:
  /AvailabilityCheck:
    post:
      tags:
        - Transactions
      summary: AvailabilityCheck
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AvailabilityCheckRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/AvailabilityCheckRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/AvailabilityCheckRequest'
      responses:
        '200':
          description: Success
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/AvailabilityCheckResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/AvailabilityCheckResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/AvailabilityCheckResponse'
components:
  schemas:
    AvailabilityCheckRequest:
      type: object
      nullable: true
      description: >-
        This object is used to check the availability of a service station and
        retrieve details to display on the Nayax device before initiating a
        transaction. It's sent after a successful StartSession response to
        gather information for the POS device.
      properties:
        HwSerial:
          type: string
          nullable: false
          description: >-
            The unique serial number of the hardware terminal, used to identify
            the Nayax device.
          maxLength: 255
        MachineId:
          type: integer
          format: int64
          description: >-
            The unique ID of the vending machine or terminal, as configured in
            the Nayax system.
          maxLength: 255
        SparkTransactionId:
          type: string
          nullable: true
          description: >-
            The unique transaction ID assigned by Spark for the open session.
            This ID is provided in the `/StartSession` and
            `/StartAuthentication` responses and must be used for all subsequent
            calls within the same transaction lifecycle.
        Amount:
          type: number
          format: double
          description: >-
            The estimated amount for the session, to be displayed on the
            terminal. This value is used for Pre-Authorization and Pre-Selection
            flows to provide the consumer with a transaction estimate.
          maxLength: 3
        ServiceStationNumber:
          type: string
          nullable: true
          description: >-
            The identifier for the selected service station or point of
            interaction. This parameter is included when the Nayax device is
            configured to support multiple service points.
        SiteId:
          type: integer
          format: int16
          description: >-
            The ID of the site where the transaction originated. This value
            helps the Nayax Engine route the transaction to the correct
            location.
    AvailabilityCheckResponse:
      type: object
      nullable: true
      description: >-
        The response object for the InfoQuery API, providing status,
        availability, and display information to the Nayax device before a
        transaction begins.
      properties:
        SparkTransactionId:
          type: string
          nullable: true
          description: The unique transaction ID from the original request.
        HwSerial:
          type: string
          nullable: false
          description: The unique serial number of the Nayax hardware terminal.
          maxLength: 255
        MachineId:
          type: integer
          format: int64
          description: The unique identifier for the machine or device.
        SiteId:
          type: integer
          format: int16
          description: The ID of the site where the terminal is operating.
        ServiceStationNumber:
          type: string
          nullable: true
          description: >-
            Identifies the selected service station or point of interaction
            number. This parameter is provided by Nayax when the device supports
            multiple service points.
        ServiceStationAvailability:
          type: integer
          nullable: false
          description: >-
            The availability status of the service station. A value of `1`
            indicates it's `Available`, `2` means `Busy`, and `3` signifies `Out
            of Service`.
        PosDisplay:
          type: string
          nullable: true
          description: >-
            A custom message to be displayed on the terminal screen, formatted
            as a semicolon-delimited string.
        Amount:
          type: number
          format: double
          description: The estimated total amount for the session, in major currency units.
        Status:
          type: object
          nullable: false
          description: >-
            An object containing the verdict of the availability check and a
            descriptive message.
          properties:
            Verdict:
              type: string
              nullable: false
              description: >-
                The result of the request. This will be `"Approved"` if the
                service station is available, or `"Declined"` if not.
            StatusMessage:
              type: string
              nullable: false
              description: >-
                A human-readable message providing more context about the
                status, such as "Charger is available for charging".
            Status:
              $ref: '#/components/schemas/Status'
    Status:
      type: object
      nullable: false
      description: Transaction Status Details
      properties:
        Verdict:
          type: string
          nullable: false
          description: Status of the request (Approved / Declined)
        ErrorCode:
          type: integer
          format: int16
          nullable: true
          description: |
            - Conditional
            - Reason for declined request
        ErrorDescription:
          type: string
          nullable: true
          description: |
            - Conditional
            - Length: 255
            - Error description
        StatusMessage:
          type: string
          nullable: true
          description: |
            - Optional
            - Length: 255
            - Transaction status message as free text field

````