All Known Implementing Classes:
CoreBackofficeClientAdapter

public interface BackofficeClient
Contract that any backoffice client must implement.
  • Method Summary

    Modifier and Type
    Method
    Description
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    createFavorite(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto request, String coreUserId, String userIP, String userAgent, String userId, String contractId)
    Create new favorite operation.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    deleteFavorite(String transferID, String userId, String userIP, String userAgent)
    Delete a favorite transfer.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    deleteScheduled(String transferID, String userId, String userIP, String userAgent, String userToken, String operationId)
    Delete a scheduled transfer.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    deleteTransfer(String transferID, String userId, String userIP, String userAgent)
    Delete transfer.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    doExchangeCode(es.kukenan.smartfi.microservice.transfer.api.exchange.ExchangeTransferRequestDto codeRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String idOperacion, String tokenJwt)
    Do exchange code operation.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    doExchangeCreditCard(es.kukenan.smartfi.microservice.transfer.api.exchange.ExchangeTransferRequestDto codeRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String idOperacion, String tokenJwt)
    Do exchange credit card operation.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    doTransfer(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String idOperacion, String tokenJwt)
    Do transfer operation.
    The back office internal identifier.
    getBicFromIban(String userId, String iban)
    Get bic associated to an iban.
    getDetailTransfers(String userId, String type, String mode, String dateFrom, String dateTo, String productId, String paginationKey, String jwtToken, User user, String transferId)
    Get detail transfers for a user.
    List<es.kukenan.smartfi.microservice.transfer.api.transfer.favorite.TransferFavoriteDto>
    getFavorites(String jwtToken, String coreUserId, String userId, String contractId)
    Get transfer favorites for a user.
    es.kukenan.smartfi.microservice.transfer.api.transfer.favorite.TransferFavoritesResponseDto
    getFavourites(UserBackoffice userBackoffice, es.kukenan.smartfi.microservice.transfer.api.products.ProductDto productDto, Optional<String> paginationKey)
    Retrieves Product Favourite Transfers for a user.
    Optional<es.kukenan.smartfi.microservice.transfer.api.transfer.scheduled.TransferScheduledDto>
    getScheduledTransfer(String userId, String transferId, String productId, String jwtToken)
    Get scheduled transfer detail.
    Optional<es.kukenan.smartfi.microservice.transfer.api.transfer.TransferDto>
    getTransfer(String userId, String type, String mode, String reference, String jwtToken, User user)
    Get transfer detail.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto
    Get transfer frequency types.
    es.kukenan.smartfi.microservice.transfer.api.transfer.limits.LimitsDto
    Get transfer limits for a user.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto
    Get transfer modes.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto
    Get transfer modes for a bic.
    getTransfers(String userJwtToken, UserBackoffice userBackoffice, es.kukenan.smartfi.microservice.transfer.api.products.ProductDto productDto, String type, Optional<String> mode, String dateFrom, String dateTo, Optional<String> paginationKey, Supplier<es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto> transferModesSupplier)
    Retrieves Product Transfers for a user.
    getTransfers(String userId, String type, Optional<String> mode, String dateFrom, String dateTo, String productId, String paginationKey, String jwtToken, User user, Supplier<es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto> transferModesSupplier)
    Get transfers for a user.
    List<es.kukenan.smartfi.microservice.transfer.api.transfer.scheduled.TransferScheduledDto>
    getTransfersScheduledList(String userId, es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto productOrigin, String userToken)
    Get transfers scheduled list for a user.
    int
    initializeDeleteScheduled(String transferID, es.kukenan.smartfi.common.security.WalletAuthentication auth)
    Intialize delete of scheduled transfer.
    int
    initializeModifyScheduled(String transferID, es.kukenan.smartfi.common.security.WalletAuthentication auth, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto request)
    Intialize modify of scheduled transfer.
    int
    initializeTransfer(String userId, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, es.kukenan.smartfi.common.security.WalletAuthentication auth)
    Initialize Transfer.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    modifyScheduledTransfer(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, String userId, UserBackoffice userBackoffice, String userIP, String userAgent, String transferId, String operationId, es.kukenan.smartfi.common.security.WalletAuthentication userToken)
    Modify transfer by ID operation.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferSimulationResponseDto
    simulateTransfer(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String tokenJtw)
    Simulate transfer operation.
    es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto
    validateFavoriteTransfer(String alias, Integer transferMode, String userId, String userIP, String userAgent)
    validate favorite transfer.
    default boolean
    wants(Integer backoffice)
    Determine if this client supports the given back ffice.
  • Method Details

    • getBackofficeId

      Integer getBackofficeId()
      The back office internal identifier.
      Returns:
      back office internal identifier.
    • wants

      default boolean wants(Integer backoffice)
      Determine if this client supports the given back ffice.
      Parameters:
      backoffice - the backoffice to check if supported.
      Returns:
      true if this client handles the given back office.
    • getTransferLimits

      es.kukenan.smartfi.microservice.transfer.api.transfer.limits.LimitsDto getTransferLimits(String userId)
      Get transfer limits for a user.
      Parameters:
      userId - core user identifier.
      Returns:
      the transfer limits.
    • getTransferFrequencyTypes

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto getTransferFrequencyTypes()
      Get transfer frequency types.
      Returns:
      the transfer frequency types
    • getTransferModes

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto getTransferModes()
      Get transfer modes.
      Returns:
      the transfer modes
    • getTransferModes

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto getTransferModes(String userId, String bic)
      Get transfer modes for a bic.
      Parameters:
      userId - core user identifier.
      bic - bic associated to an iban.
      Returns:
      the transfer mode
    • getBicFromIban

      String getBicFromIban(String userId, String iban)
      Get bic associated to an iban.
      Parameters:
      userId - core user identifier
      iban - user iban
      Returns:
      the bic associated
    • simulateTransfer

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferSimulationResponseDto simulateTransfer(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String tokenJtw)
      Simulate transfer operation.
      Parameters:
      origin - origin account
      transferRequestDto - transfer request DTO
      userBackoffice - core user
      userIP - user real ip
      userAgent - user-agent header
      tokenJtw - token jwt.
      Returns:
      transfer simulation response DTO
    • initializeTransfer

      int initializeTransfer(String userId, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, es.kukenan.smartfi.common.security.WalletAuthentication auth)
      Initialize Transfer.
      Parameters:
      userId - userId.
      transferRequestDto - transferRequestDto.
      auth - auth.
      Returns:
      operation ID.
    • doTransfer

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto doTransfer(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String idOperacion, String tokenJwt)
      Do transfer operation.
      Parameters:
      origin - origin account
      transferRequestDto - transfer request DTO
      userBackoffice - userBackoffice
      userIP - user real ip
      userAgent - user-agent header
      idOperacion - idOperacion.
      tokenJwt - auth info.
      Returns:
      transfer simulation response DTO
    • doExchangeCode

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto doExchangeCode(es.kukenan.smartfi.microservice.transfer.api.exchange.ExchangeTransferRequestDto codeRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String idOperacion, String tokenJwt)
      Do exchange code operation.
      Parameters:
      codeRequestDto - transfer request DTO
      userBackoffice - userBackoffice
      userIP - user real ip
      userAgent - user-agent header
      idOperacion - idOperacion.
      tokenJwt - auth info.
      Returns:
      transfer simulation response DTO
    • doExchangeCreditCard

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto doExchangeCreditCard(es.kukenan.smartfi.microservice.transfer.api.exchange.ExchangeTransferRequestDto codeRequestDto, UserBackoffice userBackoffice, String userIP, String userAgent, String idOperacion, String tokenJwt)
      Do exchange credit card operation.
      Parameters:
      codeRequestDto - transfer request DTO
      userBackoffice - userBackoffice
      userIP - user real ip
      userAgent - user-agent header
      idOperacion - idOperacion.
      tokenJwt - auth info.
      Returns:
      transfer simulation response DTO
    • getFavorites

      List<es.kukenan.smartfi.microservice.transfer.api.transfer.favorite.TransferFavoriteDto> getFavorites(String jwtToken, String coreUserId, String userId, String contractId)
      Get transfer favorites for a user.
      Parameters:
      jwtToken - jwt token.
      coreUserId - core user identifier.
      userId - user identifier.
      contractId - contract identifier.
      Returns:
      the transfer favorites
    • getFavourites

      es.kukenan.smartfi.microservice.transfer.api.transfer.favorite.TransferFavoritesResponseDto getFavourites(UserBackoffice userBackoffice, es.kukenan.smartfi.microservice.transfer.api.products.ProductDto productDto, Optional<String> paginationKey)
      Retrieves Product Favourite Transfers for a user.
      Parameters:
      userBackoffice - user Backoffice UserBackoffice.
      productDto - product ProductDto.
      paginationKey - pagination key used to request next result page.
      Returns:
      Product Favourite Transfers TransferFavoritesResponseDto.
    • createFavorite

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto createFavorite(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto request, String coreUserId, String userIP, String userAgent, String userId, String contractId)
      Create new favorite operation.
      Parameters:
      origin - origin account
      request - transfer request DTO
      coreUserId - core user identifier
      userIP - user real ip
      userAgent - user-agent header
      userId - user identifier.
      contractId - contract identifier.
      Returns:
      transfer favorite response DTO
    • getTransfersScheduledList

      List<es.kukenan.smartfi.microservice.transfer.api.transfer.scheduled.TransferScheduledDto> getTransfersScheduledList(String userId, es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto productOrigin, String userToken)
      Get transfers scheduled list for a user.
      Parameters:
      userId - core user identifier.
      productOrigin - Core product.
      userToken - auth info.
      Returns:
      the transfers scheduled list
    • deleteScheduled

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto deleteScheduled(String transferID, String userId, String userIP, String userAgent, String userToken, String operationId)
      Delete a scheduled transfer.
      Parameters:
      transferID - transfer identifier
      userId - core user identifier
      userIP - user real ip
      userAgent - user-agent header
      userToken - auth info.
      operationId - operation identifier.
      Returns:
      transfer scheduled response DTO
    • initializeDeleteScheduled

      int initializeDeleteScheduled(String transferID, es.kukenan.smartfi.common.security.WalletAuthentication auth)
      Intialize delete of scheduled transfer.
      Parameters:
      transferID - transfer identifier
      auth - auth info.
      Returns:
      transfer scheduled response DTO
    • deleteTransfer

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto deleteTransfer(String transferID, String userId, String userIP, String userAgent)
      Delete transfer.
      Parameters:
      transferID - transfer identifier
      userId - core user identifier
      userIP - user real ip
      userAgent - user-agent header
      Returns:
      transfer favorite response DTO
    • modifyScheduledTransfer

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto modifyScheduledTransfer(es.kukenan.smartfi.microservice.transfer.api.products.ProductOriginDto origin, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto transferRequestDto, String userId, UserBackoffice userBackoffice, String userIP, String userAgent, String transferId, String operationId, es.kukenan.smartfi.common.security.WalletAuthentication userToken)
      Modify transfer by ID operation.
      Parameters:
      origin - origin account.
      transferRequestDto - transfer request DTO.
      userId - core user identifier.
      userBackoffice - user backoffice.
      userIP - user real ip.
      userAgent - user-agent header.
      transferId - transfer Id.
      operationId - operation identifier.
      userToken - auth info.
      Returns:
      modify scheduled transfer Dto.
    • initializeModifyScheduled

      int initializeModifyScheduled(String transferID, es.kukenan.smartfi.common.security.WalletAuthentication auth, es.kukenan.smartfi.microservice.transfer.api.transfer.TransferRequestDto request)
      Intialize modify of scheduled transfer.
      Parameters:
      transferID - transfer identifier
      auth - auth info.
      request - rquest data.
      Returns:
      transfer scheduled response DTO
    • getTransfers

      TransferDomain getTransfers(String userId, String type, Optional<String> mode, String dateFrom, String dateTo, String productId, String paginationKey, String jwtToken, User user, Supplier<es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto> transferModesSupplier)
      Get transfers for a user.
      Parameters:
      userId - user identifier
      type - transfer type
      mode - transfer mode
      dateFrom - date from interval
      dateTo - date to interval
      productId - product uuid
      paginationKey - pagination key used to request next result page.
      jwtToken - jwt token.
      user - user.
      transferModesSupplier - Get Transfer Modes supplier TransfersDataCatalogDto.
      Returns:
      the transfers
    • getTransfers

      TransferDomain getTransfers(String userJwtToken, UserBackoffice userBackoffice, es.kukenan.smartfi.microservice.transfer.api.products.ProductDto productDto, String type, Optional<String> mode, String dateFrom, String dateTo, Optional<String> paginationKey, Supplier<es.kukenan.smartfi.microservice.transfer.api.transfer.TransfersDataCatalogDto> transferModesSupplier)
      Retrieves Product Transfers for a user.
      Parameters:
      userJwtToken - user token.
      userBackoffice - user Backoffice UserBackoffice.
      productDto - product ProductDto.
      type - transfer type.
      mode - transfer mode.
      dateFrom - date from interval.
      dateTo - date to interval.
      paginationKey - pagination key used to request next result page.
      transferModesSupplier - Get Transfer Modes supplier TransfersDataCatalogDto.
      Returns:
      Product Transfers TransferDomain.
    • getDetailTransfers

      TransferDomain getDetailTransfers(String userId, String type, String mode, String dateFrom, String dateTo, String productId, String paginationKey, String jwtToken, User user, String transferId)
      Get detail transfers for a user.
      Parameters:
      userId - user identifier
      type - transfer type
      mode - transfer mode
      dateFrom - date from interval
      dateTo - date to interval
      productId - product uuid
      paginationKey - pagination key used to request next result page.
      jwtToken - jwt token.
      user - user.
      transferId - transfer id.
      Returns:
      the transfers
    • deleteFavorite

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto deleteFavorite(String transferID, String userId, String userIP, String userAgent)
      Delete a favorite transfer.
      Parameters:
      transferID - transfer identifier
      userId - core user identifier
      userIP - user real ip
      userAgent - user-agent header
      Returns:
      transfer favorite response DTO
    • validateFavoriteTransfer

      es.kukenan.smartfi.microservice.transfer.api.transfer.TransferResponseDto validateFavoriteTransfer(String alias, Integer transferMode, String userId, String userIP, String userAgent)
      validate favorite transfer.
      Parameters:
      alias - param
      transferMode - param
      userId - core user identifier
      userIP - user real ip
      userAgent - user-agent header
      Returns:
      transfer simulation response DTO
    • getTransfer

      Optional<es.kukenan.smartfi.microservice.transfer.api.transfer.TransferDto> getTransfer(String userId, String type, String mode, String reference, String jwtToken, User user)
      Get transfer detail.
      Parameters:
      userId - user identifier
      type - transfer type
      mode - transfer mode
      reference - Skyline transfer reference
      jwtToken - jwtToken.
      user - user.
      Returns:
      The transfer if found
    • getScheduledTransfer

      Optional<es.kukenan.smartfi.microservice.transfer.api.transfer.scheduled.TransferScheduledDto> getScheduledTransfer(String userId, String transferId, String productId, String jwtToken)
      Get scheduled transfer detail.
      Parameters:
      userId - user identifier
      transferId - scheduled transfer identifier
      productId - product id
      jwtToken - jwt token
      Returns:
      The transfer if found