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

# Validate Payment Launch Parameters

> Payment Component Validation Interface

## Overview

This page documents the `POST /payment/open/institution/v1/pay/open/sdk` endpoint. The full schema, parameters, and examples are rendered from the linked OpenAPI definition above.

Payment Component Validation Interface

## Notes

* Authentication uses the standard GatePay signed headers.
* This page documents the standard merchant endpoint.
* For shared signing rules, see [/api-reference/version/100/en/common/securityAndSignature](/api-reference/version/100/en/common/securityAndSignature).


## OpenAPI

````yaml /api-reference/version/100/en/openapi/institution/call-payment-openapi.json POST /payment/open/institution/v1/pay/open/sdk
openapi: 3.1.0
info:
  title: GatePay API
  description: >-
    It is most suitable when the Gate Pay payment function is enabled in the
    merchants’ mobile APP.


    After the merchant’s APP requests the SDK provided by Gate Pay to enable the
    Gate Pay payment function, the merchant APP’s page will jump to the Gate APP
    to complete the payment, and then jump back to the merchant’s APP interface
    once the payment is done, with the payment result displayed.


    The function is currently available for IOS (Apple) and Android (Android)
    operating systems.


    The interaction process is as follows:


    Step 1: On the merchant’s APP, the users place an order, and confirm the
    purchase. After the payment process is started, a payment order will be
    created on the merchant’s service background. After being signed, the
    payment order will be transmitted to the APP.


    Step 2: The users click to enter Gate’s payment interface, where they can
    request the Gate Pay payment. After the request is made, they will be
    directed to the page where confirmation of the payment is required.


    Step 3: The users need to verify the payee and the payment amount, click
    “Pay”, and enter the password.


    Step 4: The payment is completed once the correct password is provided. The
    payment result will be displayed on the page.


    Step 5: Then the users will jump back to the merchant APP’s interface where
    the payment result will also be displayed in a manner set by the merchant.
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://openplatform.gateapi.io
security: []
paths:
  /payment/open/institution/v1/pay/open/sdk:
    post:
      summary: Payment Component Validation Interface
      description: Payment Component Validation Interface
      operationId: openPaySdk
      parameters:
        - $ref: '#/components/parameters/X-GatePay-Certificate-ClientId'
        - $ref: '#/components/parameters/X-GatePay-Signature'
        - $ref: '#/components/parameters/X-GatePay-Timestamp'
        - $ref: '#/components/parameters/X-GatePay-Nonce'
        - $ref: '#/components/parameters/X-GatePay-On-Behalf-Of'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OpenSdkRequest'
            example:
              prepayid: '50620368071692288'
              package_ext: ext
      responses:
        '200':
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponse'
              example:
                status: SUCCESS
                code: '000000'
                errorMessage: ''
                data:
                  prepayid: '50620368071692288'
components:
  parameters:
    X-GatePay-Certificate-ClientId:
      name: X-GatePay-Certificate-ClientId
      in: header
      required: true
      description: Merchant client ID, obtained from GatePay platform
      schema:
        type: string
        example: 4186d0c6-6a35-55a9-8dc6-5312769dbff8
    X-GatePay-Signature:
      name: X-GatePay-Signature
      in: header
      required: true
      description: HMAC-SHA256 signature for request validation
      schema:
        type: string
        example: >-
          672d5650dcc9bb22ebf25fa16c28d03c0e159d742a9176d4340a5da326d75dc8a2ec24c97fa6fc5d1533dd6e968863747e1d86a45e562cbe899f9ed7e9ca7f77
    X-GatePay-Timestamp:
      name: X-GatePay-Timestamp
      in: header
      required: true
      description: >-
        Timestamp in milliseconds, must not differ from server time by more than
        5 minutes
      schema:
        type: string
        example: '1672905655498'
    X-GatePay-Nonce:
      name: X-GatePay-Nonce
      in: header
      required: true
      description: Random nonce for replay attack prevention
      schema:
        type: string
        example: '9578'
    X-GatePay-On-Behalf-Of:
      name: X-GatePay-On-Behalf-Of
      in: header
      required: true
      schema:
        type: string
      description: >-
        Required delegated-subject header. Provide the initiating account ID for
        this request. For institution merchant APIs, this is typically the
        target sub-account ID; for institution charge and transfer APIs, it can
        be either an institution account ID or a sub-account ID.
  schemas:
    OpenSdkRequest:
      type: object
      required:
        - prepayid
        - package_ext
      properties:
        prepayid:
          type: string
          description: Pre-order ID
        package_ext:
          type: string
          description: Fill in the fixed value GatePay for now
    ApiResponse:
      type: object
      properties:
        status:
          type: string
          description: Payment status
        code:
          type: string
          description: ' Error code'
        errorMessage:
          type: string
          description: Error message

````