func addPeripheral <TPeripheral>(peripheral: TPeripheral, capabilities: Array<PeripheralCapability >?, autoConnect : Bool) throws -> PaymentEngineBuilder Specify a function to create the Peripheral instance to the
PaymentEngineBuilder . Optionally specify the available capabilities and the option to connect to the Peripheral automatically immediately upon. (see PaymentEngineBuilder.build() ). Required.func alwaysQueue () -> PaymentEngineBuilder Specify the
QueueStrategy.always strategy for handling card transactions. Optional.func assignLocationsToTransactions (locationEnabled : Bool) -> PaymentEngineBuilder Specify that the
PaymentEngine will track the location and assign the current location to transactions. Optional.func assignLocationsToTransactionsUsingProvider (provider: ILocationProvider ) -> PaymentEngineBuilder Specify that the
PaymentEngine will assign the current location to transactions using the given location provider. Optional.func batchQueue () -> PaymentEngineBuilder Specify the
QueueStrategy.batch strategy for handling card transactions. Optional.func build(handler: (PaymentEngine ) -> Void) throwsBuilds the
PaymentEngine instance with all of the specified options and the specified handler. Callback will receive the instance when completed.func configureFrom (configurationProvider : ConfigurationProvider ) -> PaymentEngineBuilder Specify the
ConfigurationProvider for passing essential configuration values to the PaymentEngine A default ConfigurationProvider is used when not specified. Optional.func defaultQueue () -> PaymentEngineBuilder Specify the
QueueStrategy.defaultStrategy strategy for handling card transactions. Optional.func emvApplicationSelectionStrategy (strategy: EmvApplicationSelectionStrategy ) -> PaymentEngineBuilder Specify the
Mobile.EmvApplicationSelectionStrategy to use when a presented payment card supports multiple EMV applications and the user or customer must select one of them to be able to complete the transaction. Optional.func getAllPeripherals () -> [IPeripheral]Returns all Peripheral instances added to the
PaymentEngineBuilder func neverQueue () -> PaymentEngineBuilder Specify the
QueueStrategy.never strategy for handling card transactions. Optional.func posID (posID : String) -> PaymentEngineBuilder Specify the unique POS ID for identifying transactions from a particular phone or tablet. Any string value can be used, but it should be unique for the instance of the application installation. A persistent ID is recommended if the application does not already have persistent unique identifiers for app installs. Required.
func queueWhenOffline (autoUploadInterval : TimeInterval ?) -> PaymentEngineBuilder Specify the
QueueStrategy.whenOffline strategy for handling card transactions. Optional. The default value for autoUploadInterval is 5 minutes when not specified.func registrationCredentials (username: String, password: String) throws -> PaymentEngineBuilder Specify the username and password that will be used for authentication while registering peripheral devices with the Quantum Pay server. The provided credentials must have Device Administrator permissions. Optional.
func removeAllPeripherals () -> PaymentEngineBuilder Remove all Peripheral instances from the
PaymentEngineBuilder func removePeripheral <TPeripheral>(peripheral: TPeripheral) -> PaymentEngineBuilder Remove a Peripheral instance from the
PaymentEngineBuilder func reset() -> PaymentEngineBuilder Resets everything that has been changed for this
PaymentEngineBuilder instance back to the default values.func server(server: ServerEnvironment ) -> PaymentEngineBuilder Specify the
ServerEnvironment for the Quantum Pay server. Used when registering peripheral devices and submitting card transactions for processing. Optional.func storeAndForward () -> PaymentEngineBuilder Specify the
QueueStrategy.batch strategy for handling card transactions. Optional.func transactionTimeout (timeoutInSeconds : TimeInterval ) -> PaymentEngineBuilder Specify the time interval that the Peripheral will wait for a card to be presented when a transaction is started. Optional. The default value for timeout is 1 minute when not specified.
func unhandledExceptionHandler (handler: ExceptionHandler ) -> PaymentEngineBuilder Specify a handler for receiving any unhandled exceptions that occur inside the built
PaymentEngine . Optional.