Skip to content
Last updated

Tyro Terminal Adapter (TTA)

This is the TTA library that supports newer .net and means to deprecate old TTA which is for .net framework up to 3.5.

Existing Interfaces Covered


This library provides the same transacting functionalities via the same set of interfaces from old TTA as listed below:

  • ITerminalAdapter
  • ITerminalAdapterHeadless
  • ITerminalAdapterReports
  • ITerminalAdapterSettlement
  • ITerminalAdapterTipping
  • ITerminalAdapterEasyclaim
  • ITerminalAdapterTabCompletion
  • ITerminalAdapterPreAuthCompletion
  • ITerminalAdapterHealthpoint

New Interfaces Introduced


These are the new features added via the new feature interfaces:

  • IUtilityLauncher
    This is used to launch utility apps like Configurator.

Components Removed


This new library streamlines TTA solution by making following components deprecated:

  • The registry usage
    The per user settings are moved to user config file in %UserProfile%\AppData\Local\Tyro\config.json. The global settings are moved to online settings.json file to be hosted by TYRO.
  • Installer
    This is no longer needed as no installation is required to use TTA functionality on client machine.
  • Filewatcher
    This is no longer supported.
  • RMS COM
    This is no longer supported.
  • Updater & Telemetry
    This is no longer required.
  • Compact Framework
    The support for compact framework is removed as it no longer exists.

How To Use


Before initiating any transactions (purchase, refund etc.), please make sure Tyro terminal is paired with POS using the configurator. Examples of launching configurator and initiating a transaction can be found below.

To use this library without dependency injection

  • Configure the client with a valid API key granted by TYRO
TtaClient.ConfigureClient("your api key");
  • Use class Tyro.Terminal.Adapter.ThinClient.TtaClient to obtain the instance of the desired TTA feature interface and invoke TTA functionalities
// launch configurator for pairing
var utilityLauncher = TtaClient.GetRequiredTtaFeature<IUtilityLauncher>();
await utilityLauncher.LaunchConfiguratorAsync();

// initiate a refund transaction
var terminalAdapter = TtaClient.GetRequiredTtaFeature<ITerminalAdapter>();
terminalAdapter.Refund(111);

To use with MS dependency injection

  • Register TTA features in IServiceCollection with a valid API key granted by TYRO
services.AddTtaFeatures("your api key");
  • Inject desired TTA feature interface to your business class and invoke TTA functionalities
public class SomeBusinessClass
{
    private readonly IUtilityLauncher _utilityLauncher;
    private readonly ITerminalAdapter _terminalAdapter;

    public SomeBusinessClass(IUtilityLauncher utilityLauncher, ITerminalAdapter terminalAdapter)
    {
        _utilityLauncher = utilityLauncher;
        _terminalAdapter = terminalAdapter;
    }

    public async Task SomePairMethod()
    {
        await utilityLauncher.LaunchConfiguratorAsync();
    }

    public void SomeRefundMethod()
    {
        terminalAdapter.Refund(111);
    }
}

Demo App


There is an example POS app available to showcase how to integrate the TTA library and use its features.