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

# Pairing

> Generate OTP on terminal by clicking the Generate Pay-Connect OTP to provide you an OTP or contact support team to provide you one.

<Warning>
  Store credentials in a secure, protected place. This is a one-time operation, and these credentials cannot be recovered later.

  New credentials can only be generated by unpairing and completing the process again with a new OTP.
</Warning>


## OpenAPI

````yaml POST /v1/pay-connect/pair/
openapi: 3.1.0
info:
  title: Pay-Connect API
  description: >-
    Pay-Connect is a unified payment integration platform that enables reliable
    communication between software applications and payment terminals. With a
    single integration, developers can manage terminals, execute payment
    operations, and retrieve transaction data consistently across hardware and
    platforms.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api-payment.lab4pay.com
  - url: https://api-payment.lab4pay.dev
security:
  - bearerAuth: []
paths:
  /v1/pay-connect/pair/:
    post:
      description: >-
        Generate OTP on terminal by clicking the Generate Pay-Connect OTP to
        provide you an OTP or contact support team to provide you one.
      parameters:
        - name: X-Pay-Connect-Integrator-Id
          in: header
          description: Pay-Connect Integrator ID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PayConnectPairBody'
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PayConnectPairResponse'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      security: []
components:
  schemas:
    PayConnectPairBody:
      required:
        - name
        - otp
      type: object
      properties:
        name:
          description: Your Pay-Connect name
          type: string
        otp:
          description: OTP code generated on Terminal or provided by support team
          type: string
        webhook_url:
          description: Webhook URL where Pay-Connect sends event notifications
          type: string
    PayConnectPairResponse:
      required:
        - pay_connect_id
        - pay_connect_name
        - terminal_id
        - client_id
        - client_secret
      type: object
      properties:
        pay_connect_id:
          description: Unique Pay-Connect ID
          type: string
        pay_connect_name:
          description: Your Pay-Connect name provided in Pairing flow
          type: string
        terminal_id:
          description: Terminal ID
          type: string
        client_id:
          description: Client ID used for Authentication
          type: string
        client_secret:
          description: Client secret used for Authentication
          type: string
        webhook_secret_key:
          description: Webhook secret key used for Webhook signature verification
          type:
            - string
            - 'null'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````