Reader

  • Information about a card reader that has been discovered by or connected to the SDK.

    Some of the properties are only applicable to a certain device type. These properties are labeled with the reader or reader type to which they apply.

    See more

    Declaration

    Objective-C

    
    @interface SCPReader : NSObject <SCPJSONDecodable>

    Swift

    class Reader : NSObject, JSONDecodable
  • The possible device types for a reader.

    See more

    Declaration

    Objective-C

    enum SCPDeviceType : NSUInteger {}

    Swift

    enum DeviceType : UInt, @unchecked Sendable
  • Implement this protocol to handle a connected Bluetooth reader’s events throughout the lifetime of its connection.

    Implementing this delegate is required when connecting to any Bluetooth connected reader, such as the Chipper 2X BT and the WisePad 3.

    The provided delegate must be retained by your application until the reader disconnects.

    See more

    Declaration

    Objective-C

    @protocol SCPBluetoothReaderDelegate <NSObject>

    Swift

    protocol BluetoothReaderDelegate : NSObjectProtocol
  • Implement this protocol to handle a connected local mobile reader’s events throughout the lifetime of its connection.

    Implementing this delegate is required when connecting to any Local Mobile reader.

    The provided delegate must be retained by your application until the reader disconnects.

    See more

    Declaration

    Objective-C

    @protocol SCPLocalMobileReaderDelegate <NSObject>

    Swift

    protocol LocalMobileReaderDelegate : NSObjectProtocol
  • The possible events from a connected reader. Used by [SCPBluetoothReaderDelegate reader:didReportReaderEvent:info:].

    See more

    Declaration

    Objective-C

    enum SCPReaderEvent : NSUInteger {}

    Swift

    enum ReaderEvent : UInt, @unchecked Sendable
  • This OptionSet represents all of the input methods available to your user when the reader begins waiting for input. Used by [SCPBluetoothReaderDelegate reader:didRequestReaderInput:].

    See more

    Declaration

    Objective-C

    enum SCPReaderInputOptions : NSUInteger {}

    Swift

    struct ReaderInputOptions : OptionSet, @unchecked Sendable
  • The display messages that a reader may request be displayed by your app. Used by [SCPBluetoothReaderDelegate reader:didRequestReaderDisplayMessage:].

    See more

    Declaration

    Objective-C

    enum SCPReaderDisplayMessage : NSUInteger {}

    Swift

    enum ReaderDisplayMessage : UInt, @unchecked Sendable
  • The possible networking statuses for a reader.

    See more

    Declaration

    Objective-C

    enum SCPReaderNetworkStatus : NSUInteger {}

    Swift

    enum ReaderNetworkStatus : UInt, @unchecked Sendable
  • A categorization of a reader’s battery charge level.

    See more

    Declaration

    Objective-C

    enum SCPBatteryStatus : NSUInteger {}

    Swift

    enum BatteryStatus : UInt, @unchecked Sendable
  • An SCPCart object contains information about what line items are included in the current transaction. A cart object should be created and then passed into Terminal.shared.setReaderDisplay(), which will display the cart’s contents on the reader’s screen.

    The SCPCart only represents exactly what will be shown on the screen, and is not reflective of what the customer is actually charged. You are responsible for making sure that tax and total reflect what is in the cart.

    These values are exactly what will be shown on the screen and do not reflect what the user is actually charged.

    Note

    Only Internet readers support setReaderDisplay functionality

    See more

    Declaration

    Objective-C

    
    @interface SCPCart : NSObject

    Swift

    class Cart : NSObject
  • A builder class for SCPCart objects.

    See more

    Declaration

    Objective-C

    
    @interface SCPCartBuilder : SCPBuilder <SCPCart *>

    Swift

    class CartBuilder : SCPBuilder<Cart>
  • Represents a single line item in an SCPCart, displayed on the reader’s screen during checkout.

    The values here will be shown on the screen as-is. Make sure you’re correctly calculating and setting the SCPCart‘s tax and total – the reader will not calculate tax or total for you. Similarly, make sure the values displayed reflect what the customer is actually charged.

    See more

    Declaration

    Objective-C

    
    @interface SCPCartLineItem : NSObject

    Swift

    class CartLineItem : NSObject
  • A builder class for SCPCartLineItem objects.

    See more

    Declaration

    Objective-C

    
    @interface SCPCartLineItemBuilder : SCPBuilder <SCPCartLineItem *>

    Swift

    class CartLineItemBuilder : SCPBuilder<CartLineItem>