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

# Upload Vendor Docs

> Use this API to upload KYC documents of a specific vendor.



## OpenAPI

````yaml /openapi/payments/v2023-08-01.yaml post /easy-split/vendor-docs/{vendor_id}
openapi: 3.0.0
info:
  version: '2023-08-01'
  title: Cashfree Payment Gateway APIs
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  contact:
    email: developers@cashfree.com
    name: API Support
    url: https://discord.com/invite/QdZkNSxXsB
  description: >-
    Cashfree's Payment Gateway APIs provide developers with a streamlined
    pathway to integrate advanced payment processing capabilities into their
    applications, platforms and websites.
servers:
  - url: https://sandbox.cashfree.com/pg
    description: Sandbox server
  - url: https://api.cashfree.com/pg
    description: Production server
security: []
tags:
  - name: Orders
    description: Collection of APIs to handle orders.
  - name: Payments
    description: Collection of APIs to handle payments.
  - name: Refunds
    description: Collection of APIs to handle refunds.
  - name: Settlements
    description: Collection of APIs to handle settlements.
  - name: Payment Links
    description: Collection of APIs to handle payment links.
  - name: Token Vault
    description: >-
      Collection of APIs to use Cashfree's token Vault. This helps you save
      cards and tokenize them in a PCI complaint manner. We support creation of
      network tokens which can be used across acquiring banks
  - name: softPOS
    description: Collection of APIs to manage softPOS' agent and order
  - name: Offers
    description: Collection of APIs to handle offers
  - name: Eligibility
    description: >-
      Collection of APIs to check eligibile entities - payment methods, offer,
      affordibility
  - name: Settlement Reconciliation
    description: Collection of APIs to handle settlements
  - name: PG Reconciliation
    description: Collection of APIs to handle reconciliation
  - name: Customers
    description: Collection of APIs to handle customers.
  - name: Easy-Split
    description: Collection of APIs to handle Easy-Split.
  - name: Simulation
    description: Collection of APIs to handle simulation.
  - name: Disputes
    description: Collection of APIs to handle disputes.
externalDocs:
  url: https://api.cashfree.com/pg
  description: This url will have the information of all the APIs.
paths:
  /easy-split/vendor-docs/{vendor_id}:
    post:
      tags:
        - Easy-Split
      summary: Upload Vendor Docs
      description: Use this API to upload KYC documents of a specific vendor.
      operationId: PGESUploadVendorsDocs
      parameters:
        - $ref: '#/components/parameters/apiVersionHeader'
        - $ref: '#/components/parameters/vendorIDParam'
        - $ref: '#/components/parameters/xRequestIDHeader'
        - $ref: '#/components/parameters/xIdempotencyKeyHeader'
      requestBody:
        description: Upload Vendor Docs Request Body.
        content:
          multipart/form-data:
            schema:
              properties:
                doc_type:
                  type: string
                  description: >-
                    Mention the type of the document you are uploading. Possible
                    values: UIDAI_FRONT, UIDAI_BACK, UIDAI_NUMBER, DL,
                    DL_NUMBER, PASSPORT_FRONT, PASSPORT_BACK, PASSPORT_NUMBER,
                    VOTER_ID, VOTER_ID_NUMBER, PAN, PAN_NUMBER, GST,
                    GSTIN_NUMBER, CIN, CIN_NUMBER, NBFC_CERTIFICATE. If the doc
                    type ends with a number you should add the doc value else
                    upload the doc file.
                doc_value:
                  type: string
                  description: Enter the display name of the uploaded file.
                file:
                  type: string
                  format: binary
                  description: >-
                    Select the document that should be uploaded or provide the
                    path of that file. You cannot upload a file that is more
                    than 2MB in size.
            examples:
              PG:
                value:
                  doc_type: PAN
                  file: '@''/Users/john/Downloads/pan.jpeg'''
                  doc_value: ABCD1234
              Auto Collect:
                value:
                  doc_type: PAN
                  file: '@''/Users/john/Downloads/pan.jpeg'''
                  doc_value: ABCD1234
      responses:
        '200':
          $ref: '#/components/responses/uploadVendorDocsSuccessResponse'
        '400':
          $ref: '#/components/responses/Response400UploadVendorDocs'
      deprecated: false
      security:
        - XClientID: []
          XClientSecret: []
        - XClientID: []
          XPartnerAPIKey: []
        - XClientID: []
          XClientSignatureHeader: []
        - XPartnerMerchantID: []
          XPartnerAPIKey: []
components:
  parameters:
    apiVersionHeader:
      in: header
      name: x-api-version
      required: true
      description: API version to be used. Format is in YYYY-MM-DD
      schema:
        type: string
        description: API version to be used
        default: '2023-08-01'
      example: '2023-08-01'
    vendorIDParam:
      name: vendor_id
      in: path
      required: true
      description: The id which uniquely identifies your vendor.
      schema:
        type: string
      example: your-vendor-id
    xRequestIDHeader:
      in: header
      name: x-request-id
      description: >-
        Request id for the API call. Can be used to resolve tech issues.
        Communicate this in your tech related queries to cashfree
      required: false
      schema:
        type: string
      example: 4dfb9780-46fe-11ee-be56-0242ac120002
    xIdempotencyKeyHeader:
      in: header
      name: x-idempotency-key
      required: false
      description: >
        An idempotency key is a unique identifier you include with your API
        call.

        If the request fails or times out, you can safely retry it using the
        same key to avoid duplicate actions.
      schema:
        type: string
        format: UUID
      example: 47bf8872-46fe-11ee-be56-0242ac120002
  responses:
    uploadVendorDocsSuccessResponse:
      description: Upload Vendor Docs Success Response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UploadVendorDocumentsResponse'
          examples:
            PG:
              value:
                vendor_id: johntest11111
                doc_type: CIN
                doc_value: easySplit/vendorKycDocs/152707/93117/CIN-Fue.pdf
                status: IN_REVIEW
                remarks: null
            Auto Collect:
              value:
                vendor_id: johntest11111
                doc_type: CIN
                doc_value: easySplit/vendorKycDocs/152707/93117/CIN-Fue.pdf
                status: IN_REVIEW
                remarks: null
    Response400UploadVendorDocs:
      description: Upload Vendor Docs Failure Response.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BadRequestError'
          examples:
            Invalid vendorID:
              value:
                message: >-
                  vendor_id: should be alpha numeric. Value received:
                  testvend@or
                code: vendor_id_invalid
                type: invalid_request_error
            Doc Type Missing:
              value:
                message: 'doc_type : is missing in the request. Value received: ""'
                code: doc_type_missing
                type: invalid_request_error
  schemas:
    UploadVendorDocumentsResponse:
      title: UploadVendorDocumentsResponse
      description: Upload Vendor Document
      type: object
      properties:
        vendor_id:
          type: string
        doc_type:
          type: string
        doc_value:
          type: string
        status:
          type: string
        remarks:
          type: string
    BadRequestError:
      title: BadRequestError
      description: Invalid request received from client
      example:
        message: bad URL, please check API documentation
        code: request_failed
        type: invalid_request_error
      type: object
      properties:
        message:
          type: string
        code:
          type: string
        type:
          type: string
          enum:
            - invalid_request_error
  securitySchemes:
    XClientID:
      type: apiKey
      in: header
      name: x-client-id
      description: >-
        Client app ID. You can find your app id in the [Merchant
        Dashboard](https://merchant.cashfree.com/auth/login/pg/developers/api-keys?env=prod).
    XClientSecret:
      type: apiKey
      in: header
      name: x-client-secret
      description: >-
        Client secret key. You can find your secret key in the [Merchant
        Dashboard](https://merchant.cashfree.com/auth/login/pg/developers/api-keys?env=prod).
    XPartnerAPIKey:
      type: apiKey
      in: header
      name: x-partner-apikey
      description: >-
        If you are partner and you are making an api call on behalf of a
        merchant
    XClientSignatureHeader:
      type: apiKey
      in: header
      name: x-client-signature
      description: >-
        Use this if you do not want to pass the secret key and instead want to
        use signature
    XPartnerMerchantID:
      type: apiKey
      in: header
      name: x-partner-merchantid
      description: >-
        If you are partner use this to specify the merchant id if you don't have
        the merchant client app id

````