Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


Image Removed
Manual de IntegraciónImage Added




VTOL EMVKIT AR 1.9.X

...






Painel
borderColor#E4E3E3
bgColor#ffffff
titleColor#ffffff
borderWidth1px
titleBGColor#704581
titleREVISIONES


Expandir
titleExpandir revisiones


Fecha

Revisión

Cambios – Motivo

06/01/2014

1.0

Creación del documento

17/08/2015

1.1

Definición de librería como servicio. Explicación de integración

23/10/2015

1.2

Agregado de Operación Procesar Mensaje Crédito Débito. Incorporación de identificador único de transacción en VTOL Server, campo: 166-trxReferenceNumber

09/11/2015

1.3

Agregado de campo 1102–Proveedor seleccionado en mensaje Procesar Operación con Tarjeta

13/05/2016

1.4

Agregado de campo 137–ConfVersion en GetConfiguration, 10–inputMode en Sale/VoidSale/Etc y 1010–currentSessionId en el mensaje Crear sesión

16/05/2016

1.5

Revisión del documento

06/06/2016

1.6

Agregado del valor FORCED_CLOSE en el campo 1008–closeSessionAction del mensaje Cerrar Sesión

14/07/2016

1.7

Agregados los tipos de transacciones ServicePayment y VoidServicePayment

18/08/2016

1.8

Agregado del anexo "Mecanismo de Autorización Telefónica"

15/09/2016

1.9

Agregado de campo 57 - Tipo de Cuenta en la respuesta al POS para el procesamiento de operación con tarjeta.

19/09/2016

1.10

Se modifica la condición del campo 1113 – cardIsDebit.

21/09/2016

1.11

Posibilidad de recibir desde el POS, el valor que indica la capacidad de captura de la terminal.

23/09/2016

1.12

Agregado del tipo de operación "Cancelar Lectura de Tarjeta"

06/10/2016

1.13

Se incorpora definición de timeout de EMVKIT.
Se eliminan los campos: Store y Node de los mensajes: Leer Datos de la Tarjeta - Cancelar Lectura de Tarjeta - Procesar Operación con Tarjeta - Procesar Mensaje Crédito Debito - Obtener Configuración de POS - Cerrar Sesión

05/04/2017

1.14

Agregado de propiedad approveInSecondInstance en sección de Configuración de PINPAD

16/05/2017

1.15

Modificación del apartado Mecanismo de Autorización Telefónica

17/05/2017

1.16

Agregado del valor MSR Chip en campo inputMode

30/05/2017

1.17

Agregado del apartado "Circuito Operativo de la EMVKIT"

06/06/2017

1.18

Actualización de la tabla Prefijo en el apartado Formato Interface POS. Mayor detalle del campo MasterKey Position, incluyendo el valor 99

07/07/2017

1.19

Agregado del campo promocional en Configuración de POS para indicar que se aplica una promoción sobre un plan de pago

20/07/2017

1.20

Incorporación del campo opcional 1025 – transactionalControl en la operación "Crear Sesión"
Incorporación de campo 24 - lastTrxId en operación "Leer Datos de la Tarjeta"
Agregado del anexo "Control Transaccional"

27/07/2017

1.21

Modificación del apartado "Pre requisitos"
Incorporación del apartado "Configuración de enlace con VTOL"

02/08/2017

1.22

Agregación de campo 22 – authorizationCode en el requerimiento de la operación "Leer Datos de la Tarjeta"
Eliminación de campo 22 – authorizationCode en el requerimiento de la operación "Procesar Operación con Tarjeta"

06/10/2017

1.23

Actualización de la estructura y numeración del documento
Agregación del campo dateTime como valor requerido en los requerimientos de "Procesar Operación con Tarjeta" y "Procesar Mensaje Crédito Débito"
Actualización del anexo "Timeout de la EMVKIT"

14/11/2017

1.24

Incorporación del apartado "Instalación"
Actualización del apartado "Configuración"

01/02/2018

1.25

Aclaración sobre requerimiento de software

23/04/20181.26

Revisión general del documento.

Agregado de apartado Pagos Parciales.

13/06/20181.27Agregado de procesamiento de tarjetas de empleados
12/07/20181.28Agregado de campos 6 - cardNumber, 9 - track2, 66 - track1 y 145 - exceptionBinName en la respuesta de la operación "Procesar Operación con Tarjeta"
06/08/20181.29Incorporación de la funcionalidad PEI en la mensajería
17/08/20181.30Agregado de campo 1104 - prefixesList en la respuesta de la operación "Leer Datos de la Tarjeta"
14/01/20191.31Incorporación de las funcionalidades de impresión de vouchers en la mensajería
25/01/20191.32

Incorporación de la mensajería PEI en las operatorias de "Leer datos de Tarjeta" y "Procesar Operación con Tarjeta"

Incorporación de la mensajería QueryPEI con PinPad

15/02/20191.33Incorporación de la funcionalidad Billeteras Electrónicas QR (Mercado Pago y Todo Pago)
03/04/20191.34Agregado del campo 0 (compañía) en todos los tipos de transacciones.
17/05/20191.35Incorporación de la funcionalidad Cuenta DNI y Promociones PEI.
20/05/20191.36Incorporación de apartado de compatibilidad con VTOL Server.
02/08/20191.37Incorporación de funcionalidad de Billeteras electrónicas con manejo de cuotas.
08/08/20191.38Incorporación de funcionalidad Contactless con pinpad de First Data.
09/08/20191.39Incorporación de apartado para integrar operaciones con tarjetas Contactless.
24/10/20191.40Agregado del campo 1138 (emvData) en la operatoria "Procesar Operación con Tarjeta". Los datos de este campo retornan al POS para ser impresos en el ticket.
25/11/20191.41Agregado de anexo 6.10 Vouchers con la especificación de los campos de los comprobantes según los Autorizadores
27/12/20191.42Actualización del apartado Procedimiento de Instalación
06/01/20201.43Incorporación de funcionalidad Contactless con pinpad de Prisma.
10/03/20201.44Incorporación de mensaje de Sincronización de transacciones entre EMVKit y el POS.
29/04/20201.45Incorporación de la carpeta doc a la instalación
30/07/20201.46Incorporación de funcionalidad de Billeteras Mercado Pago con retiro de efectivo.
22/09/20201.47Se actualiza el campo 54 (additionalAmount) como tipo de dato Importe, en la mensajería de Billeteras electrónicas.
26/11/20201.48Agregado del campo Descripción en Configuración de POS para indicar la descripción sobre un plan de pago.
11/12/20201.49Incorporación de funcionalidad QR Adquiriente.
16/12/20201.50Incorporación del campo afApplicationCondition para validar la aplicación de reglas antifraudes por el módulo AF de VTOL.
05/03/20211.51Se actualiza el nombre y la descripción del campo 406 en la respuesta de la mensajería de QR Adquiriente.
13/04/20211.52Incorporación de mensaje para Consultar Bines de Excepción
05/05/20211.53Incorporación de mensaje para Consultar tarjetas de Fidelidad
11/05/20211.54Se quitan las referencias de la billetera Todo Pago, ya que dicha Billetera está incluida dentro de la funcionalidad "QR Adquiriente Prisma".
19/05/20211.55Incorporación de mensajería para Billetera Yacaré. Se incluye dentro del apartado "J. Procesar mensaje Billeteras Electrónicas"
24/06/20211.56Incorporación de Operaciones Contactless con doble interacción.
23/08/20211.57En Billetera QR Adquiriente, en el campo WalletType se diferencian por id las billeteras Bimo, Modo y Todo Pago. Incorporación disponible a partir de la versión 3.8.0.12b de VTOL Server.
01/10/20211.58Incorporación de mensajería para Billetera Plus Pagos. Se incluye dentro del apartado "J. Procesar mensaje Billeteras Electrónicas"
06/05/20221.59Incorporación de mensajería para Billetera Rappi Payless. Se incluye dentro del apartado "J. Procesar mensaje Billeteras Electrónicas"





Painel
borderColor#E4E3E3
titleColor#ffffff
borderWidth1
titleBGColor#704581
titleCONTENIDO


Expandir
titleExpandir contenido

Índice


Âncora
_Toc508730814
_Toc508730814

...


Âncora
_Toc508730815
_Toc508730815
1. Introducción

...

Propiedad

Descripción

Valor por defecto

portName

Nombre del puerto

COM9

dataBits

Data bits length

8

stopBits 


1

baudRate

Baud rate of serial port

19200

parity

Paridad

none

timeout

Default time to wait for response from PINPad. This time is expressed in milliseconds.

180000

pinEntryTimeout

Time in milliseconds to wait until card holder enters PIN. If card holder don't enter PIN during this milliseconds, then a packet 72 should be sent to PINPad to cancel PIN entry.

180000

bufferSize

Tamaño máximo del buffer de lectura del puerto serie.

2048

nativeImpleClass

Clase de driver nativo para comunicarse con el PINPad. 


Y01Tec

Tiempo entre comandos expresado en segundos (Formato: NNN). Es el tiempo máximo que el PINPAD espera el siguiente comando.

035

firmwareVersion

Opcional. Indica la versión de compatibilidad de firmware con la que trabajará EMVKIT. 


requiredInitAppVersions

Opcional (Solo para FD). Indica que versiones de compatibilidad de firmware requieren enviar mensaje de inicio al PINPAD 


approveInSecondInstance

Opcional. Indica si EMVKIT permite que el PINPAD apruebe en segunda decisión, una transacción rechazada por el HOST.

True

...

Informações

Referencias

X = Obligatorio
O = Opcional
-   = No requerido


Número

Nombre del campo

Tipo de dato

SaleVoidSaleRefundVoidRefundSaleCashBackServicePaymentVoidServicePaymentSalePEIRefundPEI

Descripción

0companyNuméricoXXXXXXXXXIdentificador de la compañía donde se generó la transacción.

1

store

Alfanumérico

XXXXXXXXX

Identificador del sitio originador de la transacción

2

node

Numérico

XXXXXXXXX

Identificación del nodo, en el sitio originador, donde se generó la transacción

6cardNumberNuméricoAlfanuméricoOOOOOOO--

Número de tarjeta en texto plano. Solo presente en Para operaciones Crédito-Débito, retorna según las normas de PCI, es decir sólo visible los primeros 6 y los últimos 4 dígitos. Ejemplo: 450799******7787

Para Tarjeta de Excepción o Tarjetas de Empleados, retorna en texto plano.

9track2AlfanuméricoOOOOOOO--Track2 de la tarjeta entero. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados

10

inputMode

Alfanumérico

XXXXXXXXX

Forma en que se ingresó/leyó la tarjeta. Valores posibles:

  • Manual – Ingresada de forma manual por teclado
  • MSR – Leída por banda magnética
  • Chip – Leída por CHIP
  • MSR Chip – Fallback

22

authorizationCode

Alfanumérico

OOOOOOO--

Código de autorización generado por el centro autorizador para la transacción cuando al transacción fue aprobada

23

authorizationMode

Alfanumérico

XXXXXXX--

Modo de Autorización:

  • Online = La autorización fue realizada por el Centro Autorizador
  • Offhost = La autorización fue realizada internamente por VTOL
  • Offline  = La autorización fue realizada localmente por el POS

24

lastTrxId

Numérico

XXXXXXX--

Id de transacción en VTOL Server. La misma queda en estado pendiente y debe ser confirmada o cancelada cuando se cierra la sesión con EMVKIT

25

dateTime

Numérico

XXXXXXXXX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción

26

responseCode

Alfanumérico

XXXXXXXXX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

XXXXXXXXX

Código de Respuesta ISO-8583 emitido por el centro autorizador. 2 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server

28

responseMessage

Alfanumérico

XXXXXXXXX

Mensaje de la Respuesta ISO-8583 relacionado con el código del campo 27

29

serialNumber

Numérico

XXXXXXX--

Número que identifica de la terminal lógica en la que se procesó la transacción

30

businessNumber

Numérico

XXXXXXX--

Número de comercio en el que se procesó la transacción

31

lotNumber

Numérico

XXXXXXX--

Número de lote en el que se registró la transacción

32

ticket

Numérico

OOOOOOO--

Número de Ticket correspondiente a la transacción. 4 dígitos como máximo

33

creditCardIssuerName

Alfanumérico

OOOOOOO--

Nombre del Centro emisor de la tarjeta

34

Name

Alfanumérico

OOOOOOO--

Nombre del canal por el cual se autorizó la tarjeta

35

errorDescription

Alfanumérico

OOOOOOOOO

Descripción de error. Sólo se encuentra presente si el valor del campo 26 es “Error”

42

lotDefinitionId

Numérico

XXXXXXX--

Identificador de la definición de lote

57

accountType

Alfanumérico

OOOOOOO--

Campo que se emplea para identificar el tipo de cuenta. Se usa para tarjetas de débito. Los valores posibles son:

  • 1 = Caja de ahorros en pesos
  • 2 = Cuenta corriente en pesos
  • 3 = Caja de ahorros en dólares
  • 4 = Cuenta corriente en dólares

58

workingKey

Alfanumérico

OOOOOOOOO

VTOL devuelve este campo tal como lo entrega el Centro Autorizador. Representa la llave que el PINPAD deberá usar para generar el PINBLOCK en la próxima transacción.

59offlinePinCheckNuméricoOOOOOOOOO

Indicador de PIN Offline verificado, sólo en tarjetas EMV. Valores posibles:

  • 0 = No verificado
  • 1 = PIN verificado
66track1AlfanuméricoOOOOOOO--Track1 de la tarjeta entero. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados

68

rrn

Numérico

OOOOOOO--

Reference referral number

75

accountNumber

Alfanumérico

OOOOOOO--

Número de cuenta. Este campo es devuelto si el campo 74- requestAccountNumber fue activado en el requerimiento. Longitud 28.

81

responseAuth

Alfanumérico

OOOOOOO--

Mensaje de repuesta para ser mostrado en el display del POS donde se indican promociones.

También es utilizado en la operación de Cash Back, cuando el autorizador responde con código de respuesta 98. En este campo se informará el importe máximo que puede solicitarse

82

softwareVersion

Alfanumérico

OOOOOOO--

Versión de la aplicación

130

posPeriod

Numérico

OOOOOOO--

[Opcional si viaja en la solicitud] Periodo enviado por el POS.  Longitud 5

131

turn

Numérico

OOOOOOO--

[Opcional si viaja en la solicitud] Turno. Longitud 2

132

operatorCode

Alfanumérico

OOOOOOO--

[Opcional si viaja en la solicitud] Código de operador. Longitud 20

133

operatorName

Alfanumérico

OOOOOOO--

[Opcional si viaja en la solicitud] Nombre de operador. Longitud 50

134

sellerCode

Alfanumérico

OOOOOOO--

[Opcional si viaja en la solicitud] Código del vendedor. Longitud 20

135

sellerName

Alfanumérico

OOOOOOO--

[Opcional si viaja en la solicitud] Nombre del vendedor. Longitud 50

136

attentionMode

Alfanumérico

OOOOOOO--

[Opcional si viaja en la solicitud] Modalidad de atención (AU ó AS). Longitud 2

145exceptionBinNameAlfanuméricoOOOOOOO--Nombre de la tarjeta de Excepción. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados

166

trxReferenceNumber

Numérico

XXXXXXX--

Identificador único de la transacción en VTOL Server. Longitud entre 19 y 20 dígitos, debido a que utiliza el día como parte de formato.

1010

currentSessionId

Numérico

XXXXXXXXX

Identificador de la sesión actual

1027

libResponseCode

Numérico

XXXXXXXXX

Código de respuesta de la librería.

Indica cómo fue procesada la operación en EMVKIT:

Éxito =   000

Error <> 000

Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

XXXXXXXXX

Mensaje descriptivo del código de respuesta de la librería

1103cardContextIdNuméricoXXXXXXXXXIdentifica el contexto de la tarjeta. Es un valor de referencia a la tarjeta leída a través del PINPAD.

1110

pinpadApplicationId

Alfanumérico

XXXXXXX--

Identificador de la Aplicación del PINPAD.

1111

pinpadApplicationName

Alfanumérico

XXXXXXX--

Nombre de la Aplicación del PINPAD.

1112

cardHolderName

Alfanumérico

OOOOOOOXX

Nombre del titular de la tarjeta si el track I está presente y la lectura fue por banda.

1120

voucherHeader

Mapa

OOOOOOO--

[Opcional 1] Reservado para uso futuro. Retorna los datos del encabezado del voucher. El valor recibido corresponde a un campo compuesto mapa con una serie de claves y valor:

[clave1|valor1, clave2|valor2,…, claveN|valorN]

1121

voucherFooter

Mapa

OOOOOOO--

[Opcional 1] Reservado para uso futuro. Retorna los datos del pie del voucher. El valor recibido corresponde a un campo compuesto mapa con una serie de claves y valor:

[clave1|valor1, clave2|valor2,…, claveN|valorN]

1122

voucherBody

Mapa

OOOOOOO--

[Opcional 1] Reservado para uso futuro. Retorna el cuerpo del voucher. El valor recibido corresponde a un campo compuesto mapa con una serie de claves y valor:

[clave1|valor1, clave2|valor2,…, claveN|valorN]

1123

formattedVoucher

Alfanumérico

OOOOOOO--

[Opcional 2] Reservado para uso futuro. Retorna el voucher completo y formateado para ser impreso.

1124

printVoucher

Numérico

OOOOOOO--

[Opcional 3] Reservado para uso futuro. Indica si la impresión del voucher tuvo éxito o no. Valores permitidos:

  • 1 = true
  • 0 = false
170idCommercePEIAlfanumérico-------XXIdentificador PEI de compañía
171idBranchPEIAlfanumérico-------XXIdentificador PEI de local
172idTerminalPEIAlfanumérico-------XXIdentificador PEI de terminal
153idOperationPEIAlfanumérico-------XXIdentificador de la operación PEI de pago o devolución.
154idOperationOrigenPEIAlfanumérico--------XIdentificador de la operación PEI de origen con la cual se solicitó la devolución. Sólo para RefundPEI
278bankingRefNumAlfanumérico-------X-Numero de referencia de la transacción de pago. Se utiliza para conciliar con los reportes de las entidades bancarias. Número generado por LINK. Largo máximo 12.
280clientCopyVoucherAlfanuméricoXXXXXXX--

Campo para imprimir copia al cliente. Valores posibles:

False: imprimir copia al cliente sin consultarlo.
True: consultar al cliente si quiere copia del voucher.

281requiresSignatureAlfanuméricoXXXXXXX--

Campo para solicitar firma al cliente. Valores posibles:

False: no requerido
True: requerido

1138emvDataAlfanuméricoOOOOOOO--Este campo sólo será retornado en operaciones CHIP con tarjetas Amex. Corresponden a datos del criptograma, los cuales deben ser impresos en el ticket.







Wiki Markup
\\ *Campos opcionales:* \\ \[Opcional 1\]: Cuando la autorización fue aprobada y la librería retorna los datos del Voucher separados en encabezado, Cuerpo y pie. No implementado, reservado para uso futuro. \\ \[Opcional 2\]: Cuando la autorización fue aprobada y la librería retorna en un solo campo el Voucher formateado. No implementado, reservado para uso futuro. \\ \[Opcional 3\]: Cuando la autorización fue aprobada y la librería se encarga de imprimir el Voucher. No implementado, reservado para uso futuro. \\ *Ejemplo* \\







Response from Full library:

{10:MSR;42:101001;1028:Ok;1027:000;82:STS;34:Visa;81:,---esta es una prueba de impresion---|-------esta es la segunda linea-----|-------esta es la tercera linea------|-------esta es la cuarta linea------|-------esta es la quinta linea-------^;33:Visa;32:231;31:14;1112:GOMEZ/JUAN HORACIO ;30:123456788;1111:VISA CLASSIC;29:00000001;1110:A0000000031010;28:APROBADA;27:00;26:ISO8583;25:20150828003911;24:270;23:onLine;1010:28082015003859;22:123456;68:123456789012;110:false;2:1;1:1}

...

Número

Nombre del campo

Tipo de dato

SaleVoidSaleRefundVoidRefundSaleCashBackServicePaymentVoidServicePayment

Descripción

0companyNuméricoXXXXXXXIdentificador de la compañía donde se generó la transacción.

1

store

Alfanumérico

XXXXXXX

Identificador del sitio originador de la transacción

2

node

Numérico

XXXXXXX

Identificación del nodo, en el sitio originador, donde se generó la transacción

22

authorizationCode

Alfanumérico

OOOOOOO

Código de autorización generado por el centro autorizador para la transacción.

23

authorizationMode

Alfanumérico

XXXXXXX

Modo de Autorización:

  • Online = La autorización fue realizada por el Centro Autorizador
  • Offhost = La autorización fue realizada internamente por VTOL
  • Offline  = La autorización fue realizada localmente por el POS

24

lastTrxId

Numérico

XXXXXXX

Id de transacción en VTOL Server. La misma queda en estado pendiente y debe ser confirmada o cancelada cuando se cierra la sesión con EMVKIT

25

dateTime

Numérico

XXXXXXX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción

26

responseCode

Alfanumérico

XXXXXXX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

XXXXXXX

Código de Respuesta ISO-8583 emitido por el centro autorizador. 2 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server

28

responseMessage

Alfanumérico

XXXXXXX

Mensaje de la Respuesta ISO-8583 relacionado con el código del campo 27

29

serialNumber

Numérico

XXXXXXX

Número que identifica de la terminal lógica en la que se procesó la transacción

30

businessNumber

Numérico

XXXXXXX

Número de comercio en el que se procesó la transacción

31

lotNumber

Numérico

XXXXXXX

Número de lote en el que se registró la transacción

32

ticket

Numérico

OOOOOOO

Número de Ticket correspondiente a la transacción. 4 dígitos como máximo

33

creditCardIssuerName

Alfanumérico

XXXXXXX

Nombre del Centro emisor de la tarjeta

34

hostName

Alfanumérico

OOOOOOO

Nombre del canal por el cual se autorizó la tarjeta

35

errorDescription

Alfanumérico

OOOOOOO

Descripción de error. Sólo se encuentra presente si el valor del campo 26 es “Error”

42

lotDefinitionId

Numérico

XXXXXXX

Identificador de la definición de lote

58

workingKey

Alfanumérico

OOOOOOO

VTOL devuelve este campo tal como lo entrega el Centro Autorizador. Representa la llave que el PINPAD deberá usar para generar el PINBLOCK en la próxima transacción

68

rrn

Numérico

XXXXXXX

Reference referral number

75

accountNumber

Alfanumérico

OOOOOOO

Número de cuenta. Este campo es devuelto si el campo 74- requestAccountNumber fue activado en el requerimiento. Longitud 28.

81

responseAuth

Alfanumérico

OOOOOOO

Mensaje de repuesta para ser mostrado en el display del POS donde se indican promociones.

También es utilizado en la operación de Cash Back, cuando el autorizador responde con código de respuesta 98. En este campo se informará el importe máximo que puede solicitarse

82

softwareVersion

Alfanumérico

XXXXXXX

Versión de la aplicación

130

posPeriod

Numérico

OOOOOOO

[Opcional si viaje en la solicitud] Periodo enviado por el POS.  Longitud 5

131

turn

Numérico

OOOOOOO

[Opcional si viaje en la solicitud] Turno. Longitud 2

132

operatorCode

Alfanumérico

OOOOOOO

[Opcional si viaje en la solicitud] Código de operador. Longitud 20

133

operatorName

Alfanumérico

OOOOOOO

[Opcional si viaje en la solicitud] Nombre de operador. Longitud 50

134

sellerCode

Alfanumérico

OOOOOOO

[Opcional si viaje en la solicitud] Código del vendedor. Longitud 20

135

sellerName

Alfanumérico

OOOOOOO

[Opcional si viaje en la solicitud] Nombre del vendedor. Longitud 50

136

attentionMode

Alfanumérico

OOOOOOO

[Opcional si viaje en la solicitud] Modalidad de atención (AU ó AS). Longitud 2

166

trxReferenceNumber

Numérico

XXXXXXX

Identificador único de la transacción en VTOL Server. Longitud entre 19 y 20 dígitos, debido a que utiliza el día como parte de formato.

1010

currentSessionId

Numérico

XXXXXXX

Identificador de la sesión actual

1027

libResponseCode

Numérico

XXXXXXX

Código de respuesta de la librería.

Indica cómo fue procesada la operación en EMVKIT:

Éxito =   000

Error <> 000

Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

XXXXXXX

Mensaje descriptivo del código de respuesta de la librería

1110

pinpadApplicationId

Alfanumérico

XXXXXXX

Identificador de la Aplicación del PINPAD.

1111

pinpadApplicationName

Alfanumérico

XXXXXXX

Nombre de la Aplicación del PINPAD.

1112

CardHolderName

Alfanumérico

OOOOOOO

Nombre del titular de la tarjeta si el track I está presente y la lectura fue por banda.

1120

voucherHeader

Mapa

OOOOOOO

[Opcional 1] Reservado para uso futuro. Retorna los datos del encabezado del voucher. El valor recibido corresponde a un campo compuesto mapa con una serie de claves y valor:

[clave1|valor1, clave2|valor2,…, claveN|valorN]

1121

voucherFooter

Mapa

OOOOOOO

[Opcional 1] Reservado para uso futuro. Retorna los datos del pie del voucher. El valor recibido corresponde a un campo compuesto mapa con una serie de claves y valor:

[clave1|valor1, clave2|valor2,…, claveN|valorN]

1122

voucherBody

Mapa

OOOOOOO

[Opcional 1] Reservado para uso futuro. Retorna el cuerpo del voucher. El valor recibido corresponde a un campo compuesto mapa con una serie de claves y valor:

[clave1|valor1, clave2|valor2,…, claveN|valorN]

1123

formattedVoucher

Alfanumérico

OOOOOOO

[Opcional 2] Reservado para uso futuro. Retorna el voucher completo y formateado para ser impreso.

1124

printVoucher

Numérico

OOOOOOO

[Opcional 3] Reservado para uso futuro. Indica si la impresión del voucher tuvo éxito o no. Valores permitidos:

  • 1 = true
  • 0 = false








Wiki Markup
\\ *Campos opcionales:* \\ \[Opcional 1\]: Cuando la autorización fue aprobada y la librería retorna los datos del Voucher separados en encabezado, Cuerpo y pie. No implementado, reservado para uso futuro. \\ \[Opcional 2\]: Cuando la autorización fue aprobada y la librería retorna en un solo campo el Voucher formateado. No implementado, reservado para uso futuro. \\ \[Opcional 3\]: Cuando la autorización fue aprobada y la librería se encarga de imprimir el Voucher. No implementado, reservado para uso futuro. \\ *Ejemplo* \\







Response from Full library:

{42:101001;1028:Ok;1027:000;82:STS;34:Visa;81:,---esta es una prueba de impresion---|-------esta es la segunda linea-----|-------esta es la tercera linea------|-------esta es la cuarta linea------|-------esta es la quinta linea-------^;33:Visa;32:231;31:14;1112:GOMEZ/JUAN HORACIO ;30:123456788;1111:VISA CLASSIC;29:00000001;1110:A0000000031010;28:APROBADA;27:00;26:ISO8583;25:20150828003911;24:270;23:onLine;1010:28082015003859;22:123456;68:123456789012;110:false;2:1;1:1}

...

  • Mercado Pago
  • Yacaré
  • Plus Pagos
  • RappiPayless

Las operaciones soportadas en VTOL Server para Billeteras electrónicas son:

...

  1. Se inicia con el envío de una orden de devolución (transacción RefundWallet) por parte del POS a VTOL.
  2. VTOL recibe un RefundWallet desde el POS indicando el origen de la billetera.
  3. VTOL responde al POS Devolución Aprobada.
  4. El POS  envía el tercer mensaje:
    1. Si cierra sesión CLOSE. VTOL programa el envío de la devolución al servicio de Plus Pagos:
      1. Si es el pago fue con Tarjeta de Credito/Debito, Plus Pagos informa al autorizador de la devolución, y si este aprueba, en la respuesta informa "Devolución Aprobada".
      2. Si es el pago fue con Saldo PlusPagos, esa devolución queda pendiente en el sistema de Plus Pagos hasta que sea confirmada o rechazada en su BackOffice. 
        1. Plus Pagos responde a VTOL que el estado de la transacción es PENDIENTE DE APROBACIÓN.
        2. La operación quedará pendiente en el BackOffice de PlusPagos, hasta que el comerciante Confirme o Rechace la devolución en su plataforma.
        3. Una vez que se aplica una acción en el BackOffice de PlusPagos por parte del comerciante, Plus Pagos enviará una Notificación hacia VTOL informando el cambio de estado de la operación:
          1. Si Confirma, se devolverá el pago original, y se enviará una Notificación a VTOL indicando que el estado de la venta es DEVUELTA.

          2. Si Rechaza, no se devolverá el pago original, y se enviará una Notificación a VTOL indicando que el estado de la venta original sigue APROBADA. Si fue Rechazada, no se podrá volver a enviar el pedido de devolución.                                

        4. Cuando VTOL recibe la notificación desde PlusPagos, no informa nada al POS, y si se quiere conocer el estado de la devolución, se debe hacer mediante una consulta con el número de la transacción.

    2. Si cierra sesión CANCEL. VTOL no enviará ningún mensaje a Plus Pagos, y se eliminará el pedido de devolución.

  • Requerimiento
Informações

Referencias:

X = Obligatorio
O = Opcional
- = No requerido
C = Condicional

...

Número

...

Nombre del campo

...

Tipo de dato

...

SaleWallet

...

Descripción


...

11

...

trxType

...

Alfanumérico

Procedimiento para Pagos con Rappi Payless

El flujo consiste en:

  1. El cliente realiza un pedido en la app de Rappi. Un mensajero de Rappi recolecta los productos en el comercio y confirma en la app. 
  2. Se genera un código QR en la app de Rappi. El repartidor se acerca a la caja para realizar el pago. El código QR será el medio de pago.
  3. El cajero tiene la opción de escanear un código QR, un código de barras o ingresar manualmente un código.
  4. El POS genera una transacción de venta SaleWallet con Billetera Rappi y la envía a VTOL, enviando todos los datos además del código de pago (es el QR generado en la app).
  5. VTOL recibe el mensaje, y lo procesa.
  6. VTOL envía una solicitud de autorización de pago a la API de Rappi.
  7. Rappi procesa el mensaje, y responde si el pago fue aprobado. 
  8. VTOL recibe la respuesta del pago.
    1. Si VTOL no recibe la respuesta en el tiempo configurado para recibirla, reintentará enviar la solicitud de autorización de pago. Si aún no recibe la respuesta de Rappi, responderá a la caja "La comunicación con Rappi no está disponible. El personal de Rappi necesita este código para pagar con tarjeta de débito". 
  9. VTOL informa al POS la respuesta del Autorizador.
  10. Por último, el POS deberá confirmar la operación, mediante el tercer mensaje (transacción UnsyncCompletion).
  11. Finaliza el flujo de la operación.


Procedimiento para Pago Offline con Rappi Payless

1. El POS envía un SaleWallet a VTOL con la billetera Rappi (walletType: 8).
2. VTOL envía la autorización a Rappi, pero no hay conexión.
3. VTOL responde al POS código 620, “Reintente pago por modo offline con código PIN”. Y la operación queda rechazada en VTOL.
4. El POS calcula el código PIN utilizando un barcode vigente. Y se lo informa al rappi tendero para que lo ingrese en su app y así se autoriza el pago.
5. El POS envía una nueva SaleWallet a VTOL, informando el campo 22 (authorizationCode) con el valor del PIN. Esto es para dejar asentada en VTOL que la transacción se realizó en modo offline.
6. VTOL responde “Aprobado” al POS. La autorización se realiza de forma offline, es decir no se envía ningún mensaje a Rappi.
7. El POS envía tercer mensaje a VTOL, "commit" para confirmar la transacción.
8. El POS imprime el ticket y entrega los productos al rappi tendero.



  • Requerimiento
Informações

Referencias:

X = Obligatorio
O = Opcional
- = No requerido
C = Condicional


Número

Nombre del campo

Tipo de dato

SaleWallet

RefundWallet
QueryWallet

Descripción

11

trxType

Alfanumérico

X

XX

Tipo de Transacción:

  • SaleWallet = Compra con billetera electrónica
  • RefundWallet = Devolución de compra realizada con billetera electrónica
  • QueryWallet = Consulta de transacción de compra realizada con billetera electrónica

12

amount

Importe

X

X-

Monto de la transacción. 12 dígitos como máximo. Se envía sin coma. Los dos últimos dígitos representan los decimales. Ej: 1000 equivale a 10.00

Nota: Para billeteras Yacaré y Plus Pagos, el importe debe ser siempre por el total de la venta y en la moneda informada.

13

currencyPosCode

Alfanumérico

X

X-

Tipos de moneda:

  • $ = Pesos
  • U$S = Dólares

Nota: En el punto de venta se deberá informar la moneda de la cuenta vendedor de Mercado Pago (si el retailer posee una cuenta argentina en Mercado Pago entonces tendrá que informar la moneda $ -pesos argentinos-)

Importante: Tener en cuenta que operando con Mercado Pago siempre debe coincidir el país de la cuenta vendedor con el país de la cuenta comprador

14paymentsNumérico--OCantidad de cuotas por las cuales se realizará el pago. 2 dígitos como máximo 
Si es sin cuotas, el valor por defecto es 1
16originalDateNumérico-XX

Fecha de realización de la compra con billetera electrónica en formato YYYYMMDD

22authorizationCodeAlfanumérico-C-

Código de autorización.

Exclusivo para billetera Yacaré.

Campo Condicional. Si la Compañía tiene configurado "Requiere código de autorización" entonces es obligatorio.

24lastTrxIdNuméricoOOOUtilizado cuando está activo el control transaccional. En este campo el POS debe enviar la última transacción procesada correctamente.

25

dateTime

Numérico

X

XX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS

54additionalAmountImporteOO-

Contiene el Importe del "Cashout". 12 dígitos como máximo. Valor entero. Los últimos 2 dígitos corresponden a los decimales.

Para devoluciones, se debe enviar el monto total del cashout.

Para devolver sólo el cashout, se debe enviar el campo 12 (amount) con valor 0.

Sólo disponible para billetera de Mercado Pago.

268walletPosTrxIdAlfanuméricoXXO

Identificador único de la transacción de billetera para la compañía. Debe ser único por tipo de transacción. Es originado por el POS para realizar una compra o devolución con billetera.

Formato:
codigoTienda (longitud 10) + codigoCaja (longitud 10) + Fecha (AAMMDDHHmmss) (longitud 12)
Longitud total de 32

Opcional en QueryWallet: Se informa este campo o el campo walletPaymentId para localizar una transacción de compra

269walletTypeNuméricoXXX

Tipo de billetera por la cual se cursará la transacción en el POS. Opciones:

1: Mercado Pago
5: Yacaré
6: Plus Pagos

8: Rappi Payless

270posTicketBase 64X--

Información del ticket en formato xml y posteriormente transformado en Base 64. Ver sección Estructura del campo posTicket

271walletPaymentIdAlfanumérico

-

XO

Identificador del número de pago informado por el Autorizador en el campo 271 de la respuesta de la operación SaleWallet

Opcional en QueryWallet: Se informa este campo o el campo walletPosTrxId para localizar una transacción de compra

311purchaseTitleAlfanuméricoO--

Título de la venta. Longitud máxima 100.

Si el POS no lo envía, VTOL tomará un valor por defecto el siguiente label: "Pago con Billetera virtual en" + "CompanyName".

312purchaseDescAlfanuméricoO--

Descripción de la venta. Longitud máxima 100.

Si el POS no lo envía, VTOL tomará un valor por defecto el siguiente label: "Pago realizado con QR. Por un monto de $amount. Y retiro de efectivo de $additionalAmount.".retiro de efectivo de $additionalAmount.".

300barCodeAlfanuméricoC--

Campo exclusivo y obligatorio para billetera Rappi Payless.

Corresponde al código de pago generado por la app mobile de Rappi.

El POS puede obtener este código escaneando un código QR, un código de barras o ingresarlo manualmente, desde la billetera virtual del recolector de Rappi.


Nota

Los valores de compañía, tienda y caja serán obtenidos de la sesión.

...

El mensaje con la estructura del ticket estará en XML. El elemento raíz de ese mensaje XML deberá ser la etiqueta <message>, siendo la misma lo que se llamará encabezado.

Dentro del encabezado, se podrá enviar el valor de los descuentos totales y de los impuestos totales que aplicarán a la compra. Son campos opcionales.

Los campos dentro del encabezado son: totDiscount y totTaxes

Detalle de los campos:

Elemento

Tipo de dato

Descripción

Requerido

Valor ante ausencia

totDiscountNuméricoImporte total de descuento que calcula el POS. Será la sumatoria de descuentos que se apliquen a los artículos.No0
totTaxesNuméricoImporte total de impuesto que calcula el POS. Será la sumatoria de impuestos que se apliquen sobre la compra.No0


La manera de ejecutar un comando es utilizando una etiqueta con la forma <elemento-comando>. El elemento "item" identifica a los artículos. De esta manera, si se desea, por ejemplo, agregar un nuevo artículo el comando a utilizar será <item-add>. En el cuerpo del mensaje podrá contener uno, ninguno o varios de estos comandos. 

...

Para el elemento ítem, los atributos serán los siguientes:


Elemento

Atributo

Tipo de dato

Descripción

Requerido

Valor ante ausencia

Ítem

 

 

 

 

 

 

 

 

 

 

 





















unitprice

Numérico positivo

Precio unitario del artículo en cuestión.

Si

 


xprice

Numérico positivo

Precio extendido del artículo en cuestión. Es igual a la cantidad por el precio unitario.

Si

 


qty

Entero positivo

Cantidad de artículos en la línea.

Si

 


magnitude

Numérico positivo

Si el artículo es mensurable por otro unidad que no sea la cantidad, deberá ser expresad en esta propiedad.

No

0

code

Alfanumérico

Código propio del artículo.

No

"-"

brand

Alfanumérico

Marca del artículo.

No

"-"

supplier

Alfanumérico

Proveedor al que pertenece el artículo.

No

"-"

discountable

Alfanumérico

Si el artículo es puede recibir descuentos o no.

No

"-"

level1

Alfanumérico

Nivel 1 de categorización del artículo. Anteriormente este nivel se conocía con el nombre de Departamento.

No

"-"

level2

Alfanumérico

Nivel 2 de categorización del artículo. Anteriormente este nivel se conocía como la Familia del artículo.

No

"-"

level3

Alfanumérico

Nivel 3 de categorización del artículo. Anteriormente este nivel se conocía como la Categoría del artículo.

No

"-"

level4

Alfanumérico

Nivel 4 de categorización del artículo. Anteriormente este nivel se conocía como la subcategoría del artículo.

No

"-"

descriptionAlfanuméricoDescripción del ítemSi
currencyAlfanumérico

Moneda utilizada en el precio del ítem

Nota: En el punto de venta se deberá informar la moneda de la cuenta vendedor de Mercado Pago (si el retailer posee una cuenta argentina en Mercado Pago entonces tendrá que informar la moneda $ -pesos argentinos-).

Si
measureAlfanuméricoUnidad de medida del ítem. Valores posibles: unit - packNo"unit"



Ejemplo

Bloco de código
languagexml
themeEclipse
<message><message totDiscount="10.00" totTaxes="5.00">
 <item-add seq="1" code="0001" discountable="true" unitprice="25.0" qty="1.0" level1="MEN" level2="CASUAL" supplier="" brand="LEVIS" xprice="25.0" magnitude="1" description="Jean casual" currency="$" />
 <item-add seq="2" code="0002" discountable="true" unitprice="28.0" qty="2.0" level1="MEN" level2="CASUAL" supplier="" brand="LEVIS" xprice="48.0" magnitude="1" description="Jean casual" currency="$" />
</message>

...

Informações

Referencias

X = Obligatorio
O = Opcional
- = No requerido
C = Condicional


Número

Nombre del campo

Tipo de dato

SaleWalletRefundWalletQueryWallet

Descripción

0companyNuméricoXXXIdentificador de la compañía donde se generó la transacción
1storeAlfanuméricoXXXIdentificador del sitio originador de la transacción
2nodeNuméricoXXXIdentificación del nodo, en el sitio originador, donde se generó la transacción
6cardNumberAlfanuméricoO-O

Tarjeta enmascarada seleccionada al momento de efectuar el pago QR. El campo es opcional en caso de que se haya abonado con saldo de la cuenta de Mercado Pago.

Para Rappi este campo no retorna.

12amountImporteX-XMonto de la transacción. Valor entero. Los últimos 2 dígitos corresponden a los decimales.
13currencyPosCodeAlfanumérico--X

Tipos de moneda:

  • $ = Pesos
  • U$S = Dólares
14paymentsNumérico--OCantidad de cuotas seleccionadas al momento de realizar el pago QR. El campo es opcional en caso de que se haya abonado con saldo de la cuenta de Mercado Pago
22authorizationCodeAlfanuméricoO-O

Código de autorización informado por el Autorizador.

Para Mercado Pago sólo retorna cuando el cliente paga con tarjeta de crédito o débito.

Para Yacaré, este campo no retorna.

24trxIdNuméricoXXXIdentificador de la transacción

25

dateTime

Numérico

XXX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción

26

responseCode

Alfanumérico

XXX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

XXX

Código de Respuesta emitido por el centro autorizador. 3 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server para Billeteras Electrónicas

28

responseMessage

Alfanumérico

XXX

Mensaje de la Respuesta relacionado con el código del campo 27

54additionalAmountImporteOOO

Contiene el Importe del "Cashout". Para aquellas operaciones realizadas con retiro de efectivo. Valor entero. Los últimos 2 dígitos corresponden a los decimales.

Sólo disponible para billetera de Mercado Pago.

140paymentTypeNuméricoO-X

Tipo de pago. Valores posibles:

0: Tarjeta
1: Efectivo
2: Transferencia

142providerNameAlfanumérico--OProveedor de la tarjeta seleccionada al momento de efectuar el pago QR. El campo es opcional en caso de que se haya abonado con saldo de la cuenta de Mercado Pago.
166trxReferenceNumberNuméricoXXXIdentificador único de la transacción en VTOL Server. Longitud entre 19 y 20 dígitos, debido a que utiliza el día como parte de formato

271

walletPaymentId

Alfanumérico

X-X

Identificador del número de pago informado por el Autorizador.

Para Rappi, en este campo retorna el barcode utilizado para el pago.

272amountRefundedImporte--XMonto devuelto en la transacción
273paymentStatusAlfanuméricoO-O

Estado de la transacción de pago informado por el Autorizador. Estados posibles:

0: Aprobado
1: Devuelto
2: Pendiente
3: Autorizado
4: En Progreso
5: En mediacion
6: Rechazado
7: Cancelado
8: Contracargo
9: Reversado

274paymentStatusDetailAlfanuméricoO-ODetalle del estado de la transacción de pago informado por el Autorizador
275cardTypeNuméricoO-O

Tipo de tarjeta seleccionada al momento de efectuar el pago QR. Es opcional en caso de que se haya abonado con saldo de la cuenta de Mercado Pago.

Para Yacaré, este campo no retorna.

Para Rappi este campo no retorna.

Valores posibles:
0: Débito
1

: Crédito

: Crédito

415walletPayoutIdAlfanuméricoO-O

Identificador del ID de cashback informado por el Autorizador.

Sólo retorna en caso de haber realizado Retiro de efectivo con la app de Mercado Pago.

1010currentSessionIdNuméricoXXXIdentificador de la sesión
1027libResponseCodeNuméricoXXX

Código de respuesta de la librería.
Indica cómo fue procesada la operación en EMVKIT:
Éxito = 000
Error <> 000
Ver sección Códigos de Respuesta de Librería

1028libResponseMessageAlfanuméricoXXXMensaje descriptivo del código de respuesta de la librería


Ejemplo


Response from VTOL (SaleWallet):

Response message: {1:1;2:1;1027:000;1028:Ok;166:14021905052200000204;271:2289999999999999228;1010:1550131493463;22:1234567;24:121;25:20190214050518;26:ISO8583;27:00;28:APROBADA}

Response from VTOL (RefundWallet):

Response message: {1:1;2:1;1010:1550131493463;1027:000;1028:Ok;25:20190214050543;26:ISO8583;27:509;28:Estado trx original no acepta devolucion}

Response from VTOL (QueryWallet):

Response message: {1:1;2:1;1027:000;1028:Ok;6:450995xxxxxx3704;140:0;12:53.0;13:$;14:1;142:visa;271:2289999999999999228;272:0.0;273:0;274:accredited;1010:1550131493463;275:1;22:1234567;24:121;25:20190214050534;26:ISO8583;27:00;28:APROBADA}

...

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


  • Requerimiento

Número

Nombre del campo

Tipo de dato

SalePEI

RefundPEIQueryPEI

Descripción

3serverAlfanuméricoXXX

Identificador del Server que procesará la transacción.

Enviar "VTOL"

10

inputMode

Alfanumérico

X

XX

Forma de ingreso:

  • BarCode
  • SoftToken

11

trxType

Alfanumérico

X

XX

Tipo de Transacción:

  • SalePEI = Compra Cuenta DNI PEI
  • RefundPEI = Devolución Cuenta DNI PEI
  • QueryPEI = Consulta de transacción Cuenta DNI PEI

12

amount

Importe

X

X-

Monto de la transacción de Venta o de Devolución. 12 dígitos como máximo. Se envía sin coma. Los dos últimos dígitos representan los decimales. Ej: 1000 equivale a 10.00

Se validará el importe enviado por el POS:

  • En la venta: que el importe sea mayor a 0.
  • En la devolución: que el importe sea mayor a 0 y menor al importe original de venta. Si el POS informa un importe igual que el original de venta, o no lo informa, corresponde a una devolución Total. Si el POS informa un importe menor que el original de venta, corresponde a una devolución Parcial.

13

currencyPosCode

Alfanumérico

X

X-

Tipos de Moneda:

  • $ = Pesos
  • U$S = Dólares

25

dateTime

Numérico

X

XX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. Es importante persistir este valor para consultar el resultado de una operación en caso de algún inconveniente

153idOperationPEIAlfanumérico-XO

Identificador de operación Cuenta DNI PEI de pago que se desea devolver o consultar.

157customerDocAlfanumérico

O

--

Número de documento del titular de la cuenta.

Obligatorio junto con softToken, únicamente si el modo de ingreso es softToken.

173dateTimeOriginalTrxNumérico--XFecha y hora de realización de la transacción de venta o devolución que se desea consultar en formato YYYYMMDDHHMMSS. Se debe enviar el valor del campo 25 de la transacción a consultar.
279softTokenAlfanuméricoO--

Token generado por la app mobile. Este token se lo informa el cliente al cajero, para que sea ingresado en el POS.

Obligatorio junto con customerDoc, únicamente si el modo de ingreso es softToken.

300
barCode
AlfanuméricoO--

Código generado por la app mobile. Este código se lo informa el cliente al cajero, para que sea ingresado en el POS.

Obligatorio únicamente si el modo de ingreso es barCode.



Nota

Los valores de compañía, tienda y caja serán obtenidos de la sesión.



  • Respuesta

Número

Nombre del campo

Tipo de dato

SalePEIRefundPEIQueryPEI

Descripción

0companyNuméricoXXXIdentificador de la compañía donde se generó la transacción.
1storeAlfanuméricoXXXIdentificador del sitio originador de la transacción
2nodeNuméricoXXXIdentificación del nodo, en el sitio originador, donde se generó la transacción
25dateTimeNuméricoXXXFecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción.

26

responseCode

Alfanumérico

XXX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos_de_Errores_del_CORE_de_VTOLServer
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

XXX

Código de Respuesta ISO-8583 emitido por el centro autorizador. 2 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server para PEI

28

responseMessage

Alfanumérico

XXX

Mensaje de la Respuesta ISO-8583 relacionado con el código del campo 27

35

errorDescription

Alfanumérico

XXX

Descripción de error. Sólo se encuentra presente si el valor del campo 26 es “Error”

153

idOperationPEI

Alfanumérico

XXX

Identificador de la operación PEI de pago o de devolución

154idOperationOrigenPEIAlfanumérico-XOIdentificador de la operación original de pago.
170idCommercePEIAlfanuméricoXXXIdentificador PEI de compañía
171idBranchPEIAlfanuméricoXXXIdentificador PEI de local
172idTerminalPEIAlfanuméricoXXXIdentificador PEI de terminal
174originalTrxStatusNumérico--O

Informa el estado de la transacción original en una operación de consulta. Si el campo en la respuesta no se recibe es porque la consulta falló.

Puede contener uno de los siguientes valores:

    • 0: Aprobada
    • 1: Rechazada
    • 2: En proceso
278bankingRefNumAlfanuméricoXXXNúmero de referencia de la transacción de pago.

1010

currentSessionId

Numérico

XXX

Identificador de la sesión actual

1027

libResponseCode

Numérico

XXX

Código de respuesta de la librería.

Indica cómo fue procesada la operación en EMVKIT:

Éxito = 000
Error <> 000

Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

XXX

Mensaje descriptivo del código de respuesta de la librería


L. Procesar Mensaje Promociones PEI

...

Informações

Referencias
X = Obligatorio
O = Opcional
- = No requerido


  • Requerimiento

Número

Nombre del campo

Tipo de dato

PromoPei

Descripción

3serverAlfanuméricoX

Identificador del Server que procesará la transacción.

Enviar "VTOL"

11

trxType

Alfanumérico

X

Tipo de Transacción:

  • PromoPEI
301originalTrxTypeAlfanuméricoXIdentificador del Tipo de Promoción que se está informando. Valores posibles: "1" para Pagos con promociones y "2" para Devoluciones de pagos con promoción.

12

amount

Importe

X

Monto total de la transacción original de venta, debe ser el mismo valor. 12 dígitos como máximo. Se envía sin coma. Los dos últimos dígitos representan los decimales.

13currencyPosCodeAlfanuméricoX

Tipos de Moneda:

  • $ = Pesos
  • U$S = Dólares

302

promoAmount

Importe

X

Importe para informar una promoción o para informar la devolución de un pago con promoción. En donde los últimos 2 dígitos serán los decimales. Puede ser igual al importeOperacion (amount), en el caso en que todo el importe del pago esté sujeto a promoción. Pero no puede superar el importeOperacion.

Para informar una Promoción en una Venta, se informará la sumatoria del importe de los productos sujetos a promoción. Si el pago completo está sujeto a promoción, el PromoAmount será igual a amount.

El mismo comportamiento se aplicará para informar la Devolución de un pago sujeto a promoción. Se informará la suma del importe de los productos que fueron sujetos a promoción en la venta.

25

dateTime

Numérico

X

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. Es importante persistir este valor para consultar el resultado de una operación en caso de algún inconveniente

153idOperationPEIAlfanuméricoX

Identificador de operación PEI de pago que devuelve Link en la respuesta del pago.

278bankingRefNumAlfanuméricoXNúmero de referencia bancaria de la operación de pago. Es devuelta por Link en la operación de pago.



Nota

Los valores de compañía, tienda y caja serán obtenidos de la sesión.


  • Respuesta

Número

Nombre del campo

Tipo de dato

PromoPei

Descripción

0companyNuméricoXIdentificador de la compañía donde se generó la transacción.
1storeAlfanuméricoXIdentificador del sitio originador de la transacción
2nodeNuméricoXIdentificación del nodo, en el sitio originador, donde se generó la transacción

25

dateTime

Numérico

X

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción

26

responseCode

Alfanumérico

X

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

X

Código de Respuesta ISO-8583 emitido por el centro autorizador. 2 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server para PEI

28

responseMessage

Alfanumérico

X

Mensaje de la Respuesta ISO-8583 relacionado con el código del campo 27

35

errorDescription

Alfanumérico

X

Descripción de error. Sólo se encuentra presente si el valor del campo 26 es “Error”

1010

currentSessionId

Numérico

X

Identificador de la sesión actual

1027

libResponseCode

Numérico

X

Código de respuesta de la librería.

Indica cómo fue procesada la operación en EMVKIT:

Éxito = 000
Error <> 000

Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

X

Mensaje descriptivo del código de respuesta de la librería


M. Obtener Configuración de POS

...

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

SaleWallet

RefundWallet

QueryWallet

Descripción

11trxTypeAlfanuméricoXXX

Tipo de Transacción:

  • SaleWallet = Compra con billetera electrónica
  • RefundWallet = Devolución de compra realizada con billetera electrónica
  • QueryWallet = Consulta de transacción de compra realizada con billetera electrónica
12amountNuméricoXX-

Monto de la transacción. 12 dígitos como máximo. Valor entero. Los dos últimos dígitos representan los decimales. Ej: "1000" equivale a "10.00".

Para devoluciones, se debe enviar el monto total de la venta original, ya que no están permitidas las devoluciones parciales.

13currencyPosCodeAlfanuméricoXX-

Tipos de moneda:

  • $ = Pesos
16originalDateNumérico-XXFecha de realización de la compra con billetera electrónica en formato YYYYMMDD
24

lastTrxId

NuméricoOOOUtilizado cuando está activo el control transaccional. En este campo el POS debe enviar la última transacción procesada correctamente.
25dateTimeNuméricoXXXFecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS
268walletPosTrxIdAlfanuméricoXXO

Identificador único de la transacción de billetera para la compañía. Es originado por el POS para realizar una compra con billetera.

Formato:
codigoTienda (longitud 10) + codigoCaja (longitud 10) + Fecha (AAMMDDHHmmss) (longitud 12)
Longitud total de 32.

Opcional en QueryWallet: Se informa este campo o el campo walletPaymentId para localizar una transacción de compra.

269walletTypeNuméricoXXX

Tipo de billetera por la cual se cursará la transacción en el POS. Opciones:

2: Billetera Bimo
3: Billetera Modo
4: Billetera Todo Pago

270posTicketAlfanuméricoX--Información del ticket en formato xml y posteriormente transformado en Base 64. Ver sección Estructura del campo posTicket
271walletPaymentIdAlfanumérico-XO

Identificador del número de pago informado por el Autorizador en el campo 271 de la respuesta de la operación SaleWallet.

Opcional en QueryWallet: Se informa este campo o el campo walletPosTrxId para localizar una transacción de compra.

401paymentMethodsDataJsonX--Información de los planes de pago, en formato json
402

walletBenefits

JsonX--Información de las tarjetas de beneficio, en formato json



Âncora
posTicket
posTicket
Estructura del campo posTicket (270)

...

Cada uno de los comandos que se envían posee diversos atributos, los cuales identifican al elemento que se está enviando y definen diversas propiedades que poseen los mismos. Poseerá un número de secuencia, el cual identifica cada elemento unívocamente:


Propiedad

Tipo de dato

Descripción

Requerido

seq

Entero positivo

Número identificador único del elemento dentro de la transacción.


Cada comando posee una serie de atributos que definirán las distintas propiedades del elemento que se está agregando (además del número de secuencia antes mencionado).

Para el elemento ítem, los atributos serán los siguientes:


Elemento

Atributo

Tipo de dato

Descripción

Requerido

Valor ante ausencia

Ítem

 

 

 

 

 

 

 

 

 

 

 





















unitprice

Numérico positivo

Precio unitario del artículo en cuestión.

Si

 


xprice

Numérico positivo

Precio extendido del artículo en cuestión. Es igual a la cantidad por el precio unitario.

Si

 


qty

Entero positivo

Cantidad de artículos en la línea.

Si

 


magnitude

Numérico positivo

Si el artículo es mensurable por otro unidad que no sea la cantidad, deberá ser expresad en esta propiedad.

No

0

code

Alfanumérico

Código propio del artículo.

No

"-"

brand

Alfanumérico

Marca del artículo.

No

"-"

supplier

Alfanumérico

Proveedor al que pertenece el artículo.

No

"-"

discountable

Alfanumérico

Si el artículo es puede recibir descuentos o no.

No

"-"

level1

Alfanumérico

Nivel 1 de categorización del artículo. Anteriormente este nivel se conocía con el nombre de Departamento.

No

"-"

level2

Alfanumérico

Nivel 2 de categorización del artículo. Anteriormente este nivel se conocía como la Familia del artículo.

No

"-"

level3

Alfanumérico

Nivel 3 de categorización del artículo. Anteriormente este nivel se conocía como la Categoría del artículo.

No

"-"

level4

Alfanumérico

Nivel 4 de categorización del artículo. Anteriormente este nivel se conocía como la subcategoría del artículo.

No

"-"

descriptionAlfanuméricoDescripción del ítemSi
currencyAlfanumérico

Moneda utilizada en el precio del ítem

Nota: En el punto de venta se deberá informar la moneda de la cuenta vendedor de Mercado Pago (si el retailer posee una cuenta argentina en Mercado Pago entonces tendrá que informar la moneda $ -pesos argentinos-).

Si
measureAlfanuméricoUnidad de medida del ítem. Valores posibles: unit - packNo"unit"


Ejemplo

Bloco de código
languagexml
<message>
 <item-add seq="1" code="0001" discountable="true" unitprice="25.0" qty="1.0" level1="MEN" level2="CASUAL" supplier="" brand="LEVIS" xprice="25.0" magnitude="1" description="Jean casual" currency="$" />
 <item-add seq="2" code="0002" discountable="true" unitprice="28.0" qty="2.0" level1="MEN" level2="CASUAL" supplier="" brand="LEVIS" xprice="48.0" magnitude="1" description="Jean casual" currency="$" />
</message>

...

El mensaje con la estructura de los medios de pago será en JSON. Estará conformado por los siguientes campos:

ParámetroTipo de datoRequeridoDescripción
providerPosCodeAlfanuméricoSi

Código del Proveedor de la tarjeta configurado en VTOL. Por ejemplo para Visa el código es "VI".

El código se obtiene de la Configuración de POS.

bankCodeNuméricoNo

Identificador del banco asociado a la tarjeta. Debe corresponder al ID de banco dispuesto por el BCRA.

Ver códigos de bancos.

installmentsArraySiInformación de las cuotas.

paymentOptionIdAlfanuméricoSi

Identificador de la opción de pago. Máximo 10 caracteres. Debe ser único dentro del campo "paymentMethodsData".

Permite trazabilidad con la opción que elija el cliente en el momento de pagar.

La opción de pago seleccionada por el cliente en su billetera virtual es retornada por VTOL en el mensaje de respuesta de la venta, en el campo 404.


quantityNuméricoSiCantidad de cuotas. Número entero. Máximo 2 dígitos.

paymentConditionAlfanuméricoNo

Condición de la opción de pago. Sólo se informará si existe en VTOL una opción de pago con una condición.

Máximo 20 caracteres.


amountPerInstallmentImporteSiMonto por cuotas. Valor entero. Los 2 últimos dígitos corresponden a los decimales.

totalAmountImporteSiMonto total. Incluye los recargos. Valor entero. Los 2 últimos dígitos corresponden a los decimales.

surchargeNuméricoSi

C.F.T. (Costo Financiero Total). Porcentaje de recargo sobre las cuotas. Valor entero. Los 2 últimos dígitos corresponden a los decimales.


nominalAnnualRateNuméricoSi

T.N.A. (Tasa Nominal Anual). Valor entero. Los 2 últimos dígitos corresponden a los decimales.


Ejemplo del campo paymentMethodsData (401)

...

El mensaje con la estructura de los beneficios estará en JSON. Estará conformado por los siguientes campos:

ParámetroTipo de datoRequeridoDescripción
benefitCardIdAlfanuméricoSi

Identificador de la opción de pago creada por el POS. Máximo 10 caracteres. Debe ser único dentro del campo "walletBenefits".

Permite trazabilidad con la tarjeta de beneficio aplicada en el pago por estar vinculada en la billetera virtual del cliente.

El ID del beneficio aplicado es retornado por VTOL en el mensaje de respuesta de la venta en el campo 405.

providerPosCodeAlfanuméricoSiCódigo de la tarjeta de beneficio configurada en VTOL. Por ejemplo para Clarin 365 el código es "CC".

discountPercentage

NuméricoSiPorcentaje de descuento a aplicar sobre la compra. Valor entero. Los 2 últimos dígitos corresponden a los decimales.

maximumDiscountAmount

NuméricoSiImporte máximo de descuento a aplicar sobre la compra. Valor entero. Los 2 últimos dígitos corresponden a los decimales.


Ejemplo del campo walletBenefits (402)

...

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

SaleWallet

RefundWallet

QueryWallet

Descripción

0companyNuméricoXXXIdentificador de la compañía donde se generó la transacción
1storeAlfanuméricoXXXIdentificador del sitio originador de la transacción
2nodeNuméricoXXXIdentificación del nodo, en el sitio originador, donde se generó la transacción.
6cardNumberAlfanuméricoX-OTarjeta enmascarada seleccionada por el cliente al momento de efectuar el pago QR.
12amountImporteX-X

Contiene el importe que pagó el cliente, el cual puede variar si pagó con intereses o se aplicó algún descuento. Valor entero. Los últimos 2 dígitos corresponden a los decimales.

13currencyPosCodeAlfanuméricoX-X

Tipos de moneda:

  • $ = Pesos
14paymentsNuméricoX-OCantidad de cuotas seleccionadas al momento de realizar el pago QR.
22authorizationCodeAlfanuméricoX-X

Código de autorización informado por el Autorizador

24trxIdNuméricoXXXIdentificador de la transacción.

25

dateTime

Numérico

XXX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción

26

responseCode

Alfanumérico

XXX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

XXX

Código de Respuesta emitido por el centro autorizador. 2 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server para Billeteras Electrónicas

28

responseMessage

Alfanumérico

XXX

Mensaje de la Respuesta relacionado con el código del campo 27

29

serialNumber

Numérico

OOO

Número identificatorio de la terminal en la que se procesó la transacción.

Retorna en operaciones aprobadas.

30

businessNumber

Numérico

OOO

Número de comercio en el que se procesó la transacción.

Retorna en operaciones aprobadas.

31lotNumberNuméricoOOONúmero de lote en el que se registró la transacción
32ticketNuméricoOOONúmero de Ticket correspondiente a la transacción. 4 dígitos como máximo.
81responseAuthAlfanuméricoOOOMensaje de repuesta para imprimir en el ticket del POS. Retorna en operaciones aprobadas. Contiene información generada por el Autorizador.
140paymentTypeNumérico--X

Tipo de pago. Valores posibles:

0: Tarjeta
1: Efectivo

142providerNameAlfanumérico--OProveedor de la tarjeta seleccionada al momento de efectuar el pago QR.
147providerPosCodeAlfanuméricoO-OCódigo del Provider. Retornará cuando la transacción fue aprobada por el Autorizador.
166trxReferenceNumberNuméricoXX-Identificador único de la transacción en VTOL Server. Longitud entre 19 y 20 dígitos, debido a que utiliza el día como parte de formato

271

walletPaymentId

Alfanumérico

X-XIdentificador del número de pago informado por el Autorizador
272amountRefundedImporte--XMonto devuelto en la transacción
273paymentStatusAlfanumérico--O

Estado de la transacción de pago informado por el Autorizador. Estados posibles:

0: Aprobado
1: Devuelto
2: Pendiente
3: Autorizado
4: En Progreso
6: Rechazado
7: Cancelado
8: Contracargo

275cardTypeNumérico--O

Tipo de tarjeta seleccionada al momento de efectuar el pago QR por parte del cliente.

Valores posibles:
0: Débito
1: Crédito

306cardIssuingBankAlfanuméricoO-OBanco emisor de la tarjeta. Retornará cuando la transacción fue aprobada por el Autorizador.
404paymentOptionIdAlfanuméricoX-O

Identificador de la opción de pago seleccionada por el cliente en su billetera virtual. Según la tarjeta, el banco, y las cuotas elegidas por el cliente, se vinculará con el paymentOptionId enviado por la caja en el requerimiento.

405benefitCardIdAlfanuméricoX-OIdentificador de la tarjeta de beneficio aplicada en el pago por estar vinculada en la billetera virtual del cliente.
406originalAmountImporteX-O

Monto original de la transacción: de venta o de devolución.


407amountDiscountedImporteX-O

Contiene el importe que se descontó sobre el importe original. Debido a la aplicación de una tarjeta de beneficio vinculada en la billetera virtual del cliente.

Sólo retorna cuando se aplicó un descuento.

1010currentSessionIdNuméricoXXXIdentificador de la sesión
1027libResponseCodeNuméricoXXX

Código de respuesta de la librería.
Indica cómo fue procesada la operación en EMVKIT:
Éxito = 000
Error <> 000
Ver sección Códigos de Respuesta de Librería

1028libResponseMessageAlfanuméricoXXXMensaje descriptivo del código de respuesta de la librería


Nota
titleTener en cuenta

Si la respuesta de un mensaje QueryWallet retorna con código 514 ("Tiempo expirado. Elija Consultar o Cancelar pago") el POS al aplicar la acción "Cancelar pago" sobre dicho mensaje, deberá enviar un mensaje de sincronización a EMVKit, sin incluir el id de transacción de la operación saleWallet. De esa manera EMVKit podrá sincronizar contra VTOL Server y este enviará una cancelación de la orden de compra contra la billetera virtual que se esté operando.

Ver mensaje de sincronización de transacciones

...

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

CardInfoService

Descripción

6cardNumberNuméricoONúmero de tarjeta. Sólo presente si el modo de ingreso fue Manual.
7expirationNuméricoOFormato YYMM Fecha de vencimiento de la tarjeta. Sólo presente si el modo de ingreso fue Manual.
8cvcNuméricoOCódigo de seguridad de la tarjeta. Sólo presente si el modo de ingreso fue Manual.
9track2AlfanuméricoOTrack2 de la tarjeta entero. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados
10posInputModeAlfanuméricoX

Forma en que se ingresó/leyó la tarjeta. Valores posibles:

  • Manual – Ingresada de forma manual por teclado
  • MSR – Leída por banda magnética
  • Chip – Leída por CHIP
  • MSR Chip – Fallback

11

trxType

Alfanumérico

X

Tipo de Transacción:

    • CardInfoService
25dateTimeNuméricoXFecha y hora de realización de la transacción, en formato: YYYYMMDDHHMMSS
66track1AlfanuméricoOTrack1 de la tarjeta entero (se envía todo el contenido del track1 en este campo)
71checkPendingStringAlfanuméricoO

Indica si VTOL debe o no efectuar el chequeo de pendientes:

  • true = activa chequeo de pendientes.
  • false = desactiva chequeo de pendientes.
164posEncryptedFieldsNuméricoO

Indica si se utiliza encripción entre Pinpad y VTOL (modo RSA). En este caso los datos sensibles se envían encriptados. Si está activo, los campos a enviar encriptados son: 6, 8, 9, 66
Valores posibles:

  • 1 = activado
  • 0 = desactivado (valor por defecto).


  • Respuesta

Número

Nombre del campo

Tipo de dato

CardInfoService

Descripción

6cardNumberNuméricoONúmero de tarjeta. Sólo presente si el modo de ingreso fue Manual.
8cvcNuméricoOCódigo de seguridad de la tarjeta. Sólo presente si el modo de ingreso fue Manual.
9track2AlfanuméricoOTrack2 de la tarjeta entero. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados
25dateTimeNuméricoXFecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción
26responseCodeAlfanuméricoX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24
27isoCodeNuméricoXCódigo de Respuesta ISO-8583
28responseMessageAlfanuméricoXDescripción de la Respuesta ISO-8583 relacionado con el código del campo 27
66track1AlfanuméricoXTrack1 de la tarjeta entero. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados
145exceptionBinNameAlfanuméricoONombre de la tarjeta de Excepción. Solo presente en Tarjeta de Excepción o Tarjetas de Empleados
146exceptionBinDataAlfanuméricoOInformación adicional de la tarjeta de excepción. Presente solo para Tarjeta de Excepción.

1027

libResponseCode

Numérico

X

Código de respuesta de la librería.
Indica cómo fue procesada la operación en EMVKIT:
Éxito = 000
Error <> 000
Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

X

Mensaje descriptivo del código de respuesta de la librería


Q. Consultar Tarjetas de Fidelidad

...

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

CardQuery

Descripción

0companyNuméricoX

Identificador de la compañía donde se generó la transacción.

1storeAlfanuméricoXIdentificador del sitio originador de la transacción
2nodeNuméricoXIdentificación del nodo, en el sitio originador, donde se generó la transacción
3serverAlfanuméricoXIdentificador del Server que procesará la transacción. (en el caso de VTOL será 'VTOL')
4messageTypeAlfanuméricoX

Tipo de Mensaje:

  • Control = Mensaje de Control, para uso interno por parte de un módulo en su comunicación con el server.
  • Data = Mensaje de la Aplicación cliente.

11

trxType

Alfanumérico

X

Tipo de Transacción:

  • CardQuery = Consulta de transacción de compra realizada con billetera electrónica

25

dateTime

Numérico

X

Fecha y hora de realización de la transacción en formato: YYYYMMDDHHMMSS
269walletTypeNuméricoX

Tipo de billetera por la cual se realizará la consulta. Opciones:

2: Adquiriente Prisma

408loyaltyCardNuméricoX

Tipo de tarjeta de fidelidad que se quiere consultar. Opciones:

1: Clarín 365

157customerDocNuméricoX

Número de documento del cliente que realiza la consulta.


Ejemplo de requerimiento

Request: {157:11111111;408:1;269:2;11:CardQuery;4:DATA;3:VTOL;2:1;25:20210503192959;71:True;1:1;0:1}


  • Respuesta
Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

CardQuery

Descripción

0companyNuméricoXIdentificador de la compañía donde se generó la transacción
1storeAlfanuméricoXIdentificador del sitio originador de la transacción
2nodeNuméricoXIdentificación del nodo, en el sitio originador, donde se generó la transacción.
6cardNumberAlfanuméricoXNúmero de Tarjeta del cliente. Si es una tarjeta de fidelidad, retornará en plano.
25dateTimeNuméricoXFecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción
26responseCodeAlfanuméricoX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
27isoCodeNuméricoXCódigo de Respuesta emitido por el centro autorizador. 3 dígitos como máximo. Ver sección: Códigos de Respuesta de VTOL Server para Consulta de Fidelidad
28responseMessageAlfanuméricoXMensaje de la Respuesta relacionado con el código del campo 27
292customerFirstNameAlfanuméricoXNombre del tarjetahabiente.
293customerLastNameAlfanuméricoXApellido del tarjetahabiente.
409loyaltyCardCategoryAlfanuméricoX

Categoría de la tarjeta de fidelidad. Puede retornar los siguientes valores:

  • Classic
  • Plus


Ejemplo de respuesta

Response: {25:20210503193023;2:1;1:1;0:1;6:44123456789010;292:Juan;293:Perez;409:CLASSIC;26:ISO8583;27:00;28:APROBADA}



R. Procesar Tarjeta Contactless doble interacción

...

Leer Datos de la Tarjeta


Requerimiento

Número

Nombre del campo

Tipo de dato

Sale

VoidSale

Refund

VoidRefund

SaleCashback

Descripción

10inputModeAlfanuméricoXXXXX

Forma en que se ingresará la tarjeta. Valores posibles:

  • Contactless
11trxTypeAlfanuméricoXXXXX

Tipo de Transacción:

  • Sale = Compra
  • VoidSale = Anulación de venta
  • Refund = Devolución
  • VoidRefund = Anulación de devolución
  • SaleCashBack = Compra con extracción de efectivo
12amountNuméricoXXXXXMonto original de la transacción (sin aplicar intereses, ni descuentos). 12 dígitos como máximo. Número entero. Los dos últimos dígitos representan los decimales. Ej: 1000 equivale a 10.00
17originalTrxTicketNrNumérico-OX--Este campo debe viajar si el tipo de transacción es Refund y es opcional cuando el tipo de transacción es VoidSale. Se trata del número de ticket de la transacción original. 4 dígitos como máximo
24lastTrxIdNuméricoOOOOOUtilizado cuando está activo el control transaccional. En este campo el POS debe enviar la última transacción procesada correctamente.(Si el POS tuvo algún problema con la transacción previa no debería enviar su trxId en este campo)
25dateTimeNuméricoXXXXXFecha y hora de realización de la transacción, en formato: YYYYMMDDHHMMSS
54additionalAmountAlfanuméricoO---XContiene el Importe del "Cash Back". En caso de realizar retiro de efectivo, se debe informar este campo en el primer Sale. Número entero. 12 dígitos como máximo. Los últimos dos representan los decimales.
1102providerAlfanuméricoOOOOO

Proveedor/tarjeta seleccionada por el POS.

Campo Opcional.

A futuro este campo permitirá rutear la transacción a un Adquiriente diferente del proveedor del pinpad, dependiendo de la configuración cargada en VTOL.

Este dato será validado contra la tarjeta leída por el pinpad. En caso de no coincidir el provider enviado por el POS con la tarjeta leída en el pinpad, se retornará un mensaje de error.


Nota

Los valores de Compañía, Tienda y Caja serán obtenidos de la Sesión.

...

Ejemplos de requerimiento:

Sale:

Request: {12:1500;11:Sale;10:Contactless;2:1;25:20210623112355;1:1;0:1}}

VoidSale:

Request: {12:1500;11:VoidSale;10:Contactless;2:1;25:20210623112607;1:1;0:1}

Refund:

Request: {17:35;16:20210623;12:1500;11:Refund;10:Contactless;2:1;25:20210623112452;1:1;0:1}

VoidRefund:

Request: {12:1500;11:VoidRefund;10:Contactless;2:1;25:20210623112531;1:1;0:1}


Respuesta

Número

Nombre del campo

Tipo de dato

Sale

VoidSale

Refund

VoidRefund

SaleCashback

Descripción

10inputModeAlfanuméricoXXXXX

Forma en que se ingresó/leyó la tarjeta. Valores posibles:

  • Contactless - Leída por Contactless

Si la tarjeta se lee por un modo de ingreso distinto de Contactless, se responderá el siguiente error: código 729 - "Reintente otro modo de ingreso". En caso de que la tarjeta deba ser leída por un modo diferente de Contactless, se deberá enviar un nuevo "Sale" pero sin enviar el campo 10 (inputMode). De esa manera se podrá operar con el resto de los modos de ingreso.

1010currentSessionIdNuméricoXXXXXIdentificador de la sesión actual
1027

libResponseCode

Numérico

XXXXX

Código de respuesta de la librería.

Indica cómo fue procesada la operación en EMVKIT:

Éxito = 000
Error <> 000

Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

XXXXX

Mensaje descriptivo del código de respuesta de la librería

1102providersListaXXXXXLista de proveedores/tarjetas que coinciden con la tarjeta ingresada en el PINPAD. Esta lista deberá ser utilizada para seleccionar la tarjeta manualmente en el POS.
1103

cardContextId

Numérico

XXXXX

Identifica el contexto de la tarjeta. Es un valor de referencia a la tarjeta leída a través del PINPAD. Debe ser enviado en la siguiente llamada “Procesar Operación con Tarjeta”

1104prefixesListListaXXXXXLista que informa el/los prefijo/s, proveedor/es, si se admite cashback, el límite del monto cashback, si se permite operar offline y el límite del monto para operar offline de la tarjeta ingresada en el pinpad. Tener en cuenta que los últimos dos dígitos de los campos límite del monto cashback y límite del monto para operar offline corresponden a decimales
1105

panFirstDigit

Numérico

XXXXX

Primero 6 dígitos de la tarjeta. Si la tarjeta está dentro de los bines de excepción se devuelve el número entero.

1106

panLastDigit

Numérico

XXXXX

Últimos 4 dígitos de la tarjeta. Si la tarjeta está dentro de los bines de excepción se devuelve el número entero.

1107

pan

Alfanumérico

XXXXX

Valor de la tarjeta enmascarado según normas PCI.

1108

isExceptionBin

Numérico

XXXXX

Flag que indica si se trata de un BIN de excepción (1) o si no lo es (0).

1109

ExceptionBinName

Alfanumérico

OOOOO

Si isExceptionBin = 1 entonces indica el nombre del bin de excepción.

1112

CardHolderName

Alfanumérico

OOOOOValor devuelto por el PINPAD. Nombre del titular de la tarjeta.
1113

cardIsDebit

Numérico

OOOOO

Si existe un único provider. Flag que indica si es una tarjeta de débito (1) o de crédito (0 o no viaja).

1114

bankCode

Numérico

OOOOO

Código de banco si es una tarjeta Master.

1115

serviceCode

Numérico

OOOOO

Código de servicio devuelto por el PINPAD, siempre que no sea ingreso manual.

1116recordNumberNuméricoOOOOONúmero de registro donde se almacena la transacción en el PINPAD.


Ejemplos de respuesta:

Sale:

Response message: {1027:000;1028:Ok;10:Contactless;1102:{MC};1103:20210623112412607;1104:[{"start"\:"51"\,"end"\:"56"\,"provider"\:"MC"\,"cashBackAllowed"\:1\,"cashBackAmountLimit"\:"null"\,"offLineAllowed"\:1\,"offlineAmountLimit"\:"999999900"}];1105:550568;1106:5290;1010:1624458231837;1107:550568******5290;1108:0;1113:0;1114:027;1115:   ;1116:000001}

VoidSale:

Response message: {1027:000;1028:Ok;10:Contactless;1102:{MC};1103:20210623112622755;1104:[{"start"\:"51"\,"end"\:"56"\,"provider"\:"MC"\,"cashBackAllowed"\:1\,"cashBackAmountLimit"\:"null"\,"offLineAllowed"\:1\,"offlineAmountLimit"\:"999999900"}];1105:550568;1106:5290;1010:1624458362500;1107:550568******5290;1108:0;1113:0;1114:027;1115:   ;1116:000001}

Refund:

Response message: {1027:000;1028:Ok;10:Contactless;1102:{MC};1103:20210623112513585;1104:[{"start"\:"51"\,"end"\:"56"\,"provider"\:"MC"\,"cashBackAllowed"\:1\,"cashBackAmountLimit"\:"null"\,"offLineAllowed"\:1\,"offlineAmountLimit"\:"999999900"}];1105:550568;1106:5290;1010:1624458290353;1107:550568******5290;1108:0;1113:0;1114:027;1115:   ;1116:000001}

VoidRefund:

Response message: {1027:000;1028:Ok;10:Contactless;1102:{MC};1103:20210623112550840;1104:[{"start"\:"51"\,"end"\:"56"\,"provider"\:"MC"\,"cashBackAllowed"\:1\,"cashBackAmountLimit"\:"null"\,"offLineAllowed"\:1\,"offlineAmountLimit"\:"999999900"}];1105:550568;1106:5290;1010:1624458329282;1107:550568******5290;1108:0;1113:0;1114:027;1115:   ;1116:000001}



Procesar Operación con Tarjeta


Requerimiento

Número

Nombre del campo

Tipo de dato

Sale

VoidSale

Refund

VoidRefund

SaleCashback

Descripción

11

trxType

Alfanumérico

XXXXX

Tipo de Transacción:

  • Sale = Compra
  • VoidSale = Anulación de venta
  • Refund = Devolución
  • VoidRefund = Anulación de devolución
  • SaleCashBack = Compra con extracción de efectivo
12

amount

Importe

XXXXX

Monto de la transacción, con intereses o descuentos aplicado. 12 dígitos como máximo. Se envía sin coma. Los dos últimos dígitos representan los decimales. Ej: 1000 equivale a 10.00

13

currencyPosCode

Alfanumérico

XXXXX

Tipos de Moneda:

  • $ = Pesos
  • U$S = Dólares
14

payments

Numérico

XXXXX

Cantidad de cuotas. 2 dígitos como máximo. Si no tiene cuotas, el valor por defecto es 1.

15

plan

Alfanumérico

XXXXX

Plan. 1 caracter de longitud

16

originalDate

Fecha

--X--

Este campo debe viajar si el tipo de transacción es Refund. Se trata de la fecha de la transacción original en el formato YYYYMMDD

17

originalTrxTicketNr

Numérico

-OX--

Este campo debe viajar si el tipo de transacción es Refund y es opcional cuando el tipo de transacción es VoidSale. Se trata del número de ticket de la transacción original. 4 dígitos como máximo.

25

dateTime

Numérico

XXXXX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS

54

additionalAmount

Alfanumérico

O---X

Contiene el Importe del "Cash Back". En caso de realizar retiro de efectivo, se debe informar el mismo valor que se informó en el primer Sale . Debe contener 12 dígitos como máximo.

73

interestAmount

Alfanumérico

OOOOO

Este campo es por si se necesita enviar el monto de los intereses en el mensaje a Autorizar. Normalmente el monto que llega del POS ya contiene los intereses en el caso de pagar en cuotas. Existe algún caso de alguna tarjeta especial donde el monto hay que enviarlo libre de intereses y justamente el monto de los intereses viaja en este campo.

1102providerAlfanuméricoXXXXXProveedor/tarjeta seleccionada manualmente de la lista devuelta por la librería en la operación Leer Datos de la Tarjeta. Por Ejemplo: Si la operación Leer Datos de Tarjeta retorna la lista {VIEL}, en la operación Procesar Operación con Tarjeta se debe enviar el valor seleccionado entre las dos opciones VI o EL.
1103

cardContextId

Numérico

XXXXX

Identifica el contexto de la tarjeta. Es un valor de referencia a la tarjeta leída a través del PINPAD. Es el valor devuelto por la última operación "Leer Datos Tarjeta"


Nota

Los valores de Compañía, Tienda y Caja serán obtenidos de la Sesión.

...

Ejemplos de requerimiento:

Sale:

Request: {1103:20210623112412607;1102:MC;201:[trxNumber\|valor\,zetaNumber\|valor\,accountingDate\|valor];15:0;14:1;13:$;12:10000;11:Sale;2:1;25:20210623112419;1:1;0:1}

VoidSale:

Request: {1103:20210623112622755;1102:MC;201:[trxNumber\|valor\,zetaNumber\|valor\,accountingDate\|valor];15:0;14:1;13:$;12:10000;11:VoidSale;2:1;25:20210623112625;1:1;0:1}

Refund:

Request: {1103:20210623112513585;1102:MC;201:[trxNumber\|valor\,zetaNumber\|valor\,accountingDate\|valor];17:35;16:20210623;15:0;14:1;13:$;12:10000;11:Refund;2:1;25:20210623112516;1:1;0:1}

VoidRefund:

Request: {1103:20210623112550840;1102:MC;201:[trxNumber\|valor\,zetaNumber\|valor\,accountingDate\|valor];15:0;14:1;13:$;12:10000;11:VoidRefund;2:1;25:20210623112553;1:1;0:1}


Respuesta

Número

Nombre del campo

Tipo de dato

Sale

VoidSale

Refund

VoidRefund

SaleCashback

Descripción

10

inputMode

Alfanumérico

XXXXX

Forma en que se ingresó/leyó la tarjeta. Valores posibles:

  • Contactless

22

authorizationCode

Alfanumérico

OOOOO

Código de autorización generado por el centro autorizador para la transacción cuando la transacción fue aprobada.

23

authorizationMode

Alfanumérico

XXXXX

Modo de Autorización:

  • Online = La autorización fue realizada por el Centro Autorizador
  • Offhost = La autorización fue realizada internamente por VTOL
  • Offline  = La autorización fue realizada localmente por el POS

24

lastTrxId

Numérico

XXXXX

Id de transacción en VTOL Server. La misma queda en estado pendiente y debe ser confirmada o cancelada cuando se cierra la sesión con EMVKIT

25

dateTime

Numérico

XXXXX

Fecha y hora de realización de la transacción en formato YYYYMMDDHHMMSS. El valor en este campo debe ser el mismo que el valor de la fecha y hora del requerimiento. El POS utiliza este dato para validar que se trate de la misma transacción.

26

responseCode

Alfanumérico

XXXXX

Puede contener uno de los siguientes valores:

  • Iso8583 = la autorización fue procesada. Para evaluar si fue aprobada chequear el campo 27
  • Error = ver sección Códigos de error del CORE
  • TrxIsPending: indica si existen transacciones pendientes de confirmar. En este caso, el ID de transacción a confirmar está en el campo 24

27

isoCode

Numérico

XXXXX

Código de Respuesta ISO-8583 emitido por el centro autorizador. 2 dígitos como máximo. Ver sección Códigos de Respuesta de VTOL Server

28

responseMessage

Alfanumérico

XXXXX

Mensaje de la Respuesta ISO-8583 relacionado con el código del campo 27

29

serialNumber

Numérico

XXXXX

Número que identifica la terminal lógica en la que se procesó la transacción.

30

businessNumber

Numérico

XXXXX

Número de comercio en el que se procesó la transacción

31

lotNumber

Numérico

XXXXX

Número de lote en el que se registró la transacción

32

ticket

Numérico

OOOOO

Número de Ticket correspondiente a la transacción. 4 dígitos como máximo

33

creditCardIssuerName

Alfanumérico

OOOOO

Nombre del Centro emisor de la tarjeta

34

hostName

Alfanumérico

OOOOO

Nombre del canal por el cual se autorizó la tarjeta

35

errorDescription

Alfanumérico

OOOOO

Descripción de error. Sólo se encuentra presente si el valor del campo 26 es “Error”

42

lotDefinitionId

Numérico

XXXXX

Identificador de la definición de lote

57

accountType

Alfanumérico

OOOOO

Campo que se emplea para identificar el tipo de cuenta. Se usa para tarjetas de débito. Los valores posibles son:

  • 1 = Caja de ahorros en pesos
  • 2 = Cuenta corriente en pesos
  • 3 = Caja de ahorros en dólares
  • 4 = Cuenta corriente en dólares

58

workingKey

Alfanumérico

OOOOO

VTOL devuelve este campo tal como lo entrega el Centro Autorizador. Representa la llave que el PINPAD deberá usar para generar el PINBLOCK en la próxima transacción

68

rrn

Numérico

OOOOO

Número de referencia de recuperación

75

accountNumber

Numérico

OOOOO

Número de cuenta. Este campo es devuelto si el campo 74- requestAccountNumber fue activado en el requerimiento

81

responseAuth

Alfanumérico

OOOOO

Mensaje de repuesta para ser mostrado en el display del POS donde se indican promociones.

También es utilizado en la operación de Cash Back, cuando el autorizador responde con código de respuesta 98. En este campo se informará el importe máximo que puede solicitarse

82

softwareVersion

Alfanumérico

OOOOO

Versión de la aplicación

166

trxReferenceNumber

Numérico

XXXXX

Identificador único de la transacción en VTOL Server. Longitud entre 19 y 20 dígitos, debido a que utiliza el día como parte de formato.

1010

currentSessionId

Numérico

XXXXX

Identificador de la sesión actual

1027

libResponseCode

Numérico

XXXXX

Código de respuesta de la librería.

Indica cómo fue procesada la operación en EMVKIT:

Éxito =   000

Error <> 000

Ver sección Códigos de Respuesta de Librería

1028

libResponseMessage

Alfanumérico

XXXXX

Mensaje descriptivo del código de respuesta de la librería

1110

pinpadApplicationId

Alfanumérico

XXXXX

Identificador de la Aplicación del PINPAD.

1111

pinpadApplicationName

Alfanumérico

XXXXX

Nombre de la Aplicación del PINPAD.

1112

cardHolderName

Alfanumérico

OOOOO

Nombre del titular de la tarjeta si el track I está presente y la lectura fue por banda.

280clientCopyVoucher AlfanuméricoXXXXX

Campo para imprimir copia al cliente. Valores posibles:

False: imprimir copia al cliente sin consultarlo.
True: consultar al cliente si quiere copia del voucher.

281requiresSignature AlfanuméricoXXXXX

Campo para solicitar firma al cliente. Valores posibles:

False: no requerido
True: requerido


Ejemplos de respuesta:

Sale:

Response message: {0:1;1:1;2:1;1027:000;1028:Ok;68:000073;6:550568******5290;10:Contactless;1103:20210623112412607;82:STS;1107:550568******5290;22:549772;1110:A0000000041010;23:onLine;1111:MasterCard;280:true;24:232;281:false;25:20210623112419;26:ISO8583;27:00;28:APROBADA;29:06000307;30:00000013;31:1;32:35;33:Master Card;34:Posnet;166:23062111242100000287;42:3;110:false;1010:1624458231837;59:0}

VoidSale:

Response message: {0:1;1:1;2:1;1027:000;1028:Ok;68:000076;10:Contactless;1103:20210623112622755;82:STS;1107:550568******5290;22:580976;1110:A0000000041010;23:onLine;1111:MasterCard;280:true;24:235;281:false;25:20210623112625;26:ISO8583;27:00;28:APROBADA;29:06000307;30:00000013;31:1;32:38;33:Master Card;34:Posnet;166:23062111262600000290;42:3;110:false;1010:1624458362500;59:0}

Refund:

Response message: {0:1;1:1;2:1;1027:000;1028:Ok;68:000074;10:Contactless;1103:20210623112513585;82:STS;1107:550568******5290;22:586011;1110:A0000000041010;23:onLine;1111:MasterCard;280:true;24:233;281:false;25:20210623112516;26:ISO8583;27:00;28:APROBADA;29:06000307;30:00000013;31:1;32:36;33:Master Card;34:Posnet;166:23062111252100000288;42:3;110:false;1010:1624458290353;59:0}

VoidRefund:

Response message: {0:1;1:1;2:1;1027:000;1028:Ok;68:000075;10:Contactless;1103:20210623112550840;82:STS;1107:550568******5290;22:514191;1110:A0000000041010;23:onLine;1111:MasterCard;280:true;24:234;281:false;25:20210623112553;26:ISO8583;27:00;28:APROBADA;29:06000307;30:00000013;31:1;32:37;33:Master Card;34:Posnet;166:23062111255400000289;42:3;110:false;1010:1624458329282;59:0}


Diagrama de secuencia - Pinpad de FirstData

...

CódigoDescripción
00APROBADA
500No se encuentra la transaccion original
501El campo WalletPosTrxId es requerido
502El campo WalletType es requerido
503No esta configurado una Compañia MP
504No esta configurado una Caja MP
505El tipo de billetera es invalido
506El campo WalletPaymentId es requerido
507El campo OriginalDate es requerido
508No es posible devolver una devolucion
509Estado trx original no acepta devolucion
510Importe devolucion supero monto limite
511No se pudo realizar la orden de pago
512La transaccion no posee estado
513El campo posTicket es requerido
514Tiempo expirado. Elija Consultar o Cancelar pago
515Tiempo expirado confirmacion devolucion
516Pago aun no realizado, desea seguir esperando?
517Estado trx original no acepta devolucion
518No se encuentra la devolucion
519Acceso a MP no esta autorizado
520Accion a MP no esta autorizada
521El campo WalletPosTrxId es invalido
523Estado trx original no acepta devolucion
524Importe invalido para devolucion
525Estado trx original no acepta devolucion
526Compañia MP no permite operar
527Numero devoluciones parciales superados
528El pago es antiguo para ser devuelto
529No es posible devolver una devolucion
530Compañia MP sin dinero para devolver
531Compañia MP sin dinero disponible
532Estado trx original no acepta devolucion
533Devolucion parcial no soportada
534Url de notificacion invalido
535El monto de la transaccion es invalido
536Error general por parte de MP
537No se encuentra la transaccion original
538El campo WalletPosTrxId es requerido
539Transaccion devuelta
540Pendiente
541Autorizado
542En Progreso
543En mediacion
544Transaccion ya devuelta
545Cancelado
546Contracargo
547No se encontró la trx original
548Error en comunicación
549No existe comunicación con Mercado Pago
550Error al consultar venta original online 
552Orden no generada por Prisma
553Pago Rechazado por parte de Prisma
554Esta operación requiere autorización
555Esta operación requiere autorización
556Pago rechazado, reintente con otro medio de pago
557Pago rechazado, reintente con otro medio de pago
558Pago rechazado, reintente con otro medio de pago
559Pago rechazado, reintente con otro medio de pago
560Pago rechazado, reintente con otro medio de pago
561No fue posible procesar su pago, intente más tarde
562No fue posible procesar su pago, intente más tarde
563No fue posible procesar su pago, intente más tarde
564No fue posible procesar su pago, intente más tarde
565No fue posible procesar su pago, intente más tarde
566La cantidad de cuotas seleccionada es inválida
567La cantidad de cuotas seleccionada es inválida
568Tarjeta de crédito vencida
569Tarjeta de crédito no habilitada
570Fondos insuficientes, reintente otro medio de pago
571Fondos insuficientes, reintente otro medio de pago
572Datos incorrectos, revíselos y reintente
573Datos incorrectos, revíselos y reintente
574No fue posible procesar su pago, intente más tarde
575No fue posible procesar su pago, intente más tarde
576Tarjeta no vigente, reintente otro medio de pago
577Esta operación requiere autorización
578No fue posible procesar su pago, intente más tarde
579No fue posible procesar su pago, intente más tarde
580La cantidad de cuotas seleccionada es inválida
581Datos incorrectos, revíselos y reintente
582Datos incorrectos, revíselos y reintente
583Las cuotas informadas son incorrectas
584Devolucion parcial no soportada
585

Transacción con CashBack no permitido

586El comercio informado es inválido
587El establecimiento informado es inválido
588El establecimiento no pertenece al comercio
589El punto de venta informado es inválido
590El punto de venta no pertenece al establecimiento
591El tipo de documento es inválido
592Se debe informar el ID de la operación
593Se debe informar un timeStamp
594Se debe informar el traceNumberla operación
593Se debe informar un timeStamp
594Se debe informar el traceNumber
595Intención de pago vencida
596Entrega Excede Supera Limite
598Las cuotas del pago ya fueron informadas
602Devolución rechazada
603Devolución no aprobada
604Devolución pendiente de aprobación
650Importe de devolución de cashout invalido
651Importe de cashout invalido
652Medio de pago inválido
654Devolución registrada confirme administrativamente
733

La transacción no corresponde a una operación de Billeteras Electrónicas

734

No es posible cancelar la transacción informada


6.2.2.1 Códigos de respuesta de VTOL Server para Billetera Rappi Payless

Las cuotas del pago ya fueron informadasDevolución 603

Código

Descripción

00APROBADA
57TRANSACCION NO PERMITIDA
500Sucursal no configurada Billetera RappiPayless
503Compañia no configurada Billetera RappiPayless
509Estado trx original no acepta devolucion
510Importe devolucion supero monto limite
533Devolucion parcial no soportada
537Se excedio el tiempo limite para devolver
539Devuelto
544Transaccion ya devuelta
545Cancelado
549No existe comunicación con RappiPayless
553Pago rechazado por diferencias en la orden
585Transacción con CashBack no permitido
586Imposible identificar el comercio. Verifique datos
595Intención de pago vencida en Billetera
596Entrega Excede Supera Limite
598599Error de validacion
601No se pudo realizar la operación, reintente
602Devolucion rechazada
605Devolución no aprobada
604Devolución pendiente de aprobación
650Importe de devolución de cashout invalido
651Importe de cashout invalido
652Medio de pago inválido
654Devolución registrada confirme administrativamente
733

La transacción no corresponde a una operación de Billeteras Electrónicas

734

No es posible cancelar la transacción informada

La transaccion no se puede anular
606Identificador de transaccion incorrecto
607No se pudo realizar la devolucion
611Código de barras invalido
619No se pudo realizar la cancelación
620Reintente pago por modo offline con código PIN


6.2.3 Códigos de Respuesta de VTOL Server para Antifraude

A continuación se detallan las respuestas posibles de VTOL Server, cuando se opera con Antifraude:

Código

Descripción de respuesta al POS

Descripción del módulo antifraude

801Tarjeta no autorizadaFraude por validación de BlackList
802Tarjeta no autorizadaPosible Fraude por BlackList
803Operación no autorizadaFraude por Velocity Check
804Operación no autorizadaPosible fraude por Velocity Check
805Operación no autorizadaError en validación concurrente, posible fraude por Velocity Check
806Operación no autorizadaError en validación Velocity Check
807Operación no autorizadaError general en validación de Antifraude
810Operación no autorizadaFaltan campos requeridos en el requerimiento


Âncora
codRespFidelidad
codRespFidelidad
6.2.4 Códigos de Respuesta de VTOL para Consulta de tarjetas de Fidelidad

A continuación se detallan las respuestas posibles de VTOL Server, cuando se realizan consultas de tarjetas de fidelidad:

Código

Descripción

Observaciones

770Cliente no encontrado en servicio de fidelidadEl servicio de fidelidad respondió que el cliente no fue encontrado en su base de datos.
771El cliente no está activo en servicio de fidelidadEl servicio de fidelidad respondió que el cliente no tiene ninguna tarjeta activa.
772Error en el servicio de fidelidadCuando el servicio de fidelidad no está disponible o se vence el timeout.
773Error de configuración en VTOL.

VTOL valida que se encuentre configurada la API Key del Comercio para consultar con Bimo, en las propiedades de configuración.

Si no están configurados en VTOL Server, o si Bimo responde un error 400, VTOL retorna este mensaje al POS.

774Es requerido el documento del clienteEl POS no envió el número de DNI del cliente.
775Es requerido el tipo de tarjeta de fidelidadEl POS no envió el tipo de tarjeta de fidelidad del cliente.
776El documento no es validoEl número de DNI enviado no tiene el formato correcto.
777Tipo de tarjeta de fidelidad no válido.El tipo de tarjeta de fidelidad enviado no está soportado.
778Consulta no disponible para esta billeteraEl tipo de consulta no es soportado por el tipo de billetera enviado por el POS en el campo WalletType.



Âncora
_Códigos_de_Errores
_Códigos_de_Errores
Âncora
_Toc508730840
_Toc508730840
6.3 Códigos de Error del CORE de VTOL Server

...

Pos.

Descripción

Longitud

Tipo de dato

Detalle

1

HD

2

AN

Identificador de tipo de registro

2

Local

6

AN

Código local.

3

Incremental

6

N

Nº de incremental.

4

CRC

8

N 


5

Fecha / Hora

16

AN

Fecha/Hora. yyyy/mm/dd

...

Pos

Descripción

Longitud

Tipo de dato

Detalle

1

PF

2

AN

Identificador de tipo de registro

2

Hasta

20

AN

Rango Desde.

3

Desde

20

AN

Rango Hasta.

4

Largo prefijo

2

N

Largo del prefijo.

5

Largo tarjeta

2

N

Largo de la tarjeta.

6

ID Tarjeta

2

AN

ID proveedor VTOL

7

Condición

10

AN 


8

Largo CVC

2

N

Largo código seguridad.

9

Validar digito

1

N

Valida el digito verificador.

10

Envía Track I

1

N

0/vacío deshabilitado / 1 habilitado / 2 Opcional.

11

Validar vencimiento

1

N

Valida fecha vencimiento.

12

Offline permitido

1

N

Permite operar offline.

13

Offline monto

14

N

Límite para operación Offline.

14

Habilitado

1

N

Prefijo habilitado.

15

Valida fecha efectiva

1

N

Valida fecha emisión o fecha desde.

16

Valida CVC

1

N

0/vacío deshabilitado / 1 habilitado / 2 Opcional.

17

Service code

5

AN

Se suele utilizar en VTOL para diferenciar Visa débito (2) de Visa crédito (0 ó vació)

18

Ingreso manual permitido

1

N 


19

Chequea boletines

1

N

Valida contra boletines protectivos.

20

Es debito

1

N

Es prefijo de tarjeta de tipo débito.
(0/vacío ó 1)

21

Requiere pin.

1

N

0 deshabilitado / 1 habilitado / 2 Opcional.

22

Valida últimos N números.

2

N

Cantidad de últimos números a validar de la tarjeta. 0 no valida nada.

23

Pide tipo de cuenta.

1

N

Requiere envío tipo de cuenta.
(0 ó 1)

24

Solicita número de cuenta

1

N

Solicita al autorizador el número de cuenta.
(0 ó 1)

25

Cashback

1

N

Habilita la operatoria de Cashback

26

Puntos de Lealtad

1

N

Habilita la acumulación y/o redención de puntos de lealtad.

27

Tarjeta que Encripta punto a punto POS - CA.

1

N

Indica si la tarjeta encripta.
(0 ó 1)

28

Posición de la Master Key

1

N

Indica la posición de la Master Key en los registros del Firmware. Valores posibles:
0: Mastercard y Maestro
1: Visa 1
99: Indica que el Pinpad no tiene registro para la MK. Es el caso de tarjeta Amex.

29

Código de banco

10

AN

Código del banco

30

Permite Fallback

1

N

Visa 1; Mastercard y Maestro 0

31CashBack Amount Limit10NLímite de importe Cashback
32Descripción del banco40ANDescripción del banco (Opcional)

...

Pos.

Descripción

Longitud

Tipo de dato

Detalle

1

PP

2

AN

Identificador de tipo de registro

2

ID Tarjeta

2

AN

ID proveedor VTOL

3

Símbolo moneda

10

AN 


4

Condición de pago

20

AN

Información adicional del plan de pago.

5

Plan

4

N

 Código del plan de pago.

6

Cuotas

4

N 


7

Numero de comercio

30

AN 


8

ID Lote

6

N 


9

Limite a superar.

13

N

Monto a superar para poder utilizar el plan de pagos.
En formato 0000000000.00
0 indica sin límite

10

Limite intereses

13

N

Si el monto es superior a éste valor, entonces el interés es = 0
En formato 0000000000.00
0 indica sin límite

11

Interés

5

AN

Tasa de interés (%) para el plan de pago. En formato 00.00
0 indica sin interés

12

Promocional

1

N

Activa con 1 o Desactiva con 0 Si aplica o no una promoción para el plan de pago.

13Descripción20ANDescripción del Plan de pago.
14Tipo de operación1N

Indica cuál es el tipo de operación asociado al plan de pagos. Opciones posibles:

  • 0 = Crédito-Débito
  • 1 = Wallet

...

Ejemplo:
PP:AM;$;;0;1;98765432;1016075;0000000000.00;0000000000.00;12.30;1;Normal;1
PP:VI;$;;0;10;98765432;1016085;0000000100.00;0000000000.00;15.00;0;Normal;1

...

Pos.

Descripción

Longitud

Tipo de dato

Detalle

1

DL

2

AN

Identificador de tipo de registro

2

ID Lote

6

N

Identificador interno de Lote en VTOL

3

Caja o Nodo

10

N 


4

Número de serie terminal

200

AN

 20

AN


5

PIN Master Key position

1

N

Posición de la master key PIN

6

Data Master Key position

1

N

Posición de la master key Data

7

Channel Id

1

N

ID del Canal


Ejemplo:
DL:5;0000000001;99990080;0;0;24
DL:5;0000000002;99990081;1;0;1
DL:5;0000000003;99990082;0;0;24
DL:5;0000000004;99990083;1;0;1
DL:5;0000000005;99990084;0;0;24
DL:5;0000000006;99990085;0;0;24
DL:5;0000000007;99990086;0;0;24


Tabla Bines de Excepción

Pos.

Descripción

Longitud

Tipo de dato

Detalle

1

BE

2

AN

Identificador de tipo de registro

2

Desde

9

N

Rango Desde

3

Hasta

9

N

Rango Hasta

4

Nombre tarjeta

25

AN

Nombre de tarjeta de Excepción

5

Información Adicional

500

AN

Informacion adicional de la tarjeta de excepción

...

Ref

Dato

Canal VISACanal POSNETCanal AMEX

Campo EMV Kit

Nota
1

Tipo de transacción u operación

Opciones VISA:

  • Compra
  • Compra + Extracción
  • Anulación de compra
  • Anulación de compra + Extracción
  • Devolución
  • Anulación de devolución

Opciones Posnet y AMEX:

  • Compra
  • Compra + Retiro
  • Anulación de compra
  • Anulación de compra + Retiro
  • Devolución
  • Anulación de devolución
XXX11 - trxType
2Número de comercio o establecimiento asignado por el EmisorXXX30 - businessNumber
3Número de TerminalXXX29 - serialNumber
4Número de LoteXXX31 - lotNumber
5Número de cupón correspondiente a la transacciónXXX32 - ticket
6

Últimos 4 números de la tarjeta

XXX1106 - panLastDigit

Cuando VISA autoriza, se debe enmascarar toda la tarjeta con X exceptuando los últimos 4 dígitos.

Cuando Posnet autoriza, se deberá imprimir el número de tarjeta enmascarando con el carácter “*” o “#” los primeros doce dígitos de la misma, a solicitud de cada emisor.

Nota: Tener en cuenta que la longitud de la tarjeta puede variar

7

Modo de ingreso del número de tarjeta

Opciones VISA:

  • (M): Manual
  • (B): Banda
  • (C): Chip
  • (F): Fallback (EMV Kit devuelve MSR Chip, pero deberá imprimirse (F) o Fallback)

Opciones Posnet:

  • (*): Manual
  • Blanco: Banda
XXX10 - inputModeCuando el ingreso es manual (Mastercard), se debe dejar en el voucher un espacio de embozado para marcar el relieve de la tarjeta
8Fecha de vencimiento de la tarjetaXXX7 - expiration, pero la fecha de vencimiento de la tarjeta debe ser siempre XX/XXLa fecha de vencimiento de la tarjeta siempre va enmascarada
9Número de cuentaOOO75 - accountNumber

Se debe imprimir el número de cuenta en caso de que la tarjeta lo devuelva

En Posnet, cuando se reciba al menos un asterisco (“*”) se deberá imprimir el Número de Tarjeta en forma completa y se deberá imprimir el campo Número de Cuenta tal como se lo recibió

10Tarjeta o proveedor con que se efectuó la operaciónXXX33 - creditCardIssuerName
11Importe y moneda de la operaciónXXX12 - amount y 13 - currencyPosCode
12Cantidad de cuotasXXX14 - payments
13

Identificador de la aplicación (AID)

O-O1110 - pinpadApplicationIdSe debe imprimir este valor en caso de que el ingreso de la tarjeta sea Chip y cuando el valor sea devuelto
14

Nombre de la aplicación (APN)

O-O1111 - pinpadApplicationNameSe debe imprimir este valor en caso de que el ingreso de la tarjeta sea Chip y cuando el valor sea devuelto
15Modo de autorizaciónXXX23 - authorizationModeCuando la transacción es offline, se debe dejar en el voucher un espacio de embozado para marcar el relieve de la tarjeta
16Código de autorización otorgado por el EmisorXXX22 - authorizationCode
17Número de cupón originalOOO17 - originalTrxTicketNrSólo en las transacciones de Anulaciones de compra y Devoluciones
18Fecha del cupón originalOOO16 - originalDateSólo en las transacciones de Devoluciones
19Importe y moneda de la extracción en efectivoOO-

54 - additionalAmount


20Importe y moneda total de la operación (suma entre la compra/anulación y la extracción)OO-N/ASólo en operación compra + extracción y anulación de compra + extracción
21

Tipo de cuenta de tarjetas de débito Maestro

Opciones:

  • Caja de ahorros en pesos
  • Cuenta corriente en pesos
  • Caja de ahorros en dólares
  • Cuenta corriente en dólares
OO-57 - accountType

Exclusivo para tarjetas Maestro.

Mastercard Debit no solicita el ingreso de este dato ni se imprime en el voucher

22Tipo de planOO-15 - planSólo para emisores que lo requieran
23Nombre del tarjeta habienteOOO

1112 - cardHolderName

Nombre del titular de la tarjeta si el track I está presente y la lectura fue por banda
24Versión del software o aplicaciónXXX

82 - softwareVersion


25Resultado descriptivo de la operaciónOOO27 - isoCode
26Leyenda "Operación a confirmar"O--N/ACuando es una devolución realizada por VISA, siempre se debe imprimir esta leyenda en el voucher
27Mensaje adicionalO--

81 - responseAuth

Es opcional y se puede agregar para informarle alguna información adicional al cliente
28

Tipo de tarjeta

XXX1113 - cardIsDebitTarjeta de débito o tarjeta de crédito
-Verificación de pin offline--O59 - offlinePinCheckSi el dato se encuentra, se imprime en el voucher
-Tipo de criptograma y valor--O1138 - emvDataSólo será retornado en operaciones CHIP con tarjetas Amex
-

Número de referencia de recuperación (RRN)

--O68 - rrn

...



Nota
  1. Ubicación de los datos
    La ubicación de los datos en el voucher no poseen alguna obligatoriedad, pero se recomienda seguir una estructura lógica como ser que los datos del cliente a completar se encuentren al final del voucher o que la fecha y hora se encuentren en la cabecera del voucher

  2. Original y Copia
    Los mencionados en esta documentación son los vouchers "Original Comercio", los vouchers "Copia Cliente" deberán ser similares pero contener esta nota al pie del voucher y omitir los datos a completar (Firma, Aclaración y Tipo y N° Doc)

  3. Vouchers de rechazo
    Cuando la operación resulte rechazada, el POS deberá imprimir un voucher similar a los mencionados pero informando solamente la terminal, el número de comercio y el motivo del rechazo obtenido del campo 28 - responseMessage

...

A continuación se detallan los ID de los bancos dispuestos por el BCRA.

ID de BancoDescripción
7BANCO DE GALICIA Y BUENOS AIRES S.A.U.
11BANCO DE LA NACION ARGENTINA
14BANCO DE LA PROVINCIA DE BUENOS AIRES
15INDUSTRIAL AND COMMERCIAL BANK OF CHINA
16CITIBANK N.A.
17BANCO BBVA ARGENTINA S.A.
20BANCO DE LA PROVINCIA DE CORDOBA S.A.
27BANCO SUPERVIELLE S.A.
29BANCO DE LA CIUDAD DE BUENOS AIRES
34BANCO PATAGONIA S.A.
44BANCO HIPOTECARIO S.A.
45BANCO DE SAN JUAN S.A.
65BANCO MUNICIPAL DE ROSARIO
72BANCO SANTANDER RIO S.A.
83BANCO DEL CHUBUT S.A.
86BANCO DE SANTA CRUZ S.A.
93BANCO DE LA PAMPA SOCIEDAD DE ECONOMÍA M
94BANCO DE CORRIENTES S.A.
97BANCO PROVINCIA DEL NEUQUÉN SOCIEDAD ANÓ
143BRUBANK S.A.U.
147BANCO INTERFINANZAS S.A.
150HSBC BANK ARGENTINA S.A.
165JPMORGAN CHASE BANK, NATIONAL ASSOCIATIO
191BANCO CREDICOOP COOPERATIVO LIMITADO
198BANCO DE VALORES S.A.
247BANCO ROELA S.A.
254BANCO MARIVA S.A.
259BANCO ITAU ARGENTINA S.A.
262BANK OF AMERICA, NATIONAL ASSOCIATION
266BNP PARIBAS
268BANCO PROVINCIA DE TIERRA DEL FUEGO
269BANCO DE LA REPUBLICA ORIENTAL DEL URUGU
277BANCO SAENZ S.A.
281BANCO MERIDIAN S.A.
285BANCO MACRO S.A.
299BANCO COMAFI SOCIEDAD ANONIMA
300BANCO DE INVERSION Y COMERCIO EXTERIOR S
301BANCO PIANO S.A.
305BANCO JULIO SOCIEDAD ANONIMA
309BANCO RIOJA SOCIEDAD ANONIMA UNIPERSONAL
310BANCO DEL SOL S.A.
311NUEVO BANCO DEL CHACO S. A.
312BANCO VOII S.A.
315BANCO DE FORMOSA S.A.
319BANCO CMF S.A.
321BANCO DE SANTIAGO DEL ESTERO S.A.
322BANCO INDUSTRIAL S.A.
330NUEVO BANCO DE SANTA FE SOCIEDAD ANONIMA
331BANCO CETELEM ARGENTINA S.A.
332BANCO DE SERVICIOS FINANCIEROS S.A.
336BANCO BRADESCO ARGENTINA S.A.U.
338BANCO DE SERVICIOS Y TRANSACCIONES S.A.
339RCI BANQUE S.A.
340BACS BANCO DE CREDITO Y SECURITIZACION S
341BANCO MASVENTAS S.A.
384WILOBANK S.A.
386NUEVO BANCO DE ENTRE RÍOS S.A.
389BANCO COLUMBIA S.A.
426BANCO BICA S.A.
431BANCO COINAG S.A.
432BANCO DE COMERCIO S.A.
435BANCO SUCREDITO REGIONAL S.A.U.


7. Compatibilidad con VTOL Server

...