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

# Get Cardholder by Cardholder ID

> Send a request to this endpoint to retrieve details of a cardholder.



## OpenAPI

````yaml json-files/cardholder.openapi.json get /v1/cardholders/{id}
openapi: 3.0.3
info:
  description: >
    Endpoints for doing various actions connected to the Cardholder entity.

    All date-time fields adhere to the ISO 8601 standard unless specified
    otherwise.

    For example: 2024-05-31T06:55:17Z
  version: '1'
  title: Cardholder API
  contact:
    name: Enfuce Financial Services
    url: https://enfuce.com
    email: info@enfuce.com
servers:
  - url: https://api.{{tenant}}.ext-uat1-sandbox.mycore.enfuce.com/issuer
    description: UAT Sandbox
  - url: https://api.{{tenant}}.eu.live.prod.mycore.enfuce.com/issuer
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Get cardholder
    description: Endpoints for fetching a cardholder
  - name: Create cardholder
    description: Endpoints for creating a cardholder
  - name: Update cardholder
    description: Endpoints for updating a cardholder
paths:
  /v1/cardholders/{id}:
    get:
      tags:
        - Get cardholder
      summary: Get Cardholder by Cardholder ID
      description: Send a request to this endpoint to retrieve details of a cardholder.
      operationId: getCardholderById
      parameters:
        - name: id
          in: path
          description: >-
            Enfuce generated unique ID of the cardholder that you want to
            retrieve.
          required: true
          schema:
            type: string
            format: uuid
        - $ref: '#/components/parameters/x-audit-user'
      responses:
        '200':
          description: Successful retrieval of cardholder details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CardholderResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  parameters:
    x-audit-user:
      in: header
      name: x-audit-user
      required: false
      description: Optional audit user header
      schema:
        type: string
  schemas:
    CardholderResponse:
      type: object
      properties:
        id:
          allOf:
            - $ref: '#/components/schemas/Id'
          description: Enfuce generated unique identifier of the cardholder.
        customerNumber:
          $ref: '#/components/schemas/CustomerNumber'
        locale:
          $ref: '#/components/schemas/Locale'
        address:
          $ref: '#/components/schemas/AddressResponse'
        mobileNumber:
          allOf:
            - $ref: '#/components/schemas/MobileNumber'
          nullable: true
        firstName:
          $ref: '#/components/schemas/FirstName'
        middleName:
          allOf:
            - $ref: '#/components/schemas/MiddleName'
          nullable: true
        lastName:
          $ref: '#/components/schemas/LastName'
        createdAt:
          $ref: '#/components/schemas/Created'
        updatedAt:
          allOf:
            - $ref: '#/components/schemas/Updated'
          nullable: true
        updateCount:
          $ref: '#/components/schemas/UpdateCount'
        email:
          allOf:
            - $ref: '#/components/schemas/Email'
          nullable: true
        taxId:
          allOf:
            - $ref: '#/components/schemas/TaxId'
          nullable: true
        dateOfBirth:
          allOf:
            - $ref: '#/components/schemas/DateOfBirth'
          nullable: true
        nationality:
          allOf:
            - $ref: '#/components/schemas/Nationality'
          nullable: true
        riskScore:
          allOf:
            - $ref: '#/components/schemas/RiskScore'
          nullable: true
        birthCountry:
          allOf:
            - $ref: '#/components/schemas/CountryCodesAlpha3'
          nullable: true
          description: >
            Cardholder's country of birth.

            If you are using Enfuce as your BIN sponsor (under ELS or EUK
            licensing), you are required to populate this field due to
            regulatory requirements.
        identificationNumber:
          allOf:
            - $ref: '#/components/schemas/IdentificationNumber'
          nullable: true
      required:
        - customerNumber
        - locale
        - id
    Id:
      type: string
      format: uuid
      description: Unique identifier of a resource.
      example: 20218aae-b15e-406c-9e9f-23735cd86a48
    CustomerNumber:
      description: >-
        External unique identifier of the cardholder, set by the issuer. Can
        contain both letters and numbers. Max character limit is 36.
      type: string
      minLength: 1
      maxLength: 36
      pattern: ^[A-Za-z0-9-]+$
      example: ABCDEFGH123456789
    Locale:
      type: string
      description: |
        Cardholder's language and country code in RFC 5646 format.
      enum:
        - af-ZA
        - ar-AE
        - ar-BH
        - ar-DZ
        - ar-EG
        - ar-IQ
        - ar-JO
        - ar-KW
        - ar-LB
        - ar-LY
        - ar-MA
        - ar-OM
        - ar-QA
        - ar-SA
        - ar-SY
        - ar-TN
        - ar-YE
        - az-AZ
        - be-BY
        - bg-BG
        - bn-IN
        - bs-BA
        - ca-ES
        - cs-CZ
        - cy-GB
        - da-DK
        - de-AT
        - de-CH
        - de-DE
        - de-LI
        - de-NL
        - el-GR
        - en-AU
        - en-BZ
        - en-CA
        - en-GB
        - en-IE
        - en-JM
        - en-MT
        - en-NZ
        - en-PH
        - en-TT
        - en-US
        - en-VI
        - en-ZA
        - en-ZW
        - es-AR
        - es-BO
        - es-CL
        - es-CO
        - es-CR
        - es-DO
        - es-EC
        - es-ES
        - es-GT
        - es-HN
        - es-MX
        - es-NI
        - es-PA
        - es-PE
        - es-PR
        - es-PY
        - es-SV
        - es-UY
        - es-VE
        - et-EE
        - eu-ES
        - fa-IR
        - fi-FI
        - fo-FO
        - fr-BE
        - fr-CA
        - fr-CH
        - fr-FR
        - fr-MC
        - fr-NL
        - ga-IE
        - gl-ES
        - gu-IN
        - he-IL
        - hi-IN
        - hr-HR
        - hu-HU
        - hy-AM
        - id-ID
        - is-IS
        - it-CH
        - it-IT
        - ja-JP
        - ka-GE
        - kk-KZ
        - kl-GL
        - kn-IN
        - ko-KR
        - kok-IN
        - lt-LT
        - lv-LV
        - mk-MK
        - ml-IN
        - mn-MN
        - mr-IN
        - ms-BN
        - ms-MY
        - mt-MT
        - nb-NO
        - nl-BE
        - nl-NL
        - nn-NO
        - no-NO
        - pa-IN
        - pl-PL
        - pt-BR
        - pt-PT
        - ro-RO
        - ru-RU
        - se-NO
        - sk-SK
        - sl-SI
        - sq-AL
        - sr-BA
        - sr-CS
        - sv-FI
        - sv-SE
        - sw-KE
        - syr-SY
        - ta-IN
        - te-IN
        - th-TH
        - tn-ZA
        - tr-TR
        - uk-UA
        - uz-UZ
        - vi-VN
        - xh-ZA
        - zh-CN
        - zh-HK
        - zh-MO
        - zh-SG
        - zh-TW
        - zu-ZA
      example: en-GB
    AddressResponse:
      type: object
      properties:
        address1:
          description: First line of address.
          type: string
          minLength: 1
          maxLength: 255
          pattern: ^(?!\s)(?!.*\s$).+(?<!\s)$
          example: Kings street 12
        address2:
          type: string
          nullable: true
          pattern: ^(?!\s)(?!.*\s$).*(?<!\s)$
          description: >-
            Any string without trailing or leading whitespaces, or an empty
            string.
          maxLength: 255
        address3:
          type: string
          nullable: true
          pattern: ^(?!\s)(?!.*\s$).*(?<!\s)$
          description: >-
            Any string without trailing or leading whitespaces, or an empty
            string.
          maxLength: 255
        address4:
          type: string
          nullable: true
          pattern: ^(?!\s)(?!.*\s$).*(?<!\s)$
          description: >-
            Any string without trailing or leading whitespaces, or an empty
            string.
          maxLength: 255
        city:
          type: string
          minLength: 1
          maxLength: 255
          pattern: ^(?!\s)(?!.*\s$).+(?<!\s)$
          example: Mariehamn
        country:
          type: string
          description: A valid ISO-3166-1 alpha-3 country code.
          pattern: '[A-Z]{3}'
          example: FIN
        region:
          type: string
          nullable: true
          maxLength: 32
          example: Åland Islands
        zipCode:
          type: string
          minLength: 1
          maxLength: 32
          pattern: ^(?!\s)(?!.*\s$).+(?<!\s)$
          example: 22100
      required:
        - address1
        - city
        - country
        - zipCode
    MobileNumber:
      type: string
      description: >-
        Mobile number of the cardholder — it must be a full number, including
        the country code and starting with +.
      pattern: ([+]){1}([1-9]){1}([0-9]){5,14}
      example: '+358401234567'
    FirstName:
      description: First name of the cardholder. Max character limit is 256.
      type: string
      pattern: >-
        ^(?!\s)(?!.*\s$)(?! *$)[A-Za-z0-9
        ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüý
        þÿĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĲĳĴĵĶķĸĹ
        ĺĻļĽľĿŀŁłŃńŅņŇňŉŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵ
        ŶŷŸŹźŻżŽžſǪǫȘșȚțȪȫȮȯȲȳḐḑṢṣẞỌọ'\-]+$
      minLength: 1
      maxLength: 256
      example: John
    MiddleName:
      description: Middle name of the cardholder. Max character limit is 256.
      type: string
      pattern: >-
        ^(?!\s)(?!.*\s$)(?! *$)[A-Za-z0-9
        ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüý
        þÿĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĲĳĴĵĶķĸĹ
        ĺĻļĽľĿŀŁłŃńŅņŇňŉŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵ
        ŶŷŸŹźŻżŽžſǪǫȘșȚțȪȫȮȯȲȳḐḑṢṣẞỌọ'\-]+$
      minLength: 1
      maxLength: 256
      example: James
    LastName:
      description: Last name of the cardholder. Max character limit is 256.
      type: string
      pattern: >-
        ^(?!\s)(?!.*\s$)(?! *$)[A-Za-z0-9
        ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüý
        þÿĀāĂăĄąĆćĈĉĊċČčĎďĐđĒēĔĕĖėĘęĚěĜĝĞğĠġĢģĤĥĦħĨĩĪīĬĭĮįİıĲĳĴĵĶķĸĹ
        ĺĻļĽľĿŀŁłŃńŅņŇňŉŊŋŌōŎŏŐőŒœŔŕŖŗŘřŚśŜŝŞşŠšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵ
        ŶŷŸŹźŻżŽžſǪǫȘșȚțȪȫȮȯȲȳḐḑṢṣẞỌọ'\-]+$
      minLength: 1
      maxLength: 256
      example: Doe
    Created:
      type: string
      format: date-time
      description: The date and time when the card was created.
    Updated:
      type: string
      format: date-time
      description: The date and time when the object/entity was updated last time.
    UpdateCount:
      type: integer
      description: The version number of the entity.
      example: 1
    Email:
      description: Email address of the cardholder. Max character limit is 256.
      type: string
      format: email
      minLength: 1
      maxLength: 256
      example: john.doe@test.com
    TaxId:
      description: >
        Tax Identification Number used for taxation, regulatory reporting, or
        authority requirements in many countries. Depending on regional
        regulatory or scheme mandates (for example Brazil requirements), this
        value may be forwarded to Mastercard.

        In some countries, this value may be the same as the customer
        registration or identification number (identificationNumber).

        Omit to keep current value.
      type: string
      minLength: 1
      maxLength: 64
      example: ABCDEFGH123456789
    DateOfBirth:
      description: >
        Date of birth of the cardholder.

        If you are using Enfuce as your BIN sponsor (under ELS or EUK
        licensing), you are required to populate this field due to regulatory
        requirements.
      type: string
      format: date
      example: '1935-01-15'
    Nationality:
      type: array
      maxItems: 3
      description: >
        Nationality of the cardholder.

        Maximum of 3 values. Duplicate values are not allowed.

        XXX may be used when nationality is unknown.

        XKX may be used for Kosovo.

        If you are using Enfuce as your BIN sponsor (under ELS or EUK
        licensing), you are required to populate this field due to regulatory
        requirements.
      items:
        oneOf:
          - $ref: '#/components/schemas/CountryCodesAlpha3'
          - type: string
            enum:
              - XXX
      example:
        - FIN
        - SWE
    RiskScore:
      description: >
        Risk assessment score of the customer:

        - High - High-risk customer

        - Med - Medium-risk customer

        - Low - Low-risk customer

        - Pep - Politically Exposed Person (PEP)

        - Prohibited - Customer sanctioned or outside of risk appetite


        If you are using Enfuce as your BIN sponsor (under ELS or EUK
        licensing), you are required to populate this field due to regulatory
        requirements.
      type: string
      enum:
        - High
        - Med
        - Low
        - Pep
        - Prohibited
      example: Med
    CountryCodesAlpha3:
      description: |
        ISO 3166-1 alpha-3 country codes. XKX is used for the Kosovo.
      type: string
      enum:
        - ABW
        - AFG
        - AGO
        - AIA
        - ALA
        - ALB
        - AND
        - ARE
        - ARG
        - ARM
        - ASM
        - ATA
        - ATF
        - ATG
        - AUS
        - AUT
        - AZE
        - BDI
        - BEL
        - BEN
        - BES
        - BFA
        - BGD
        - BGR
        - BHR
        - BHS
        - BIH
        - BLM
        - BLR
        - BLZ
        - BMU
        - BOL
        - BRA
        - BRB
        - BRN
        - BTN
        - BVT
        - BWA
        - CAF
        - CAN
        - CCK
        - CHE
        - CHL
        - CHN
        - CIV
        - CMR
        - COD
        - COG
        - COK
        - COL
        - COM
        - CPV
        - CRI
        - CUB
        - CUW
        - CXR
        - CYM
        - CYP
        - CZE
        - DEU
        - DJI
        - DMA
        - DNK
        - DOM
        - DZA
        - ECU
        - EGY
        - ERI
        - ESH
        - ESP
        - EST
        - ETH
        - FIN
        - FJI
        - FLK
        - FRA
        - FRO
        - FSM
        - GAB
        - GBR
        - GEO
        - GGY
        - GHA
        - GIB
        - GIN
        - GLP
        - GMB
        - GNB
        - GNQ
        - GRC
        - GRD
        - GRL
        - GTM
        - GUF
        - GUM
        - GUY
        - HKG
        - HMD
        - HND
        - HRV
        - HTI
        - HUN
        - IDN
        - IMN
        - IND
        - IOT
        - IRL
        - IRN
        - IRQ
        - ISL
        - ISR
        - ITA
        - JAM
        - JEY
        - JOR
        - JPN
        - KAZ
        - KEN
        - KGZ
        - KHM
        - KIR
        - KNA
        - KOR
        - KWT
        - LAO
        - LBN
        - LBR
        - LBY
        - LCA
        - LIE
        - LKA
        - LSO
        - LTU
        - LUX
        - LVA
        - MAC
        - MAF
        - MAR
        - MCO
        - MDA
        - MDG
        - MDV
        - MEX
        - MHL
        - MKD
        - MLI
        - MLT
        - MMR
        - MNE
        - MNG
        - MNP
        - MOZ
        - MRT
        - MSR
        - MTQ
        - MUS
        - MWI
        - MYS
        - MYT
        - NAM
        - NCL
        - NER
        - NFK
        - NGA
        - NIC
        - NIU
        - NLD
        - NOR
        - NPL
        - NRU
        - NZL
        - OMN
        - PAK
        - PAN
        - PCN
        - PER
        - PHL
        - PLW
        - PNG
        - POL
        - PRI
        - PRK
        - PRT
        - PRY
        - PSE
        - PYF
        - QAT
        - REU
        - ROU
        - RUS
        - RWA
        - SAU
        - SDN
        - SEN
        - SGP
        - SGS
        - SHN
        - SJM
        - SLB
        - SLE
        - SLV
        - SMR
        - SOM
        - SPM
        - SRB
        - SSD
        - STP
        - SUR
        - SVK
        - SVN
        - SWE
        - SWZ
        - SXM
        - SYC
        - SYR
        - TCA
        - TCD
        - TGO
        - THA
        - TJK
        - TKL
        - TKM
        - TLS
        - TON
        - TTO
        - TUN
        - TUR
        - TUV
        - TWN
        - TZA
        - UGA
        - UKR
        - UMI
        - URY
        - USA
        - UZB
        - VAT
        - VCT
        - VEN
        - VGB
        - VIR
        - VNM
        - VUT
        - WLF
        - WSM
        - YEM
        - ZAF
        - ZMB
        - ZWE
        - XKX
      example: FIN
    IdentificationNumber:
      description: >
        Customer or company identification number, such as a social security
        number (SSN), national identity number, or company registration number.
        Enfuce does not validate whether the provided identificationNumber is a
        real or officially valid identifier. Customers may populate this field
        according to their own business or regulatory needs.

        If you are using Enfuce as your BIN sponsor (under ELS or EUK
        licensing), you are required to populate this field for Finnish
        cardholders due to regulatory requirements.
      type: string
      minLength: 1
      maxLength: 64
      pattern: ^[a-zA-Z0-9](?:[a-zA-Z0-9 \-_/.+]*[a-zA-Z0-9])?$
      example: 19560606-1234
    ErrorResponse:
      type: object
      properties:
        type:
          description: The problem type.
          type: string
        title:
          description: The reason phrase of HttpStatus.
          type: string
        status:
          description: HTTP problem status.
          type: number
        detail:
          description: The problem detail.
          type: string
        instance:
          description: The request path.
          type: string
        id:
          description: Unique error identifier.
          type: string
          format: uuid
        timestamp:
          description: Date-time when error occurred.
          type: string
          format: date-time
  responses:
    BadRequest:
      description: Bad request
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            type: about:blank
            title: Bad Request
            status: 400
            detail: 'JSON parse error: Unexpected character...'
            instance: /v1/cards
            id: 5cc541cb-f456-4331-b537-d2380fca0400
            timestamp: '2026-02-24T12:34:56Z'
    Unauthorized:
      description: Unauthorized
    Forbidden:
      description: Forbidden
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            type: about:blank
            title: Forbidden
            status: 403
            detail: Access Denied
            instance: /v1/cards
            id: 5cc541cb-f456-4331-b537-d2380fca0403
            timestamp: '2026-02-24T12:34:56Z'
    NotFound:
      description: Not found
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            type: about:blank
            title: Not Found
            status: 404
            detail: >-
              Entity not found - Program with id:
              2ec117b7-454e-4cc5-8b89-dea5485aab2b
            instance: /v1/cards
            id: 5cc541cb-f456-4331-b537-d2380fca0404
            timestamp: '2026-02-24T12:34:56Z'
    InternalServerError:
      description: Internal server error
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            type: about:blank
            title: Internal Server Error
            status: 500
            detail: Unexpected error occurred.
            instance: /v1/cards
            id: 5cc541cb-f456-4331-b537-d2380fca0500
            timestamp: '2026-02-24T12:34:56Z'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````