Terminal

  • The SCPTerminal object that is made available by the Stripe Terminal SDK exposes a generic interface for discovering readers, connecting to a reader, and creating payments.

    The SCPTerminal object is a singleton, and you cannot create multiple SCPTerminal instances.

    See more

    Declaration

    Objective-C

    
    @interface SCPTerminal : NSObject

    Swift

    class Terminal : NSObject
  • Before integrating the SDK, you should create an endpoint on your backend server that creates a new connection token via the Stripe Terminal API. The connection token is used by the SDK to connect to a reader.

    An overview of the lifecycle of a connection token:

    • When Stripe Terminal is initialized, the SDK attempts to proactively request an connection token from your backend server.
    • The SDK uses the connection to connect to a reader.
    • Subsequent calls to connect require a new connection token. If you disconnect from a reader, and then call connect again, the SDK will need a new connection token from your backend server.

    We suggest making your application’s API client conform to this protocol.

    See more

    Declaration

    Objective-C

    @protocol SCPConnectionTokenProvider

    Swift

    protocol ConnectionTokenProvider
  • Implement this protocol to handle updates from the Stripe Terminal iOS SDK.

    See more

    Declaration

    Objective-C

    @protocol SCPTerminalDelegate <NSObject>

    Swift

    protocol TerminalDelegate : NSObjectProtocol
  • This class lets you set options that define reader behavior throughout a given reader-to-SDK connection session. Currently, the options are only applicable to the Verifone P400.

    See more

    Declaration

    Objective-C

    
    @interface SCPConnectionConfiguration : NSObject

    Swift

    class ConnectionConfiguration : NSObject
  • The possible reader connection statuses for the SDK.

    See more

    Declaration

    Objective-C

    enum SCPConnectionStatus {}
  • The various log levels for the SDK.

    See more

    Declaration

    Objective-C

    enum SCPLogLevel {}
  • An object representing an action that can be canceled.

    See more

    Declaration

    Objective-C

    
    @interface SCPCancelable : NSObject

    Swift

    class Cancelable : NSObject
  • Objects conforming to this protocol can be instantiated by decoding a JSON dictionary.

    See more

    Declaration

    Objective-C

    @protocol SCPJSONDecodable <NSObject>

    Swift

    protocol JSONDecodable : NSObjectProtocol