Interface ICloverConnector

All Superinterfaces:
Serializable
All Known Implementing Classes:
CloverConnector

public interface ICloverConnector extends Serializable
Interface to define the available methods to send requests to a connected Clover device.
  • Method Details

    • initializeConnection

      void initializeConnection()
      Initialize the CloverConnector's connection and start communication with the device. Must be called before calling any other method other than to add or remove listeners
    • addCloverConnectorListener

      void addCloverConnectorListener(ICloverConnectorListener listener)
      Adds a clover connection listener.
      Parameters:
      listener - The connection listener.
    • removeCloverConnectorListener

      void removeCloverConnectorListener(ICloverConnectorListener listener)
      Removes a clover connector listener.
      Parameters:
      listener - The connection listener.
    • sale

      void sale(SaleRequest request)
      Sale method, aka "purchase"
      Parameters:
      request - A SaleRequest object containing basic information needed for the transaction
    • acceptSignature

      void acceptSignature(VerifySignatureRequest request)
      If signature is captured during a Sale, this method accepts the signature as entered
      Parameters:
      request - Accepted request
    • rejectSignature

      void rejectSignature(VerifySignatureRequest request)
      If signature is captured during a Sale, this method rejects the signature as entered
      Parameters:
      request - Rejected request
    • acceptPayment

      void acceptPayment(com.clover.sdk.v3.payments.Payment payment)
      If payment confirmation is required during a Sale, this method accepts the payment
      Parameters:
      payment - Payment to accept
    • rejectPayment

      void rejectPayment(com.clover.sdk.v3.payments.Payment payment, com.clover.remote.Challenge challenge)
      If payment confirmation is required during a Sale, this method rejects the payment
      Parameters:
      payment - Payment to reject
      challenge - The challenge which resulted in payment rejection
    • auth

      void auth(AuthRequest request)
      Auth method to obtain an Auth payment that can be used as the payment to call tipAdjust
      Parameters:
      request - The request details
    • preAuth

      void preAuth(PreAuthRequest request)
      PreAuth method to obtain a Pre-Auth for a card
      Parameters:
      request - The request details
    • capturePreAuth

      void capturePreAuth(CapturePreAuthRequest request)
      Capture a previous Auth. Note: Should only be called if request's PaymentID is from an AuthResponse
      Parameters:
      request - The request details
    • incrementPreAuth

      void incrementPreAuth(IncrementPreauthRequest request)
      Request to increase the amount of an existing pre-auth
      Parameters:
      request - The request details
    • tipAdjustAuth

      void tipAdjustAuth(TipAdjustAuthRequest request)
      Adjust the tip for a previous Auth. Note: Should only be called if request's PaymentID is from an AuthResponse
      Parameters:
      request - The request details
    • voidPayment

      void voidPayment(VoidPaymentRequest request)
      Void a transaction, given a previously used order ID and/or payment ID
      Parameters:
      request - The request details
    • refundPayment

      void refundPayment(RefundPaymentRequest request)
      Refund a specific payment
      Parameters:
      request - The request details
    • manualRefund

      void manualRefund(ManualRefundRequest request)
      Manual refund method, aka "naked credit"
      Parameters:
      request - The request details
    • vaultCard

      void vaultCard(Integer cardEntryMethods)
      Vault card information. Requests the mini capture card information and request a payment token from the payment gateway. The value returned in the response is a card, with all the information necessary to use for payment in a SaleRequest or AuthRequest
      Parameters:
      cardEntryMethods - The card entry methods allowed to capture the payment token. null will provide default values
    • closeout

      void closeout(CloseoutRequest request)
      Request a closeout of all orders.
      Parameters:
      request - The request details
    • print

      void print(PrintRequest request)
      Request to print.
      Parameters:
      request - The request details: info and content needed to print
    • retrievePrinters

      void retrievePrinters(RetrievePrintersRequest request)
      Request to retrieve available printers.
      Parameters:
      request - object that contains additional information to be applied during the request
    • retrievePrintJobStatus

      void retrievePrintJobStatus(PrintJobStatusRequest request)
      Request the status of a given print job
      Parameters:
      request - object defining the print job to be queried
    • openCashDrawer

      void openCashDrawer(OpenCashDrawerRequest request)
      Request that the cash drawer connected to the device be opened.
      Parameters:
      request - object defining the reason the cash drawer is being opened, and an optional device identifier
    • showMessage

      void showMessage(String message)
      Show a message on the Clover Mini screen
      Parameters:
      message - The message to display
    • sendDebugLog

      void sendDebugLog(String message)
      Sends request to the clover device to send the log to the clover server
      Parameters:
      message - The message to display
    • showWelcomeScreen

      void showWelcomeScreen()
      Return the device to the Welcome Screen
    • showThankYouScreen

      void showThankYouScreen()
      Show the thank you screen on the device
    • displayPaymentReceiptOptions

      @Deprecated void displayPaymentReceiptOptions(DisplayReceiptOptionsRequest request)
      Deprecated.
      Display the payment receipt screen for the orderId/paymentId combination in the DisplayReceiptOptionsRequest object.
      Parameters:
      request - The request details
    • showDisplayOrder

      void showDisplayOrder(com.clover.remote.order.DisplayOrder order)
      Show the DisplayOrder on the device. Replaces the existing DisplayOrder on the device.
      Parameters:
      order - The order to display
    • removeDisplayOrder

      void removeDisplayOrder(com.clover.remote.order.DisplayOrder order)
      Remove the DisplayOrder from the device.
      Parameters:
      order - The order to remove
    • dispose

      void dispose()
      Will dispose of the underlying connection to the device
    • invokeInputOption

      void invokeInputOption(com.clover.remote.InputOption io)
      Used to invoke user options on the mini such as "OK", "CANCEL", "DONE", etc.
      Parameters:
      io - The option to invoke
    • resetDevice

      void resetDevice()
      Used to reset the device if it gets in an invalid state from POS perspective. This could cause a missed transaction or other missed information, so it needs to be used cautiously as a last resort
    • retrievePendingPayments

      void retrievePendingPayments()
      Used to request a list of pending payments that have been taken offline, but haven't processed yet. Will trigger an onRetrievePendingPaymentsResponse callback.
    • readCardData

      void readCardData(ReadCardDataRequest request)
      Used to request card information. Specifically track1 and track2 information
      Parameters:
      request - The request details
    • sendMessageToActivity

      void sendMessageToActivity(MessageToActivity request)
      Send a message to a running custom activity on the Clover device
      Parameters:
      request - The request details
    • startCustomActivity

      void startCustomActivity(CustomActivityRequest request)
      Request to start a Custom Activity on the Clover device
      Parameters:
      request - The request details
    • retrieveDeviceStatus

      void retrieveDeviceStatus(RetrieveDeviceStatusRequest request)
      Send a message requesting the current status of the device.
      Parameters:
      request - The request details
    • retrievePayment

      void retrievePayment(RetrievePaymentRequest request)
      Sends a request to get a payment. Only valid for payments made in the past 24 hours on the device queried.
      Parameters:
      request - The request details
    • voidPaymentRefund

      void voidPaymentRefund(VoidPaymentRefundRequest request)
      Refund a specific payment
      Parameters:
      request - The request details
    • displayReceiptOptions

      void displayReceiptOptions(DisplayReceiptOptionsRequest request)
      Display receipt options for a Credit, Refund, or Payment
      Parameters:
      request - The request details
    • registerForCustomerProvidedData

      void registerForCustomerProvidedData(RegisterForCustomerProvidedDataRequest request)
      Register an interest in receiving customer provided data.
    • setCustomerInfo

      void setCustomerInfo(SetCustomerInfoRequest request)
      Parameters:
      request -
    • checkBalance

      void checkBalance(CheckBalanceRequest request)
      Check the balance on a card, if card supports balance inquiry
      Parameters:
      request -
    • requestSignature

      void requestSignature(SignatureRequest request)
      Launch customer facing signature screen to collect a signature
      Parameters:
      request -
    • requestTip

      void requestTip(TipRequest request)
      Launch customer facing tip screen to request a tip amount
      Parameters:
      request -