Operating Parameters

Last updated: 2026-05-20

Operating Parameters

The wrappers expose operating parameters that influence transaction behaviour and diagnostics independently of the terminal's business result.

Common Behavioural Parameters

EnableTip

Controls whether tipping is enabled in purchase requests.

  • Tipping must also be enabled in terminal configuration.
  • This setting is often more useful for disabling tip than enabling it.

TransactionCurrency

Defines the ISO 4217 currency to be sent in transaction messages.

  • It must normally match the terminal configuration.
  • In multi-currency configurations it must be one of the currencies the terminal supports.

WaitForCardRemoval

Controls whether the terminal should wait for an inserted chip card to be removed before reporting the final transaction response.

  • true can reduce the chance that the customer leaves the card behind.
  • false can make the transaction feel faster because the ECR receives the result earlier.
  • Regardless of this flag, the terminal will not allow a new transaction until the card is taken.

LogXmlMessages

When enabled, incoming and outgoing EPAS XML is logged with the ECR at debug level.

  • Use this for diagnostics, support, and parity verification.
  • Avoid leaving high-verbosity XML logging enabled unnecessarily in production.

Log Storage

StorageDirectory or storage directory helpers

The wrappers can persist trace data from the terminal to rotating log files.

Typical behaviour:

  • Tracelog.txt is the most recent file.
  • older files are rotated, for example Tracelog_1.txt through Tracelog_9.txt
  • these logs are useful during support, failed transactions, and problematic card investigations

Use the language tabs below to compare the wrapper-specific storage and log-control surface.

.NET

The .NET wrapper exposes EpasClient.Options.StorageDirectory.

Java

The Java wrapper exposes helper methods on OperatingParameters, such as:

  • SetStorageDirectory(...)
  • GetStorageDirectory()
  • startNewLogFile()
  • stopLogFileTemporarily()
  • cleanAllLogFiles()

It also exposes log-part controls:

  • enableLogPart(...)
  • disableLogPart(...)
  • enableAllLogParts()
  • disableAllLogParts()

Swift

The Swift wrapper exposes:

  • OperatingParameters.storageDirectory
  • OperatingParameters.enabledLogParts
  • EpasClient.cleanAllLogFiles()
  • EpasClient.startNewLogFile()
  • EpasClient.stopLogFileTemporarily()
  • EpasClient.enableLogPart(_:)
  • EpasClient.disableLogPart(_:)
  • EpasClient.enableAllLogParts()
  • EpasClient.disableAllLogParts()

This gives Swift parity for the rotating trace-log workflow in addition to delegate logging and XML diagnostics.

Reader and Transaction Interaction

Operating parameters often interact with the visible runtime behaviour of:

  • purchase transactions
  • pre-amount flows
  • receipt timing
  • callback timing
  • support logging

Because of this, parameter changes should be treated as integration-level behaviour changes, not just local configuration tweaks.

Recommended Documentation Pattern

When documenting or testing a wrapper, record:

  • whether tip is enabled
  • which transaction currency is set
  • whether wait-for-card-removal is enabled
  • whether XML logging is enabled
  • where logs are written

Those values explain a large share of behavioural differences between two otherwise identical integrations.