Glosario de modelos de datos
Esta página sirve como referencia para las data classes y enumeraciones principales utilizadas en redsys-tpv-business-lib. Comprender estos modelos es esencial para interpretar los resultados de las transacciones y configurar el TPV.
Data Classes Principales
Transaction
El objeto Transaction es el modelo central que representa una operación financiera. Se devuelve en los estados Aceptado (Accepted) o Denegado (Denied) de pagos, devoluciones y consultas de historial.
| Propiedad | Tipo | Descripción |
|---|---|---|
type | OperationType | El tipo de operación realizada (por ejemplo, PAYMENT, REFUND). |
result | OperationResult | El resultado final de la operación (por ejemplo, AUTHORIZED, DENIED). |
amount | Money? | El importe de la transacción. |
tip | Money? | El importe de la propina, si procede. |
cardInfo | CardInfo | Detalles sobre la tarjeta utilizada en la transacción. |
operationInfo | OperationInfo | Identificadores específicos y datos de autorización del host. |
commerceInfo | CommerceInfo | Información sobre el comercio (merchant) y el terminal. |
dccInfo | DccInfo? | Detalles de Dynamic Currency Conversion (DCC) (solo presente si se aplicó DCC). |
digitalSignature | Bitmap? | La firma capturada en pantalla (opcional). |
thirdDataInfo | ThirdDataInfo? | Datos opcionales para integraciones de terceros (por ejemplo, números de factura). |
qrInfo | QrInfo? | Información si la transacción se realizó mediante código QR. |
financialInfo | FinancialInfo? | Datos de pagos aplazados (Plazox). |
prnReceipt | PrnReceiptInfo? | Ajustes de configuración relacionados con la impresión del recibo. |
prnIssuer | String? | Información adicional relacionada con la entidad de la tarjeta. |
Money
Representa un valor monetario.
| Propiedad | Tipo | Descripción |
|---|---|---|
amount | BigDecimal | El valor numérico. |
currency | Currency | La instancia Java Currency (por ejemplo, Currency.getInstance("EUR")). |
CardInfo
Encapsula los datos relativos a la tarjeta de pago.
| Propiedad | Tipo | Descripción |
|---|---|---|
card | String? | Número de tarjeta enmascarado (por ejemplo, ************1234). |
cardBrand | CardBrand? | La marca de la tarjeta detectada (por ejemplo, VISA). |
cardBrandLabel | String? | La etiqueta completa (label) de la marca de la tarjeta. |
aid | String? | El Identificador de Aplicación EMV (Application Identifier). |
OperationInfo
Contiene los detalles técnicos de la ejecución de la transacción.
| Propiedad | Tipo | Descripción |
|---|---|---|
identifier | String | El identificador interno único para la operación. |
number | String? | El número de operación secuencial (Número de ticket). |
date | Date? | La fecha y hora en que ocurrió la operación. |
authorizationNumber | String? | El código de autorización del banco. |
reference | String? | La referencia de la transacción. |
failedReasonInfo | FailedReasonInfo? | Contiene el código de error y la descripción si la operación falló. |
tvr | String? | Resultado de Verificación del Terminal (Terminal Verification Result - etiqueta EMV). |
atc | String? | Contador de Transacciones de la Aplicación (Application Transaction Counter). |
resp | String? | Código de respuesta (ISO 8583). |
CommerceInfo
Identifica la configuración del comercio utilizada para la transacción.
| Propiedad | Tipo | Descripción |
|---|---|---|
fucCode | String? | El ID del Comercio (FUC). |
terminal | String? | El Número de Terminal. |
TpvInfo
El resultado de la llamada initTpv, que contiene la configuración del dispositivo y del comercio.
| Propiedad | Tipo | Descripción |
|---|---|---|
config | TpvConfig | Flags de configuración y detalles del comercio. |
deviceInfo | TpvDeviceInfo | Información específica del hardware. |
virtualTerminalList | List<TpvVirtualTerminal>? | Lista de terminales virtuales disponibles (modo multiterminal). |
TpvConfig
Detalla los flags de configuración específicos para el terminal.
| Propiedad | Tipo | Descripción |
|---|---|---|
merchantName | String | El nombre comercial del comercio. |
fuc | String | El ID del Comercio (Merchant ID). |
terminal | String | El ID del Terminal. |
currency | Int | Código numérico de la divisa (por ejemplo, 978). |
showPreauthorizations | Boolean | true si las Preautorizaciones están habilitadas. |
noOriginal | Boolean | true si la “Devolución sin Original” (Refund without Original) está habilitada. |
DccInfo
Detalles relativos a Dynamic Currency Conversion (DCC) (si procede).
| Propiedad | Tipo | Descripción |
|---|---|---|
currencyChangeAmount | String? | Importe en la divisa extranjera. |
currencyCode | String | Código de la divisa extranjera (por ejemplo, “USD”). |
markup | Float? | El porcentaje de margen (markup) aplicado. |
exchangeRate | String | La cadena de la tasa de cambio aplicada. |
Enumeraciones
OperationType
Define la clasificación de una transacción.
PAYMENTREFUNDPREAUTHPREAUTH_CONFIRMPREAUTH_REPLACEPREAUTH_CANCELUNKNOWN
OperationResult
Define el estado final de una transacción.
AUTHORIZEDDENIEDANNULPREAUTH_NO_CONFIRMUNKNOWN
CardBrand
Marcas de tarjetas y métodos de pago compatibles.
VISAMASTERCARDAMERICAN_EXPRESSJCBDINERS(Nota: a veces se mapea a través de otras marcas)BIZUMALIPAYWECHATGOOGLE_PAYAPPLE_PAYSAMSUNG_PAYUNKNOWN
ProtocolErrorType
Categorías para errores de integración devueltos en RepositoryResult.ProtocolError.
MAPPING_DATA: Error interno al mapear los datos del servicio.MAPPING_DOMAIN: Error en el formato de los datos de la petición enviada por la aplicación.TPV_NOT_INITIALIZED: Operación intentada antes deinitTpv().