---
title: "Get Payment Instrument Details"
method: GET
path: "/programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}"
tags: ["PaymentInstrument"]
---

# Get Payment Instrument Details

`GET /programs/{programCode}/accounts/{accountIdentifier}/paymentInstruments/{paymentInstrumentIdentifier}`

Get Payment Instrument Details

## Path parameters

- `programCode` string, required
- `accountIdentifier` string, required
- `paymentInstrumentIdentifier` string, required

## Query parameters

- `extend` string
- `usage` string
- `pciData` string
- `ipAddress` string

## Headers

- `X-GD-RequestId` string, required
- `BaaS-Version` string

## Response `200`

OK

- GetPaymentInstrumentResponse — Represents the response containing details for a specific payment instrument.
  - `paymentInstrument` PaymentInstrument — Represents a payment instrument (such as a card or payment method) associated with an account holder. Inherits common properties from Gd.Bos.DataTransfer.PaymentInstrumentBase and adds encrypted and plain card data, as well as a unique payment identifier. Used to provide detailed information about each payment method, including sensitive card data (encrypted or plain) and its unique identifier.
    - `encryptedPrivatePaymentInstrumentData` EncryptedData — Represents a container for encrypted data used in secure data transfer operations. Contains the encrypted payload and associated cryptographic metadata, including encryption version, ephemeral public key, and public key hash. Used to securely transmit sensitive information such as user data, ensuring confidentiality and integrity during transport.
      - `version` string, nullable — The version of the encryption algorithm used to encrypt the data (e.g., "v1", "v2").
      - `ephemeralPublicKey` string, nullable — The ephemeral public key used in the encryption process, typically for key exchange or session establishment.
      - `publicKeyHash` string, nullable — The hash of the public key used to verify the integrity and authenticity of the encryption key.
      - `data` string, nullable — The encrypted data payload, typically base64-encoded, containing the sensitive information.
    - `privatePaymentInstrumentData` PrivateCardData — Represents sensitive card data associated with a payment instrument. Contains the primary account number (PAN), card verification value (CVV), and expiration details. Used to securely store and transmit card information for payment processing, typically in encrypted or restricted contexts.
      - `pan` string, nullable — The primary account number (PAN) of the card, typically a 16-digit number.
      - `cvv` string, nullable — Card Verification Value (CVV) of the card.
      - `expiration` Expiration — Container for expiration details
        - `month` string, nullable — Represents the expiration details for a payment instrument, such as a card.
        - `year` string, nullable — The year of expiration in four-digit format (e.g., "2027").
    - `paymentIdentifier` string, nullable — Unique identifier for the payment (may be used for transaction tracking).
    - `paymentInstrumentIdentifier` string, nullable — Base class for payment instrument details.
    - `paymentInstrumentType` string, nullable — The type of payment instrument (e.g., "card", "virtualCard").
    - `status` string, nullable — The current status of the payment instrument (e.g., "active", "inactive", "blocked").
    - `statusReasons` string[], nullable — The list of reasons for the current status of the payment instrument.
    - `isPinSet` boolean — Indicates whether the PIN has been set for this payment instrument.
    - `last4Pan` string, nullable — The last four digits of the payment instrument's PAN (Primary Account Number).
    - `activatedDateTime` string, nullable — The date and time when the payment instrument was activated, if applicable.
    - `cardPausedDateTime` string, nullable — The date and time when the payment instrument was paused, if applicable.
    - `issuedDateTime` string, nullable — The date and time when the payment instrument was issued.
    - `isOverIssuedDaysLimit` boolean, nullable — Indicates if the instrument is over the allowed days since issuance.
    - `isPrivateDataViewable` boolean — Indicates if private card data is viewable in the response.
    - `embossedName` string, nullable — The name embossed on the card, if applicable.
    - `customCardImageIdentifier` string, nullable — Identifier for a custom card image, if used.
    - `paymentInstrumentLevel` 'personalized' | 'nonpersonalized', nullable — The level of the payment instrument (e.g., personalized, nonpersonalized).
    - `productMaterialType` string, nullable — The product material type (e.g., "plastic", "virtual").
    - `cardIssueSource` string, nullable — The source of card issuance (e.g., "online", "branch").
    - `paymentIdentifierBin` string, nullable — The BIN (Bank Identification Number) associated with the payment instrument.
  - `responseDetails` ResponseDetail[], nullable — Required: A list of response details providing status codes, descriptions, and additional information about the result of the operation.
    - `code` integer — The primary status or error code for the response (e.g., 200 for success, 400 for validation error).
    - `subCode` integer, nullable — An optional subcode providing more granular detail about the response or error.
    - `description` string, nullable — A human-readable description of the response, error, or status.
    - `url` string, nullable — A URL linking to documentation or a web page with more information about the response code.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/greendot/apis/baas-apis.md) · [All operations](https://skmtc.net/greendot/apis/baas-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/greendot/baas-apis/revisions/666553766b78/schema)
