Welcome to our new developer portal! Use the "Ask" button to chat with our AI Agent.
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Display a PIN

This section describes how to display the card PIN securely.

D1 currently supports PIN block ISO 0 returned by the issuer backend.

User Experience

Sample PIN display screen in the Issuer Application

Flow

High-level flow to display a PIN
  1. End user authenticates in the issuer application and requests the PIN.

  2. Issuer application calls the D1 SDK PIN display method.

  3. D1 SDK calls the D1 backend “Get PIN” API.

  4. D1 backend requests the PIN block from the issuer backend (D1 does not store PINs).

  5. D1 backend transciphers the PIN block from issuer keys to device keys.

  6. SDK displays the PIN in a secure UI for a limited time.

Sequence Diagram

Pre-requisites

  • End user, account and card already registered in D1

  • SDK is properly initialized

  • Issuer App called D1 SDK login API.

  • Issuer backend exposes the “Get PIN” endpoint and returns PIN block ISO 0.

Sequence diagram for PIN display

CardPINUI contains PINDisplayTextView (Android) and D1PINDisplayTextField (iOS), which inherit from the native TextView and UITextField. Text field configuration (font, size, color) can be done using these native objects properties.

Security and compliance

  • PIN display occur in a secure, tamper‑resistant UI.

  • PIN data is not persisted on the device.

  • Data exchange is encrypted end‑to‑end.

  • Solution is designed to be PCI DSS compliant for PIN handling.

Required APIs

API
Inbound/Outbound
Description

Issuer <- Thales D1

Retrieve the PIN from Issuer backend in order to display it on the mobile.

SDK

Last updated

Was this helpful?