Comando pinpad.getpindukpt

O conhecimento do padrão DUKPT é necessário para utilização deste comando.

O comando pinpad.getpindukpt captura um PIN e o encripta usando o padrão DUKPT no pinpad interno ou pinpad externo, enquanto exibe uma mensagem no display do pinpad externo ou na tela do terminal POS.

Parâmetros

  1. maxlen [integer] Número máximo de caracteres digitados no PIN.
  2. message [string] Mensagem que será exibida no display do PIN-Pad externo, ou interno no caso de um terminal POS.
  3. pan [string] Primary account number do cartão.
  4. type [integer] Tipo do algoritimo utilizado na encriptação, pode ser:
    • 0: DES
    • 1: 3DES
  5. variablereturnksn [string] Variável que irá armazenar a KSN retornada do processo de encriptação.
  6. variablereturnpin [string] Variável que irá armazenar o PIN criptografado.
  7. variablereturn [integer] Variável que irá armazenar o retorno do comando, onde:
    • 0: OK
    • -1: COMM Error
    • -2: Cancelado
    • -3: PIN Error

Exemplo

No exemplo acima, primeiramente é aberta uma conexão com o PIN-Pad interno através do comando pinpad.open, e então o comando pinpad.getpindukpt é executado.

É solicitado que o usuário entre com o PIN (senha); O PIN então é criptografado e armazenado na variável sEncriptedPIN e a KSN do mesmo na variável sKSN. Como o tipo do retorno é um inteiro, ele é convertido para stringvariable com o comando inttostring

É efetuado a desconexão com o PIN-Pad com o comando pinpad.close e então exibido o conteúdo das variáveis através do comando display