Referencia de API
Esta página proporciona una referencia técnica para los repositorios redsys-tpv-business-lib. Incluye los métodos disponibles, parámetros y tipos de retorno para cada funcionalidad.
Tipos Comunes
RepositoryResult<T>
Una clase sellada genérica que envuelve todas las respuestas asíncronas de los repositorios.
Success<T>: Contiene los datos del resultado (val data: T).ConnectionError: Indica un fallo de red o de conexión con el servicio.Cancelled: Indica que la operación fue cancelada por el usuario (val message: String).ProtocolError: Indica un error de integración o de mapeo de datos (val type: ProtocolErrorType,val description: String?).
1. InitializationRepository
Propósito: Gestionar la inicialización y configuración del TPV.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
initTpv | Inicializa el TPV con el host. | Ninguno | RepositoryResult<TpvInfo> |
getTpvInfoRepositoryResult | Recupera la información en caché del TPV. | Ninguno | RepositoryResult<TpvInfo> |
saveTerminalInformation | Actualiza la información local del terminal. | tpvInfo: TpvInfo | Unit (Suspend) |
2. PaymentRepository
Propósito: Procesar pagos con tarjeta.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
makePayment | Realiza un pago estándar. | amount: Moneytip: Money?shiftInfo: ShiftInfo?financialConditions: FinancialConditions?proprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<PaymentResult> |
PaymentResult (Interfaz Sellada)
Accepted(val data: Transaction)Denied(val data: Transaction)CardNotFound
3. RefundRepository
Propósito: Procesar devoluciones.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
makeRefund | Devolución por ID de operación original. | operationId: Stringamount: MoneyproprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<RefundResult> |
makeRefundReadingCard | Devolución por ID, forzando la lectura de tarjeta. | operationId: Stringamount: MoneyproprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<RefundResult> |
makeRefundWithoutOriginal | Devolución sin ID previo. | amount: MoneyproprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<RefundResult> |
RefundResult (Interfaz Sellada)
Accepted(val data: Transaction)Denied(val data: Transaction)ExceededAmount
4. PreauthorizationRepository
Propósito: Gestionar reservas de fondos.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
makePreauthorization | Crear una nueva preautorización. | amount: MoneyshiftInfo: ShiftInfo?proprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<PreauthorizationResult> |
confirmPreauthorization | Confirmar/Cobrar una preautorización. | amount: MoneyoperationId: StringshiftInfo: ShiftInfo?proprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<PreauthorizationResult> |
replacePreauthorization | Actualizar el importe. | amount: MoneyoperationId: StringshiftInfo: ShiftInfo?proprietaryExtraData: ProprietaryExtraData?language: LanguageIso6391? | RepositoryResult<PreauthorizationResult> |
annulPreauthorization | Cancelar la reserva. | operationId: Stringlanguage: LanguageIso6391? | RepositoryResult<PreauthorizationResult> |
PreauthorizationResult (Interfaz Sellada)
Accepted(val data: Transaction)Denied(val data: Transaction)
5. TransactionRepository
Propósito: Consultar transacciones históricas.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
getTransactions | Buscar transacciones por rango de fechas. | initDate: DateendDate: Datefilter: TransactionFilter?resultsFilter: TransactionResultsFilter? | RepositoryResult<GetTransactionsResult> |
getTransactionsBySession | Buscar por sesión. | initDate: DateendDate: DatesessionDate: DatesessionId: Int?filter: TransactionFilter?resultsFilter: TransactionResultsFilter? | RepositoryResult<GetTransactionsResult> |
6. TotalsRepository
Propósito: Consultar totales acumulados.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
getSessions | Totales de todas las sesiones en una fecha. | date: DatewantBrandDetails: Boolean | RepositoryResult<TotalsResult> |
getSession | Totales de una sesión específica por ID. | date: DatesessionId: IntwantBrandDetails: Boolean | RepositoryResult<TotalsResult> |
getSessionsBetweenDates | Totales de sesiones en un rango. | initDate: DateendDate: DatewantBrandDetails: Boolean | RepositoryResult<TotalsResult> |
getLastSession | Totales de la última sesión cerrada. | Ninguno | RepositoryResult<GetLastSessionResult> |
getShifts | Totales de todos los turnos en una fecha. | date: DatewantBrandDetails: Boolean | RepositoryResult<TotalsResult> |
getShift | Totales de un turno específico por ID. | date: DateshiftId: StringwantBrandDetails: Boolean | RepositoryResult<TotalsResult> |
getShiftBetweenDates | Totales de turnos en un rango. | initDate: DateendDate: DatewantBrandDetails: Boolean | RepositoryResult<TotalsResult> |
TotalsResult (Interfaz Sellada)
IncomingData(val data: TotalsModel)EmptyDataWrongIdentifierError
7. ShiftRepository y SessionRepository
Propósito: Gestionar períodos operacionales.
Métodos
| Repositorio | Método | Parámetros | Tipo de retorno |
|---|---|---|---|
ShiftRepository | openShift | number: Intdate: Date | RepositoryResult<Boolean> |
SessionRepository | closeSession | wantBrandDetails: Boolean | RepositoryResult<CloseSessionResult> |
8. PrinterRepository
Propósito: Controlar la impresora del dispositivo.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
checkPaper | Verificar el estado del papel. | Ninguno | RepositoryResult<Boolean> |
printBitmap | Imprimir un bitmap personalizado. | bitmap: Bitmap | RepositoryResult<Boolean> |
printDefaultTicket | Imprimir recibo estándar. | context: ContextheaderIcon: Bitmaptransaction: Transaction | RepositoryResult<Boolean> |
9. TicketDigitalRepository
Propósito: Gestionar recibos digitales.
Métodos
| Método | Descripción | Parámetros | Tipo de retorno |
|---|---|---|---|
sendTicketDigital | Enviar recibo por correo electrónico. | operId: Stringemail: String | RepositoryResult<TicketDigitalResult> |
getTicketDigitalURL | Obtener URL del recibo (para QR). | operId: String | RepositoryResult<TicketDigitalUrlResult> |
10. SettingsRepository y AuthRepository
Propósito: Configuración y Autenticación.
Métodos
| Repositorio | Método | Parámetros | Tipo de retorno |
|---|---|---|---|
SettingsRepository | updateShowTransactionResult | showTransactionResult: Boolean | RepositoryResult<Boolean> |
SettingsRepository | updateLanguage | language: LanguageIso6391 | RepositoryResult<Boolean> |
AuthRepository | getToken | Ninguno | RepositoryResult<AuthResult> |
11. Repositorios APM (Bizum, Alipay, WeChat)
Propósito: Métodos de Pago Alternativos.
Métodos
| Repositorio | Método | Parámetros | Tipo de retorno |
|---|---|---|---|
BizumRepository | sendBizum | amount: MoneyphoneNumber: StringshiftInfo: ShiftInfo?language: LanguageIso6391? | RepositoryResult<SendBizumResult> |
AlipayRepository | makePayment | amount: Moneytip: MoneyqrId: StringtransactionName: StringqrIdType: QrIdTypelanguageIso6391: LanguageIso6391 | RepositoryResult<AlipayResult> |
AlipayRepository | makeRefund | amount: MoneyoriginalOperationId: StringlanguageIso6391: LanguageIso6391 | RepositoryResult<AlipayResult> |
WeChatRepository | makePayment | amount: Moneytip: MoneyqrId: StringtransactionName: String?languageIso6391: LanguageIso6391 | RepositoryResult<WeChatResult> |
WeChatRepository | makeRefund | amount: MoneyoriginalOperationId: StringlanguageIso6391: LanguageIso6391 | RepositoryResult<WeChatResult> |