Getnet DocsGetnet Docs

Comandos de la API

Esta referencia define la estructura de bajo nivel de los paquetes de comunicación y las secuencias operativas necesarias para interactuar con el Pinpad de Getnet.

Estructura de los mensajes y protocolo

Cada mensaje transmitido por la interfaz serie sigue un protocolo de estructura estricto, con caracteres de control ASCII. Así se garantiza la integridad de los datos.

Estructura general de la trama

Todos los paquetes deben seguir el siguiente formato: <STX> [PAYLOAD] <ETX> {LRC}

ComponenteValor hexDescripción
<STX>02hInicio de texto: indica el comienzo de una trama de mensaje.
[PAYLOAD]VariableEl comando propiamente dicho y sus parámetros.
<ETX>03hFin de texto: indica el final del payload del mensaje.
{LRC}VariableCarácter de verificación: byte de Longitudinal Redundancy Check.

Delimitadores internos del payload

Dentro de la sección [PAYLOAD], los parámetros se separan con el carácter Separador de Archivos (<FS>) (1Ch).

Matriz operativa de comandos

Esta matriz relaciona cada operación lógica con la secuencia de comandos requerida entre el Sistema Host y el Pinpad.

OperaciónConfiguraciónAcciónCaptura de datosFinalización
Pago estándarY19Y15Y02 (Auto PP)Y03
CashbackY19 (TTY 09)Y15Y02 (Auto PP)Y03
DevoluciónY19 (TTY 20)—Y02 (Auto PP)Y03
Pago con QR—Y0Q—Y0Q (Limpiar)
Prueba de eco—Y0I——
Actualización (YDL)YDL (Init)YDL (Data)—YDL (End)

Definiciones principales del payload

Cada campo que aparece a continuación se separa con <FS> (1Ch) y se enmarca con <STX>/<ETX>/{LRC}, como se describió antes. La columna Attr usa: H (hexadecimal), N (numérico), A (alfabético), AN (alfanumérico), ANS (alfanumérico y caracteres especiales).

Y19 - Inicializar transacción

Es obligatorio para iniciar las operaciones con tarjeta. El Host envía la clave RSA, el importe y los parámetros de cifrado; el Pinpad devuelve los datos de la tarjeta (flujo contactless).

Solicitud Y19 (Host → Pinpad)

CampoLongitudAttrDescripción
RSA256–512ANSClave pública RSA (módulo) usada para cifrar la Pista I. Consulte Cifrado del Pinpad.
EXP1–12ANSExponente RSA.
TEC3NTiempo de espera entre comandos, en segundos (000–999).
ET11NEnviar la Pista I (banda). Sin uso: el Pinpad ignora el valor.
PTC1NSolicitar el tipo de cuenta (se usa habitualmente con tarjetas MAESTRO).
PMK1ANPosición de la clave maestra (0–9, o N). PMK del PIN = valor; PMK del PAN = valor + 1.
WRK1–16ANSClave de trabajo.
ENC1NCifrado DUKPT del PAN: 0 desactivado, 1 activado, 2 activado usando la ranura 3.
IMP12NImporte de la compra; los dos últimos dígitos son decimales.
ICB12NImporte del cashback (000000000000 si no se usa); los dos últimos dígitos son decimales.
TTY2NTipo de transacción. Consulte Tablas de Códigos.

Respuesta Y19 (Pinpad → Host) — Contactless

CampoLongitudAttrDescripción
TJA1–19NNúmero de tarjeta (los primeros 8 y los últimos 4 dígitos; el resto enmascarado con *). Proviene de la Pista II.
CSE3NCódigo de servicio (de la Pista II); se envía en claro.
CBC3NCódigo del banco. Sin uso: siempre 000.
NYA1–26ANSNombre del titular de la tarjeta para el comprobante (Pista I o TAG 5F20); se completa con espacios a la derecha.
REG6NNúmero de registro. Sin uso: 000041.
MDI1AModo de entrada (M, B, C, L, E). Consulte Tablas de Códigos.
VER1–15ANSVersión del software del Pinpad.
FDV4NFecha de vencimiento (YYMM), de la Pista II.
TC2256–512ANSPista II cifrada con la clave RSA de Y19. Proviene de la Pista II o del TAG 57.
1NL1NIndicador de Pista I no leída: 0 leída, 1 no leída.
NSF1–12NNúmero de serie físico del Pinpad.
CPG1–300ANSCriptograma EMV (TLV). N si no aplica.
CAU6NCódigo de autorización. Se devuelve como 6 espacios en blanco.
CRE2NCódigo de respuesta del emisor (TAG 8A y resultado del SDK).
NSP3NNúmero de secuencia del PAN (TAG 5F34).
APN0–32ANSNombre de la aplicación EMV seleccionada, en hexadecimal, para el comprobante (TAG 9F12 / TAG 50).
AID0–16ANSIdentificador de la aplicación EMV seleccionada (TAG 4F).
KSN-PAN20HKey Serial Number del PAN cifrado con DUKPT.
ENC-PAN1–256ANSCriptograma del PAN cifrado con DUKPT.
TDC1ANTipo de cuenta (MAESTRO). N para no imprimirlo.
PIN16–32ANSPINBLOCK si se ingresó un PIN; en caso contrario se omite.
KSN20NKey Serial Number del PIN DUKPT; se incrementa en cada operación EMV con PIN. Se omite si no hay PIN.

Y02 - Respuesta de datos adicionales

Lo genera el Pinpad después de leer una tarjeta. La solicitud puede actualizar importes y pedir datos de banda; la estructura de la respuesta depende del modo de entrada (BANDA o CHIP).

Solicitud Y02 (Host → Pinpad)

CampoLongitudAttrDescripción
U4D1NSolicitar los últimos 4 dígitos (solo banda).
CDS1NSolicitar el código de seguridad (solo banda).
ET11NEnviar la Pista I (banda). Sin uso: se ignora el valor.
SPI1NSolicitar el PIN (solo banda).
PTC1NSolicitar el tipo de cuenta (habitualmente MAESTRO).
PMK1ANPosición de la clave maestra (0–9, o N). PMK del PIN = valor; PMK del PAN = valor + 1.
WRK1–16ANSClave de trabajo (N si no se solicita PIN ni cifrado de pistas). Sin uso: se ignora el valor.
ENC1NCifrado DUKPT del PAN: 0 desactivado, 1 activado, 2 activado usando la ranura 3.
IMP12NImporte de la compra; actualiza el valor de Y19.IMP.
ICB12NImporte del cashback; actualiza el valor de Y19.ICB.

Respuesta Y02 (Pinpad → Host) — Banda magnética (BANDA)

CampoLongitudAttrDescripción
TJA1–19NNúmero de tarjeta (los primeros 8 y los últimos 4; el resto enmascarado con *). Proviene de la Pista II.
FDV4NFecha de vencimiento (YYMM), de la Pista II.
TC1256–512ANSPista I cifrada con la clave RSA de Y19 (banda).
TC2256–512ANSPista II cifrada con la clave RSA de Y19 (banda).
1NL1NIndicador de Pista I no leída: 0 leída, 1 no leída.
CDS1–4NCódigo de seguridad cifrado con la clave RSA de Y19 (ingresado por el usuario).
NSF1–12NNúmero de serie físico del Pinpad.
KSN-PAN20HKey Serial Number del PAN cifrado con DUKPT.
ENC-PAN1–256ANSCriptograma del PAN cifrado con DUKPT.
TDC1ANTipo de cuenta (MAESTRO). N para no imprimirlo.
PIN16–32ANSPINBLOCK si se ingresó un PIN; en caso contrario se omite.
KSN20NKey Serial Number del PIN DUKPT; se incrementa en cada operación con PIN.

Respuesta Y02 (Pinpad → Host) — Chip (CHIP)

CampoLongitudAttrDescripción
TJA1–19NNúmero de tarjeta (los primeros 8 y los últimos 4; el resto enmascarado con *). Proviene de la Pista II.
FDV4NFecha de vencimiento (YYMM), de la Pista II.
TC2256–512ANSPista II cifrada con la clave RSA de Y19. Proviene del TAG 57 (chip).
1NL1NIndicador de Pista I no leída: 0 leída, 1 no leída.
NSF1–12NNúmero de serie físico del Pinpad.
CPG1–300ANSCriptograma EMV (formato TLV). N si no se envía información.
CAU6NCódigo de autorización. Se devuelve como 6 espacios en blanco.
CRE2NCódigo de respuesta del emisor.
NSP3NNúmero de secuencia del PAN (TAG 5F34).
APN0–32ANSNombre de la aplicación EMV seleccionada, en hexadecimal, para el comprobante (TAG 9F12 / TAG 50).
AID0–16ANSIdentificador de la aplicación EMV seleccionada (TAG 4F).
KSN-PAN20HKey Serial Number del PAN cifrado con DUKPT.
ENC-PAN1–256ANSCriptograma del PAN cifrado con DUKPT.
TDC1ANTipo de cuenta (MAESTRO). N para no imprimirlo.
PVF1NIndicador de PIN offline verificado por la tarjeta. Debe ser 0 para PIN online.
PIN16–32ANSPINBLOCK si se ingresó un PIN; en caso contrario se omite.
KSN20NKey Serial Number del PIN DUKPT; se incrementa en cada operación EMV con PIN.

Y03 - Autorización del Host

La instrucción final que el Host envía para completar el flujo.

Campos clave [Host]:

  • [CAU]: código de autorización del emisor.
  • [CRE]: código de respuesta (por ejemplo, “00” para éxito).

Manejo de errores (Y0E)

Si una operación falla, el terminal devuelve un reporte Y0E en lugar de la respuesta esperada de la secuencia.

CódigoMensajeDescripción
01CANCELADOCancelación iniciada por el usuario o el Host.
04ERROR EMVFallo de lectura del chip o de protocolo.
08SIN LLAVESFaltan las claves DUKPT en la ranura 3.