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

# Pan Basic

> Fetches Basic Pan Details.

The PAN Basic API is designed to validate and fetch essential details associated with a Permanent Account Number (PAN). It is a reliable and streamlined solution for identity verification and compliance checks, commonly used in financial, legal, and regulatory contexts.

<Note>
  Fields `title`, `panStatusCode`, `lastUpdatedOn` can contain empty data.
</Note>

### Pan Status Codes

| Status code | PAN Status        |
| ----------- | ----------------- |
| E           | VALID             |
| F           | FAKE              |
| X           | DEACTIVATED       |
| D           | DELETED           |
| N           | INVALID           |
| EA          | AMALGAMATION      |
| EC          | ACQUISITION       |
| ED          | DEATH             |
| EI          | DISSOLUTION       |
| EL          | LIQUIDATED        |
| EM          | MERGER            |
| EP          | PARTITION         |
| ES          | SPLIT             |
| EU          | UNDER LIQUIDATION |

### Aadhaar Seeding Status codes

| Status code | Status                | Meaning                                              |
| ----------- | --------------------- | ---------------------------------------------------- |
| Y           | Successful            | PAN Aadhaar linked                                   |
| R           | UnSuccessful          | PAN Aadhaar not linked                               |
| Blank       | Aadhaar is not seeded | Invalid PAN, hence Aadhaar not seeded                |
| NA          | Not applicable        | PAN is non-individual. Hence seeding not applicable. |


## OpenAPI

````yaml POST /verification/pan-basic
openapi: 3.0.0
info:
  title: KonnectNXT API Store
  description: >-
    A sample API that uses a plant store as an example to demonstrate features
    in the OpenAPI specification
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://bgv.konnectnxt.com/api
    description: Production
  - url: https://testbgv.konnectnxt.com/api
    description: QA
security:
  - bearerAuth: []
paths:
  /verification/pan-basic:
    post:
      tags:
        - Identity Verification
        - PAN
      description: Fetches Basic Pan Details.
      operationId: verification_get_pan
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                pan_number:
                  type: string
                  description: The 10-digit PAN number to verify.
                  example: C03D3G7513
              required:
                - pan_number
      responses:
        '200':
          description: Successful response with Aadhaar verification details.
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/APIBaseResponse'
                  - type: object
                    required:
                      - data
                    properties:
                      data:
                        allOf:
                          - $ref: '#/components/schemas/PanBasicResult'
                          - type: object
                            required:
                              - case_id
                            properties:
                              case_id:
                                $ref: '#/components/schemas/CaseId'
                  - $ref: '#/components/schemas/Credits'
              examples:
                Success:
                  description: PAN Fetched Successfully.
                  value:
                    status: success
                    code: 200
                    message: Data Fetched Successfully.
                    data:
                      name: AMIT KUMAR
                      number: C03D3G7513
                      typeOfHolder: Individual or Person
                      isIndividual: true
                      isValid: true
                      firstName: AMIT
                      middleName: ''
                      lastName: KUMAR
                      title: ''
                      panStatus: VALID
                      panStatusCode: E
                      aadhaarSeedingStatus: Successful
                      aadhaarSeedingStatusCode: 'Y'
                      lastUpdatedOn: ''
                      individualTaxComplianceStatus: operative
                    credits_used: 1
                    credits_remaining: 499
        '400':
          $ref: '#/components/responses/400_WithCredits'
          content:
            application/json:
              examples:
                Missing PAN Number:
                  summary: PAN Number is missing.
                  value:
                    status: error
                    code: 400
                    message: PAN Number is missing.
                    data: null
                    credits_used: 0
                    credits_remaining: 8858
                Not a String:
                  summary: Invalid Type
                  value:
                    status: error
                    code: 400
                    message: PAN Number must be a string.
                    data: null
                    credits_used: 0
                    credits_remaining: 8858
                Incorrect Length:
                  summary: Invalid Length
                  value:
                    status: error
                    code: 400
                    message: PAN Number 'C03D3G7513' must be 10 Digits.
                    data: null
                    credits_used: 0
                    credits_remaining: 8858
                Invalid PAN:
                  summary: Invalid PAN
                  value:
                    status: error
                    code: 400
                    message: PAN number is not valid
                    data: null
                    credits_used: 0
                    credits_remaining: 8858
        '401':
          $ref: '#/components/responses/401'
        '402':
          $ref: '#/components/responses/402'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404_WithCredits'
          content:
            application/json:
              examples:
                Not Found:
                  summary: Pan Number Not Found
                  value:
                    status: error
                    code: 404
                    message: Pan Number Not Found
                    data: null
                    credits_used: 0
                    credits_remaining: 8858
        '409':
          $ref: '#/components/responses/409_WithCredits'
          description: Conflict. Upstream service issue.
          content:
            application/json:
              examples:
                upstream_down:
                  summary: Upstream Service Issue
                  value:
                    status: error
                    code: 409
                    message: Upstream Down
                    data: null
                    credits_used: 0
                    credits_remaining: 8858
        '500':
          $ref: '#/components/responses/500_WithCredits'
components:
  schemas:
    APIBaseResponse:
      type: object
      required:
        - status
        - code
        - message
      properties:
        status:
          $ref: '#/components/schemas/APIStatus'
        code:
          $ref: '#/components/schemas/HTTPCode'
        message:
          $ref: '#/components/schemas/APIMessage'
    PanBasicResult:
      required:
        - name
        - number
        - typeOfHolder
        - isIndividual
        - isValid
        - firstName
        - lastName
        - panStatus
        - panStatusCode
        - aadhaarSeedingStatus
        - aadhaarSeedingStatusCode
        - individualTaxComplianceStatus
      type: object
      properties:
        name:
          type: string
          example: AMIT KUMAR
        number:
          type: string
          example: C03D3G7513
        typeOfHolder:
          type: string
          example: Individual or Person
        isIndividual:
          type: boolean
          example: true
        isValid:
          type: boolean
          example: true
        firstName:
          type: string
          example: AMIT
        middleName:
          type: string
          example: ''
        lastName:
          type: string
          example: KUMAR
        title:
          type: string
          example: ''
        panStatus:
          type: string
          enum:
            - VALID
            - FAKE
            - DEACTIVATED
            - DELETED
            - INVALID
            - AMALGAMATION
            - ACQUISITION
            - DEATH
            - DISSOLUTION
            - LIQUIDATED
            - MERGER
            - PARTITION
            - SPLIT
            - UNDER LIQUIDATION
          example: VALID
        panStatusCode:
          type: string
          enum:
            - E
            - F
            - D
            - 'N'
            - EA
            - EC
            - ED
            - El
            - EL
            - EM
            - EP
            - ES
            - EU
          example: E
        aadhaarSeedingStatus:
          type: string
          enum:
            - Successful
            - UnSuccessful
            - Aadhaar is not seeded
            - Not applicable
          example: Successful
        aadhaarSeedingStatusCode:
          type: string
          enum:
            - 'Y'
            - R
            - Blank
            - NA
          example: 'Y'
        lastUpdatedOn:
          type: string
          example: ''
        individualTaxComplianceStatus:
          type: string
          example: operative
    CaseId:
      required:
        - case_id
      type: string
      description: Unique Case Id for BGV
    Credits:
      type: object
      properties:
        credits_used:
          $ref: '#/components/schemas/CreditsUsed'
        credits_left:
          $ref: '#/components/schemas/CreditsLeft'
      required:
        - credits_used
        - credits_left
    APIStatus:
      type: string
      enum:
        - success
        - error
      description: Overall status of the API
    HTTPCode:
      type: integer
      description: HTTP status code
      example: 400
    APIMessage:
      type: string
      description: Description of the response or error
      example: Invalid request parameters
    CreditsUsed:
      type: integer
      description: Represents the total number of credits used in this request.
      example: 3
    CreditsLeft:
      type: integer
      description: 'Represents the remaining credits available for use. '
      example: 4040
    Error:
      allOf:
        - $ref: '#/components/schemas/APIBaseResponse'
    APIErrorData:
      type: object
      properties:
        data:
          type: object
          nullable: true
          example: null
  responses:
    '401':
      description: Unauthorized
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
          examples:
            Missing Token:
              summary: Bearer token is missing or invalid.
              value:
                status: error
                code: 401
                message: Bearer token is missing or invalid.
                data: null
            Incorrect Token Format:
              summary: Token format is incorrect
              value:
                status: error
                code: 401
                message: Token format is incorrect
                data: null
            No Admin Found:
              summary: No admin found for this request
              value:
                status: error
                code: 401
                message: No admin user found for this organization
                data: null
            Invalid API Key:
              summary: Invalid API Key
              value:
                status: error
                code: 401
                message: Invalid API key (organization ID)
                data: null
            User not Found:
              summary: User not found
              value:
                status: error
                code: 401
                message: User not found.
                data: null
    '402':
      description: Payment Required
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
          examples:
            Credit Limit Exceed:
              summary: Credit Limit Exceeded.
              value:
                status: error
                code: 402
                message: Credit Limit Exceeded.
                data: null
            Insufficient Credits:
              summary: Insufficient credits
              value:
                status: error
                code: 402
                message: 'Insufficient credits: 2 required, 1 remaining.'
                data: null
    '403':
      description: Forbidden
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
          examples:
            Token Revoked:
              summary: Token access has been Revoked, Contact Support.
              value:
                status: error
                code: 403
                message: Token access has been Revoked, Contact Support.
                data: null
            Token Inactive:
              summary: Token is Inactive, Contact Support.
              value:
                status: error
                code: 403
                message: Token is Inactive, Contact Support.
                data: null
    400_WithCredits:
      description: Bad Request
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
              - $ref: '#/components/schemas/Credits'
    404_WithCredits:
      description: Not Found
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
              - $ref: '#/components/schemas/Credits'
    409_WithCredits:
      description: Conflict
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
              - $ref: '#/components/schemas/Credits'
    500_WithCredits:
      description: Internal Server Error
      content:
        application/json:
          schema:
            allOf:
              - $ref: '#/components/schemas/Error'
              - $ref: '#/components/schemas/APIErrorData'
              - $ref: '#/components/schemas/Credits'
          examples:
            Internal Server Error:
              summary: Internal Server Error.
              value:
                status: error
                code: 500
                message: Internal Server Error.
                data: null
                credits_used: 3
                credits_remaining: 178
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API key issued by KonnectNXT. Pass as `Authorization: Bearer
        <your_api_key>`.

````