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
Flow
End user authenticates in the issuer application and requests the PIN.
Issuer application calls the D1 SDK PIN display method.
D1 SDK calls the D1 backend “Get PIN” API.
D1 backend requests the PIN block from the issuer backend (D1 does not store PINs).
D1 backend transciphers the PIN block from issuer keys to device keys.
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.
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
Issuer <- Thales D1
Retrieve the PIN from Issuer backend in order to display it on the mobile.
SDK
Last updated
Was this helpful?