Versões comparadas

Chave

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

...

Fecha

Revisión

Cambios

02/11/2009

1.0

Generación del documento

04/11/2009

1.1

Indicación de campos obligatorios

26/04/2010

1.2

Actualización de gráfico manejo de PINPAD

22/03/2011

1.3

Incorporación mensajes MembershipQuery y VoidMembershipQuery para consulta membresía Club Personal y Club La Nación

03/06/2011

1.4

Agregado de definición de mensaje de cierre de lote

30/05/2012

1.5

Agrego Tabla de Respuestas al POS y mejoro explicación de Tercer Mensaje y Chequeo de Pendientes.

08/03/2013

1.6

Agrego nuevos campos relacionados con operador y vendedor en operaciones de pre-autorización, venta, devolución y anulación.
Nuevo mensaje para consulta de configuración 'PosConfQuery'.

21/08/2013

1.7

Agregado de apartado de error del core.

09/09/2013

1.8

Agrego campos EMV en operaciones de Venta, Devolución y anulación. Incorporo mensaje RejectedEMVAdvice y flujo de datos EMV.

15/11/2013

1.9

Agregado de 'Formato Interface POS'

23/12/2013

2.0

Agregado de detalle de los mensajes ServicePayment y VoidServicePayment

13/02/2014

2.1

Agregado del campo bandera '164 – posEncryptedFields', que indica cuando los datos sensibles viajan encriptados.

29/05/2014

2.2

Aclaración sobre el uso de pre-autorizaciones.

22/08/2014

2.3

Agregado de campo pinpadAutoCode en Tercer Mensaje y RejectedEMVAdvice.

29/08/2014

2.4

Actualización del Formato Interface POS, agregando el campo 'Tarjeta que Encripta' a los prefijos.

11/09/2014

2.5

Incorporación de Bines de Excepción y nuevo mensaje CardInfoService.

09/12/2014

2.6

Agregado de mensaje de Anulación de Pre Autorización.

26/02/2015

2.7

Agregado de nuevos campos ServiceCode y ProviderPosCode.

27/02/2015

2.8

Agregado de nuevos mensajes propios a la funcionalidad Cash Back.

07/08/2015

2.9

Agregado de aclaraciones en el uso de la mensajería

09/09/2015

3.0

Incorporación de campo PinpadApplicationVersion en los mensajes Sale, VoidSale, Refund y VoidRefund

30/10/2015

3.1

El campo ProviderPosCode para a ser el número 147. Incorporación de campo trxReferenceNumber en las respuestas de VTOL. Corrección de formato esperado en campo 7 - Expiration. El formato correcto es: YYMM.

11/02/2016

3.2

Incorporación del campo 201 additionalMessageData en el requerimiento y respuesta y la posibilidad de incluir el número de Ticket original en una anulación (Campo 17 originalTrxTicketNr)

29/07/2016

3.3

Incorporación del apartado 1.9. Mecanismo en Tiendas Virtuales y del 1.3.13. Chequeo de Listado de Pendientes

19/04/2017

3.4

Actualización de la tabla Prefijo en el apartado Formato Interface POS

03/05/2017

3.5

Incorporación del apartado 1.3.10 Echo

05/05/2017

3.6

Incorporación del apartado 1.3.9 SynQuery y de la sección 1.7 Formato Datos Sincronización

06/06/2017

3.7

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

3.8

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

04/09/20183.9Incorporación de la funcionalidad PEI en la mensajería

14/12/2018 

4.0Incorporación del apartado Antifraude e incorporación de la funcionalidad Antifraude en la mensajería
08/02/20194.1Incorporación del apartado Tokenización e incorporación de la funcionalidad Tokenización en la mensajería
03/04/20194.2Agregado del campo 0 (Compañía) en la mensajería de todos los tipos de transacciones.
28/08/20194.3Incorporación de la funcionalidad Billeteras electrónicas en la mensajería.
01/04/20204.4Incorporación de mensajería para operaciones eCommerce.
22/06/20204.5Incorporación de mensajería para operaciones de Cuenta DNI.
30/07/20204.6Incorporación de funcionalidad de Billeteras Mercado Pago con retiro de efectivo.
28/08/20204.7Incorporación de consideraciones en el Formato de Interface POS en la tabla Plan de Pagos, para tiendas presenciales.
22/09/20204.8Se actualiza el campo 54 (additionalAmount) como tipo de dato Importe, en la mensajería de Billeteras electrónicas.
21/10/20204.9Incorporación de funcionalidad PEI No Presencial
26/11/20204.10Agregado del campo Descripción en Formato de Interface POS para indicar la descripción sobre un plan de pago.
11/12/20204.11Incorporación de funcionalidad de QR Adquiriente.
16/12/20204.12Incorporación del campo afApplicationCondition para validar la aplicación de reglas antifraudes por el módulo AF de VTOL.
05/03/20214.13Se actualiza el nombre y la descripción del campo 406 en la respuesta de la mensajería de QR Adquiriente.
05/05/20214.14Incorporación de mensajería para Consultar tarjetas de Fidelidad
11/05/20214.15Se quitan las referencias de la billetera Todo Pago, ya que dicha Billetera está incluida dentro de QR Adquiriente Prisma.
19/05/20214.16Incorporación de mensajería para Billetera Yacaré. Se incluye dentro del apartado "1.4.18 Billeteras electrónicas"
23/09/20214.17En QR Adquiriente, las billeteras Bimo, Modo y Todo Pago, se diferencian por id en el campo WalletType. Incorporación disponible a partir de la versión 3.8.0.12b de VTOL Server.
01/10/20214.18Incorporación de mensajería para Billetera Plus Pagos. Se incluye dentro del apartado "1.4.18 Billeteras electrónicas"
10/11/20214.19Incorporación de mensajería para Billetera Rappi Payless. Se incluye dentro del apartado "1.4.18 Billeteras electrónicas".
03/03/20224.20Incorporación de mensajería para funcionalidad QR Adquiriente Fiserv. Se incluye dentro del apartado "1.4.26 QR Adquiriente Fiserv".
04/03/20224.21

Incorporación de mensajería para funcionalidad PayStore. Se incluye dentro del apartado "1.4.27 Operaciones PayStore".

16/03/20224.22Agregado del campo Marca de tarjeta en el "Formato Interface POS", dentro de la tabla "Provider".


Índice


Índice



Âncora
_Toc485222713
_Toc485222713
1. Campos de los mensajes

...

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.

...

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. 

...

Bloco de código
languagexml
themeEclipse
<message>
<item-add seq="1<message totDiscount="100.00" totTaxes="50.00">
<item-add seq="1" code="0001" discountable="true" unitprice="25100.0" qty="13.0" xprice="300.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="2848.0" qty="21.0" xprice="48.0" level1="MEN" level2="CASUAL" supplier="" brand="LEVIS" xprice="48.0" magnitude="1" description="Jean casual" currency="$" />
</message>

...

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

1

store

Alfanumérico

XXX

Identificador del sitio originador de la transacción

2

node

Numérico

XXX

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

6cardNumberAlfanuméricoXXONúmero de tarjeta enmascarado con la cual se realizó el pago. Ejemplo: 450799xxxxxx0010

25

dateTime

Numérico

XXX

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

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ódigo de errores 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 ISO-8583 emitido por el centro autorizador. 2 dígitos como máximo

28

responseMessage

Alfanumérico

XXX

Mensaje de la Respuesta ISO-8583

33

creditCardIssuerName

Alfanumérico

XXX

Nombre del emisor de la tarjeta

35

errorDescription

Alfanumérico

XXX

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

166

trxReferenceNumber

Numérico

XXX

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.

153idOperationPEIAlfanuméricoXXXIdentificador de la operación PEI de pago o de devolución
154idOperationOrigenPEIAlfanumérico-XOIdentificador de la operación PEI de origen con la cual se solicitó la devolución.
170idCommercePEIAlfanuméricoXXXIdentificador PEI de compañía
171idBranchPEIAlfanuméricoXXXIdentificador PEI de local
174originalTrxStatusAlfanumé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éricoX-XNumero de referencia de la transacción de pago. Se utiliza para conciliar con los reportes de las entidades bancarias. Número generado por LINK.



1.4.24 Operaciones QR Adquiriente Prisma

VTOL se integra con QR Adquiriente de Prisma para permitir efectuar pagos en los puntos de venta con billeteras electrónicas.

...

  1. Se inicia con el envío de una orden de venta (transacción SaleWallet) por parte del POS a VTOL. En el requerimiento, el POS incluirá las opciones de pago que tiene disponibles la caja, para que luego el cliente seleccione la opción de pago más conveniente en su billetera.
  2. VTOL recibe la orden de venta del POS, y envía la información a Prisma con todos los datos de la venta.
  3. En ese momento el comprador podrá realizar, con su billetera virtual, la lectura del código QR disponible en la caja.
  4. Prisma, con la información recibida por VTOL, le comunicará a la billetera virtual el Importe, y las opciones de pago (tarjetas, cuotas, intereses).
  5. El comprador visualizará el detalle de la compra, con las opciones de pago enviadas por la caja, y efectuará el pago seleccionando la tarjeta enrolada, las cuotas y confirmando el pago.
  6. El POS recibirá la respuesta de la transacción SaleWallet a través de VTOL, quien informará si la operación resultó autorizada por Prisma.
    1. Puede darse el caso que VTOL responda "Consulte el pago por tiempo expirado". Este escenario puede surgir cuando el cliente demora en confirmar el pago desde su app mobile, y expira el tiempo designado por defecto en VTOL, entonces al POS se envía una respuesta automática por timeout. Para conocer el resultado de la operación, el POS deberá realizar una consulta (transacción QueryWallet). Las respuestas del QueryWallet pueden ser las siguientes:
      1. VTOL responde "Aprobado". Indica que el pago fue autorizado por Prisma. El paso siguiente del POS es confirmar o cancelar la transacción, con un tercer mensaje.
      2. VTOL responde "Rechazado". Indica que el cliente intentó pagar pero Prisma rechazó el pago.
  7. Por último, el POS deberá confirmar la operación, mediante el cierre de sesión (en estado Closeun Tercer Mensaje (Commit o Rollback).

La anulación o / devolución, sí precisa de interacción por parte del comprador en la caja, en su billetera digital debe confirmar la operación. El POS envía el identificador del número de pago del Autorizador en el mensaje RefundWallet.

...

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 from VTOL:

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

...

...

  1. Campo 27: Código de Respuesta
  2. Campo 28: Descripción de la Respuesta

...



...

Código

...

Descripción

1.4.26 Operaciones QR Adquiriente Fiserv

VTOL se integra con QR Adquiriente de Fiserv para permitir efectuar pagos en los puntos de venta con billeteras electrónicas. El código QR es dinámico, es decir que se genera uno nuevo por cada transacción.

Las operaciones soportadas son:

  • SaleWallet = Permite realizar una compra presencial con billetera electrónica.
  • RefundWallet = NO se permite realizar una devolución con Adquiriente Fiserv. No está contemplado en Fiserv.
  • QueryWallet = Permite realizar una consulta de una operación de compra con billetera para conocer si la misma fue autorizada y así obtener los datos por parte del Autorizador.


Nota
titleNota

Las operatorias de billeteras electrónicas poseen tercer mensaje; por lo que en el cierre de sesión se efectuará el envío del requerimiento del tercer mensaje.


Procedimiento para QR Adquiriente Fiserv

El proceso de pagos para QR Adquiriente Fiserv con billetera virtual se realizará de la siguiente manera:

  1. Se inicia con el envío de una orden de venta (transacción SaleWallet) por parte del POS a VTOL Server. En el requerimiento, el POS podrá incluir las opciones de pago mediante las cuales se realizará la operación.
  2. VTOL recibe la orden de venta del POS, y envía la información a Fiserv con todos los datos de la venta.
  3. Fiserv responde a VTOL que la orden de venta fue creada, y envía el QR para imprimir en el Punto de Venta.
  4. VTOL envía hacia el POS el QR enviado por Fiserv. El POS muestra el QR. 
  5. VTOL responde al POS: "QR generado. Consulte operación"
  6. En ese momento el comprador podrá realizar con su billetera virtual la lectura del código QR. Luego de escanear el QR, el comprador visualizará el detalle de la compra, seleccionando tarjeta, cuotas y confirmando el pago.
  7. Fiserv envía a VTOL el Bin de la tarjeta (prefijo y últimos 4 dígitos) del cliente para que VTOL obtenga el Proveedor de la tarejta. Además envía la opción de pago seleccionada por el cliente, informando cuotas y monto final de la operación.
  8. VTOL valida que la opción de pago esté configurada en su sistema. Si las cuotas y el monto final de la operación son correctos, se envían los datos a Fiserv para ser autorizados.
  9. Fiserv cursa el pago con el Autorizador.
  10. El POS deberá consultar el estado del pago, enviando un mensaje de QueryWallet.
    1. Las respuestas del QueryWallet pueden ser las siguientes:
      1. VTOL responde "Aprobado". Indica que el pago fue autorizado por Fiserv. El paso siguiente del POS es confirmar o cancelar la transacción.
      2. VTOL responde "Rechazado". Indica que el cliente intentó pagar pero Fiserv rechazó el pago.
  11. Por último, el POS debe confirmar la operación, mediante un Tercer Mensaje (Commit o Rollback).


Aviso
titleManejo de cuotas

En caso de ser un pago con tarjeta (Crédito o Débito), el POS podrá enviar en el mensaje SaleWallet el campo paymentMethodsData (401), con las posibles opciones de pago que servirán para validar lo elegido por el cliente en su billetera digital. En el campo paymentMethodsData puede existir un installments marcado con la propiedad "defaultPosWalletInstallment = true", que determina el método de pago por defecto que será enviado a Fiserv QR en el mensaje de pago.

El proceso de validación de VTOL al recibir el mensaje desde Fiserv informando la opción de pago seleccionada por el cliente, es el siguiente:

  1. Fiserv informa a VTOL la tarjeta y las cuotas seleccionadas por el cliente. Y también informa el monto de la operación. Puede darse el caso que el monto sea diferente al informado originalmente por el POS, debido a que el cliente seleccionó cuotas con interés o por la aplicación de algún descuento.
  2. VTOL valida si la opción de pago existe dentro de la lista de paymentMethodsData - 401 (guardada desde la llegada del SaleWallet).
  3. Si la opción de pago no existe, se cancela la operación.
  4. Si la opción de pago existe, se obtiene de paymentMethodData el monto asociado a la cuota.
  5. Si el monto informado por Fiserv es el mismo que el informado en el campo paymentMethodsData, se envía a Autorizar la transacción a Fiserv.
  6. Si el monto informado por Fiserv no es el mismo que el informado en el campo paymentMethodsData, se cancela la operación.


1.4.26.1 Requerimiento

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

SaleWallet

QueryWallet

Descripción

0companyNuméricoXXIdentificador de la compañía donde se generó la transacción.
1storeAlfanuméricoXXIdentificador del sitio originador de la transacción
2nodeNuméricoXXIdentificación del nodo, en el sitio originador, donde se generó la transacción
3serverAlfanuméricoXXIdentificador del Server que procesará la transacción. (en el caso de VTOL será 'VTOL')
4messageTypeAlfanuméricoX

X

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.
11trxTypeAlfanuméricoXX

Tipo de Transacción:

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

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".

13currencyPosCodeAlfanuméricoX-

Tipos de moneda:

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

lastTrxId

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

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éricoXX

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

7: QR Adquiriente Fiserv

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

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.

401paymentMethodsDataJsonO-

Información de los planes de pago, en formato json.

Requerido únicamente cuando el pago se realiza con Tarjeta de crédito o débito.

Si el POS no informa este campo, solamente se podrá pagar con Dinero en cuenta.

410QRCodeAlfanuméricoO-

El POS enviará si desea recibir el código QR para imprimirlo en la caja. Valores posibles:

True: indica que se recibirá el código QR y se inyectará en el pinpad.

False: indica que se recibirá el código QR pero no se inyectará en el pinpad.

No se envía el campo: indica que no se recibirá el código QR


Estructura del campo posTicket (270)

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.

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. 

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>


Aviso
titleImportante

Esta estructura generada debe transformarse al formato Base 64 para informárselo a VTOL en el campo 270 posTicket.


Estructura del campo paymentMethodsData (401)

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.


defaultPosWalletInstallmentBooleanNoMarca que indica dentro de la colección el método de pago seleccionado por defecto para que VTOL lo informe al Autorizador.


Ejemplo del campo paymentMethodsData (401)

Bloco de código
[
   {
      "providerPosCode":"VIG",
      "bankCode":"7",
      "installments":[
         {
            "paymentOptionId":"1",
            "quantity":"1",
            "amountPerInstallment":150000,
            "totalAmount":150000,
            "surcharge":0,
            "nominalAnnualRate":0,
            "defaultPosWalletInstallement":true
         },
         {
            "paymentOptionId":"2",
            "quantity":"6",
            "amountPerInstallment":25000,
            "totalAmount":150000,
            "surcharge":1100,
            "nominalAnnualRate":1500
         }
      ]
   },
   {
      "providerPosCode":"VI",
      "installments":[
         {
            "paymentOptionId":"3",
            "quantity":"12",
            "amountPerInstallment":15000,
            "totalAmount":180000,
            "surcharge":1256,
            "nominalAnnualRate":1487
         }
      ]
   },
   {
      "providerPosCode":"MC",
      "installments":[
         {
            "paymentOptionId":"4",
            "quantity":"1",
            "amountPerInstallment":150000,
            "totalAmount":150000,
            "surcharge":0,
            "nominalAnnualRate":0
         },
         {
            "paymentOptionId":"5",
            "quantity":"12",
            "amountPerInstallment":15000,
            "totalAmount":180000,
            "surcharge":1256,
            "nominalAnnualRate":1487
         }
      ]
   }
]


1.4.26.2 Respuesta

Informações
titleReferencias

X = Obligatorio
O = Opcional
- = No requerido


Número

Nombre del campo

Tipo de dato

SaleWallet

QueryWallet

Descripción

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

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éricoXX

Tipos de moneda:

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

Código de autorización informado por el Autorizador

24trxIdNuméricoXXIdentificador de la transacción.

25

dateTime

Numérico

XX

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

XX

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

XX

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

XX

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

140paymentTypeNumérico-X

Tipo de pago. Valores posibles:

0: Tarjeta
1: Efectivo
2: Transferencia

166trxReferenceNumberNuméricoX-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
271walletPaymentIdAlfanumérico-XIdentificador del número de pago informado por el Autorizador
273paymentStatusAlfanumérico-X

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

0: Aprobado
2: Pendiente
6: Rechazado
7: Cancelado
9: Reversado

275cardTypeNumérico-O

Tipo de tarjeta seleccionada al momento de efectuar el pago QR. Valores posibles:

0: Débito
1: Crédito

410QRCodeAlfanuméricoOOSe envía la cadena de texto (string del QR dinámico) que retorna desde Fiserv. Este string se utiliza para imprimir el QR en el POS.
1010currentSessionIdNuméricoXXIdentificador de la sesión
1027libResponseCodeNuméricoXX

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éricoXXMensaje descriptivo del código de respuesta de la librería



1.4.27 Operaciones PayStore

VTOL se integra con PayStore de Prisma para permitir efectuar pagos en los puntos de venta, utilizando tarjetas presentes de crédito o débito, y billeteras electrónicas.

Las operaciones soportadas son:

  • SaleWallet = Permite realizar una compra presencial a través de PayStore.
  • RefundWallet = Permite realizar una devolución (total) de una compra presencial a través de PayStore. No se permiten devoluciones parciales.
  • QueryWallet = Permite realizar una consulta de una operación de compra con PayStore para conocer si la misma fue autorizada y así obtener los datos por parte del Autorizador.


Procedimiento para PayStore

El proceso de pagos con PayStore se realizará de la siguiente manera:

  1. Se inicia con el envío de una orden de venta (transacción SaleWallet) por parte del POS a VTOL. En el requerimiento, el POS puede incluir o no la cantidad de cuotas del pago.
  2. VTOL recibe la orden de venta del POS, y envía la información a PayStore con todos los datos de la venta.
  3. En ese momento el cajero podrá capturar los datos del pago en la terminal pinpad, el cual puede ser con tarjeta física de crédito y débito, o bien con billetera virtual, realizando la lectura del código QR que se muestra en el pinpad.
  4. El POS recibirá la respuesta de la transacción SaleWallet con el mensaje: "Consulte el pago". 
  5. Para conocer el resultado de la operación, el POS deberá realizar una consulta (transacción QueryWallet). Las respuestas del QueryWallet pueden ser las siguientes:
      1. VTOL responde "Aprobado". Indica que el pago fue autorizado por PayStore. El paso siguiente del POS es confirmar o cancelar la transacción. Se imprime el comprobante en la terminal pinpad.
      2. VTOL responde "Rechazado". Indica que el cliente intentó pagar pero PayStore rechazó el pago.
  6. Por último, el POS deberá confirmar la operación, mediante el Tercer Mensaje, enviando Commit.

La anulación o devolución, sí precisa de interacción por parte del comprador en la caja, en la terminal pinpad se debe capturar los mismos datos de la tarjeta o billetera virtual que se utilizó para el pago. El POS envía el identificador del número de pago del Autorizador en el mensaje RefundWallet.


1.4.27.1 Requerimiento

Informações
titleReferencias

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


Número

Nombre del campo

Tipo de dato

SaleWallet

RefundWallet

QueryWallet

Descripción

0companyNuméricoX

X

XIdentificador 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
3serverAlfanuméricoXXXIdentificador del Server que procesará la transacción. (en el caso de VTOL será 'VTOL')
4messageTypeAlfanuméricoXXX

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

XX

Tipo de Transacción:

  • SaleWallet = Compra con billetera electrónica

12

amount

Importe

X

X-

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, el importe debe ser siempre por el total de la venta y en la misma moneda informada.

13

currencyPosCode

Alfanumérico

X

X-

Tipos de moneda:

  • $ = Pesos
14paymentsNuméricoO--

Cantidad de cuotas. 2 dígitos como máximo. Valor entero.

Si no se informa este campo, se toma por defecto el valor 1.

16originalDateNumérico-XXFecha de realización de la compra con billetera electrónica en formato YYYYMMDD
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

XXFecha 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 o una devolución.

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.

269walletTypeNuméricoXXX

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

9: PayStore

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.

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 por un monto de $amount.

413printCopiesVoucherNuméricoOO-

Indica las copias del comprobante de pago debe imprimir el terminal. Valores posibles:

1. Solo copia comercio
2. Solo copia cliente
3. Ambas copias

Si no se envía este campo, no se imprime ninguna copia

414paymentOperationMethodNuméricoO--

Indica el medio de pago que se podrá utilizar para la operación. Valores posibles:

1. Tarjeta (pago con tarjeta física débito o crédito)
2. Código QR (pago con billeteras virtuales)

Si no se envía este campo, se toma por defecto el valor 1.


Estructura del campo posTicket

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.

Los campos dentro del encabezado serán: 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. 

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. Puede ser el sku o ean.

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.

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


Ejemplo

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


Ejemplo de requerimiento:

SaleWallet:
{269:9;268:0000000001000000000120223603013649;25:20220303133649;71:True;14:1;13:$;12:8100;11:SaleWallet;4:DATA;270:PG1lc3NhZ2UgjYXN1YWwiIGN1cnJlbmN5PSIkIiAvPgo8L21lc3NhZ2U+Cg}

RefundWallet:
{271:03013659-d8ec-4e06-974c-e967f83e782e;16:20220303;269:9;268:0000000001000000000120223803013836;13:$;12:8100;11:RefundWallet;4:DATA;3:VTOL;2:1;25:20220303133836;71:True;1:1;0:1}

QueryWallet:
{0:1;1:1;2:1;3:VTOL;4:DATA;11:QueryWallet;16:20220303;25:20220303133921;71:False;268:0000000001000000000120223803013836;269:9}



1.4.27.2 Respuesta

Informações
titleReferencias

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


Número

Nombre del campo

Tipo de dato

SaleWallet

RefundWallet

QueryWallet

Descripción

0companyNuméricoXXX

Identificador 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.
12amountImporteX-XMonto de la transacción. Valor entero. Los últimos 2 dígitos corresponden a los decimales.
13currencyPosCodeAlfanuméricoX-X

Tipos de moneda:

  • $ = Pesos
24trxIdNuméricoXXXIdentificador de 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
26responseCodeAlfanuméricoXXX

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éricoXXXCó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
28responseMessageAlfanuméricoXXXMensaje de la Respuesta relacionado con el código del campo 27
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
271walletPaymentIdAlfanuméricoX-XIdentificador del número de pago informado por el Autorizador
273paymentStatusAlfanuméricoX-X

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

274paymentStatusDetailAlfanuméricoX-XDetalle del estado de la transacción de pago informado por el Autorizador


Ejemplo de respuesta:

SaleWallet:
{25:20220303133649;2:1;1:1;0:1;12:8100;275:0;13:$;27:514;273:0;140:0;14:0;26:ISO8583;28:Tiempo expirado. Elija Consultar o Cancelar;24:13;166:3032213365800000020;271:03013659-d8ec-4e06-974c-e967f83e782e}

RefundWallet:
{2:1;1:1;0:1;24:14;25:20220303133836;26:ISO8583;27:514;28:Tiempo expirado. Elija Consultar o Cancelar;166:3032213385800000021}

QueryWallet:
{0:1;1:1;2:1;12:8100;13:$;24:14;25:20220303133921;26:ISO8583;27:00;28:APROBADA;166:3032213385800000021;271:03013858-d8ec-4e06-974c-e967f83e782e;273:0;274:CONFIRMED}



Âncora
_Toc485222740
_Toc485222740
1.5 Códigos de Respuesta al POS


La respuesta que el POS recibe de VTOL se encuentra en los siguientes campos:

  1. Campo 27: Código de Respuesta
  2. Campo 28: Descripción de la Respuesta


A continuación se detallan las respuestas posibles con una breve descripción de cada una:


Código

Descripción

'00'

Aprobada

'01'

Pedir autorización telefónica

'02'

Pedir autorización

'03'

Comercio inválido

'04'

Capturar tarjeta

'05'

Denegada

'07'

Retenga y llame

'11'

Aprobada

'12'

Transacción inválida

'13'

Monto inválido

'14'

Tarjeta inválida

'25'

No existe original

'30'

Error en formato

'38'

Excede ingreso de PIN

'43'

Retener tarjeta

'45'

No opera en cuotas

'46'

Tarjeta no vigente

'47'

PIN requerido

'48'

Excede máximo de cuotas

'49'

Error fecha de vencimiento

'50'

Entrega supera límite

'51'

Fondos insuficientes

'53'

Cuenta inexistente

'54'

Tarjeta vencida

'55'

PIN incorrecto

'56'

Tarjeta no habilitada

'57'

Transacción no permitida

'58'

Servicio inválido

'61'

Excede límite

'65'

Excede límite de tarjeta

'76'

Llamar al emisor

'77'

Error plan/cuotas

'85'

Aprobada

'86'

No envía fecha original

'89'

Terminal inválida

'91'

Emisor fuera de línea

'94'

Número de secuencia duplicado

'95'

Re-transmitiendo

'96'

Error en sistema

'98'

No aprobada

'99' 

Error no clasificado

Modo de ingreso inválido

Proveedor inválido

Error CVC

Error creando mensaje

Tipo de mensaje inválido

No envía código de autorización

Error en fecha efectiva

Error en fecha vencimiento

Tarjeta no efectiva

No opera off-line

Devolución monto mayor

Original ya anulada

Original ya devuelta

Original reversada

Moneda inválida

No envía fecha

Campo 71 inválido

Campo 71 nulo

CVC inválido

Tarjeta inválida

Track2 inválido

No envía moneda

No envía CVC

Timeout

Fecha original inválida

No envía ticket original

Ticket original inválido

No envía código de autorización de venta referida

Reintente

Chiptokens Invalido

Pinpad R. Cod. Error

Pinpad A. Cod. Error

...

A continuación se detallan las respuestas posibles de VTOL Server, cuando se opera con Billeteras Electrónicas, con una breve descripción de cada una:

CódigoDescripción00APROBADA57TRANSACCION NO PERMITIDA
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
522Cancelado
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
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 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 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

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

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


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

CódigoDescripció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
599Error de validacion
601No se pudo realizar la operación, reintente
602Devolucion rechazada
605La 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



Âncora
codrespnopresencial
codrespnopresencial
1.5.5 Códigos de Respuesta de VTOL Server para operaciones no presenciales

...


A continuación se detalla la información que viaja en el campo ConfData y que se corresponde con la interface generada para el POS.

La versión de Formato de interface utilizada por Crédito Debito Argentina es la v109 v110


Header

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

PV

2

AN

Identificador de tipo de registro

2

ID Tarjeta

2

AN

ID proveedor VTOL

3

Nombre

40

AN

Nombre proveedor

4

Medio de Pago

20

AN

Código proveedor en POS.

Campo de relación entre POS y VTOL (Opcional)

5

Código de banco

10

AN

Código del banco (Opcional

6Descripción del banco40ANDescripción del banco (Opcional)
7Marca de Tarjeta10AN

Código de la Marca de la tarjeta (Opcional).

Si la tarjeta no tiene marca, no se informa el campo.


Ejemplo
PV:VI;Visa;;
PV:MA;Mastercard;00;DEFAULT;VI
PV:AMVIG;AmexVisa;;7;BANCO DE GALICIA Y BUENOS AIRES S.A.U.;VI
PV:MA;Maestro;;00;DEFAULT;MC
PV:MC;Master Card;;00;DEFAULT;MC
PV:AM;Amex;;00;DEFAULT;AM
PV:DI;Diners;;00;DEFAULT



Tabla Prefijos

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

...