UsaepayMiddlewareSettings Class

This class is used to configure the middleware. These settings must be set prior to connecting the device.

currentMode (Optional)

@property(nonatomic, retain) NSString *currentMode

Use to set the mode (Production or Sandbox) during device initialization. The default mode is Production.

isEMVEnable (Optional)

@property(nonatomic) BOOL isEMVEnable

Use to disable/enable EMV transactions. The merchant account must also be configured for EMV processing. Please contact customer support to verify the merchant account is set up correctly.

isMSREnable (Optional)

@property(nonatomic) BOOL isMSREnable

Use to disable/enable MSR transactions.

isContactlessEnable (Optional)

@property(nonatomic) BOOL isContactlessEnable

Use to disable/enable Contactless transactions.

isTipEnable (Optional)

@property(nonatomic) BOOL isTipEnable

Use to disable/enable tips on the device (Not supported by MP200).

isManuallyKeyEnable (Optional)

@property(nonatomic) BOOL isManuallyKeyEnable

Use to disable/enable manually key on the payment device.

isTipAdjustEnable (Optional)

@property(nonatomic) BOOL isTipAdjustEnable

Use to disable/enable support for Tip-Adjust on the terminal.

isCashbackEnable (Optional)

@property(nonatomic) BOOL isCashbackEnable

Use to disable/enable Cashback on the terminal.

isDebitEnable (Optional)

@property(nonatomic) BOOL isDebitEnable

Use to disable/enable debit selection on the terminal.

enableDebugLog (Optional)

@property(nonatomic) BOOL enableDebugLog

Use to show/hide debugging logs.

sourceKey (Required)

@property(nonatomic, retain) NSString *sourceKey

Use to set the source key. This is required at device initialization.

pinNum (Required)

@property(nonatomic, retain) NSString *pinNum 

Use to set the pin associated with the source key. This is required at device initialization.

Merchant Capability Settings

These settings get returned from the gateway base on Merchant's Capability.


@property(nonatomic) BOOL isEMVSupported

True if merchant supports EMV, false otherwise


@property(nonatomic) BOOL isTipAdjustSupported

True if merchant supports Tip-Adjust, false otherwise


@property(nonatomic) BOOL isDebitMSRSupproted

True if merchant supports Debit MSR, false otherwise


@property(nonatomic) BOOL isContactlessSupported

True if merchant supports Contactless, false otherwise


@property(nonatomic) BOOL isQuickChipSupported

True if merchant supports Quickchip, false otherwise