v1
latestOpenAPI 3.0.32026-07-26208618579.9 KBPIN operations with pre-shared key
Set PIN
This operation sets PIN with encrypted PIN block in ISO format 1. The PIN block is encrypted using a pre-shared double-length 3DES key.
Example
// PIN 1234 in ISO format 1
var pinBlock = "141234AAAAAAAAAA";
// pre-shared zpk
var zpk = Hex.decode("00112233445566778899AABBCCDDEEFF0011223344556677");
// encrypt pinBlock with zpk
var des = Cipher.getInstance("DESede/ECB/NoPadding");
des.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(zpk, "DESede"));
var encryptedPinBlock = Hex.toHexString(des.doFinal(Hex.decode(pinBlock)));
// make request
pinApiClient.post()
.uri("/pin/v2/{plasticId}?auditUser={user}", 123456, "test")
.bodyValue(Map.of(
"zpkIndex", "0",
"pinBlock", encryptedPinBlock
))
.retrieve()
.bodyToMono(Object.class)
.block();
post/v2/{plasticId}
Path parameters
plasticIdstring biginteger required
The plastic id for given card
Query parameters
auditUserstring required
The audit user to log the request
Request body
Example request
{
"zpkIndex": "0",
"pinBlock": "0123456789ABCDEF"
}Response
PIN set successfully
SetPinResponse required