Skip to content
Last updated

Installation and Setup For Development

A thin client NuGet package will be shared when you raise an integration request along with an example sample POS. If you need access to any additional documents, please reach out to integrationsupport@tyro.com .

Developing against the Integration Server Simulator

The Integration Server Simulator is a service that uses a set of scripts to mimic the behaviour of a real integration server connected to a real terminal. These scripts are triggered by different values in requests made to it, the details of which can be found in the next section.

Because this environment is scripted, it can be used in an automated test suite, and is hence perfect for using as part of a continuous integration environment. It does not require the integrator to have a terminal present to perform transactions.

To be able to use this environment, please use the apikey provided in the Simulator Environment column:

Simulator EnvironmentVTE19 Environment (Development Terminal)Production Environment
Always uses the API keyAlways uses the API keyNew API key would be generated per partner integration.
Api key for Simulator will be provided by the integration team during onboarding.Api key for VTE 19 will be provided by the integration team during onboarding.
API key is to be passed in POS-API-Key parameter along with POS-Product details at the time of defining the TTA constructor.API key is to be passed in POS-API-Key parameter along with POS-Product details at the time of defining the TTA constructor.
When MID and TID with the above API key hits the server, JSON settings file for the simulator environment is served.When MID and TID with the above API key hits the server, JSON settings file for the VTE19 environment is served.

As this environment is shared by many integrators, you will also need to acquire an exclusive MID on the integration server to ensure that you are able to perform testing without interruption from other integrators. Please get in touch with Tyro to be allocated this MID.

The process of pairing with a "virtual" terminal on the Integration Server Simulator is very different to that with a real terminal. Once the MID and TID are set, and the user clicks the "Commence Pairing" button, the operation will return almost immediately, simply because the pairing key request triggers a new key to be generated on the virtual terminal at that instant.

:::info In a web browser, customise and visit the following URL. https://integrationsimulator.test.tyro.com/terminals/[MerchantID]/ [TerminalID]/reset . Please note that there is no content in the response, the ISS simply acknowledges the request with a HTTP 200 OK. :::

Values for use against the Integration Server Simulator

Please refer this page for more details on magic numbers that can be used against integration server simulator https://integrationsimulator.test.tyro.com/docs/.

Perform a "Commence Pairing" operation with the TIDAnd the outcome will be
202Returns an HTTP response code of 202
400Returns an HTTP response code of 400
404Returns an HTTP response code of 404
409Returns an HTTP response code of 409
500Returns an HTTP response code of 500
503Returns an HTTP response code of 503
504Returns an HTTP response code of 504
Non-numeric or negative valueReturns an HTTP response code of 404
OtherAlways returns a new key value
Perform a "Verify Key" operation with the TIDAnd the outcome will be
202HTTP response code of 202
400HTTP response code of 400
404HTTP response code of 404
409HTTP response code of 409
500HTTP response code of 500
503HTTP response code of 503
504HTTP response code of 504
Non-numeric or negative valueReturns an HTTP response code of 404
OtherAlways returns "Front Desk #1" and "08.00.00", and the terminal name and version respectively
Start a transaction with AmountAnd the Outcome will be
10000EFTPOS, Approved
10001EFTPOS, Declined
10008EFTPOS, Approved with Signature
10011EFTPOS, Approved VIP
10200Visa, Approved
10201Visa, Declined
10208Visa, Approved with Signature
10211Visa, Approved VIP
10300MasterCard, Approved
10301MasterCard, Declined
10308MasterCard, Approved with Signature
10311MasterCard, Approved VIP
10400American Express, Approved
10401American Express, Declined
10408American Express, Approved with Signature
10411American Express, Approved VIP
10500Diners Club, Approved
10501Diners Club, Declined
10508Diners Club, Approved with Signature
10511Diners Club, Approved VIP
10600JCB, Approved
10601JCB, Declined
10608JCB, Approved with Signature
10611JCB, Approved VIP
60000Transaction is cancelled
660EFTPOS, Auth times out and reversal succeeds
662Visa, Auth times out and reversal succeeds
880EFTPOS, System error
882Visa, System error
202Returns an HTTP response code of 202
400Returns an HTTP response code of 400
403Returns an HTTP response code of 403
404Returns an HTTP response code of 404
500Returns an HTTP response code of 500
501Returns an HTTP response code of 501
503Returns an HTTP response code of 503
504Returns an HTTP response code of 504
11200Visa, issued in EUR, Approved
11201Visa, issued in EUR, Declined
11208Visa, issued in EUR, Approved with Signature
11211Visa, issued in EUR, Approved VIP
11300MasterCard, issued in EUR, Approved
11301MasterCard, issued in EUR, Declined
11308MasterCard, issued in EUR, Approved with Signature
11311MasterCard, issued in EUR, Approved VIP
20200Returns an HTTP response code of 202 during the first update request
40000Returns an HTTP response code of 400 during the first update request
40300Returns an HTTP response code of 403 during the first update request
40400Returns an HTTP response code of 404 during the first update request
50000Returns an HTTP response code of 500 during the first update request
50300Returns an HTTP response code of 503 during the first update request
50400Returns an HTTP response code of 504 during the first update request
120208Integration Server Simulator will return a HTTP response code of 202 when a send input or cancel request is submitted
140008Integration Server Simulator will return a HTTP response code of 400 when a send input or cancel request is submitted
140308Integration Server Simulator will return a HTTP response code of 403 when a send input or cancel request is submitted
140408Integration Server Simulator will return a HTTP response code of 404 when a send input or cancel request is submitted
141008Integration Server Simulator will return a HTTP response code of 410 when a send input or cancel request is submitted
150008Integration Server Simulator will return a HTTP response code of 500 when a send input or cancel request is submitted
150308Integration Server Simulator will return a HTTP response code of 503 when a send input or cancel request is submitted
150408Integration Server Simulator will return a HTTP response code of 504 when a send input or cancel request is submitted

Testing the Integrated Reporting functions against the Integration Server Simulator

We have adopted a similar approach for testing the Integrated Reporting functions in that certain values of the mid, tid and the key will produce different results.

Mids

MidEffect
200Valid
500HTTP status code 500: Server Error
504HTTP status code 504: Gateway Timeout
OtherHTTP status code 400: Bad Request

Tids

TidEffect
200Valid
Any other HTTP status code403: Authentication Failed

Keys

KeyEffect
tyro123Valid
Any other HTTP status code403: Authentication Failed
HTTP status code 400: Bad Request

Terminal Business Day

DateEffect
Within the last 7 daysValid
Prior to last 7 daysHTTP status code 400: Bad Request
In the futureEmpty results
Not formatted as yyyyMMddHTTP status code 400: Bad Request

Report Type

Report TypeEffect
summaryReturns summary report
detailReturns detail report
Returns summary report
OtherHTTP status code 400: Bad Request

Testing the Integrated Manual Settlement function against the Integration Server Simulator

The integrated manual settlement function can be test against the integration server simulator and the different responses can be generated by changing the tid value.

TIDResponse
200OK (SUCCESS)
333OK (ALREADY_SETTLED)
202Integration server is not ready
400Bad request
403Authentication Failed
404Page not found
500Server error
501Not implemented
503Terminal busy
504Timed out

Testing the Integrated Bar Tabs feature against the Integration Server Simulator

AmountDescriptionResultExtra Information
$102.00Open tab with a Visa cardAPPROVEDCompletion reference from this transaction can be used to close or void the tab.
$103.00Open tab with a MasterCardAPPROVEDCompletion reference from this transaction can be used to close or void the tab.
$104.00Open tab with an Amex cardAPPROVEDCompletion reference from this transaction can be used to close or void the tab.
$105.00Open tab with a Diners cardAPPROVEDCompletion reference from this transaction can be used to close or void the tab.
$106.00Open tab with a JCB cardAPPROVEDCompletion reference from this transaction can be used to close or void the tab.
$102.08Open tab with a Visa cardAPPROVED WITH SIGNATURE
$103.08Open tab with a MasterCardAPPROVED WITH SIGNATURE
$104.08Open tab with an Amex cardAPPROVED WITH SIGNATURE
$105.08Open tab with a Diners cardAPPROVED WITH SIGNATURE
$106.08Open tab with a JCB cardAPPROVED WITH SIGNATURE
$102.01Open tab with a Visa cardDECLINED
$103.01Open tab with a MasterCardDECLINED
$104.01Open tab with an Amex cardDECLINED
$105.01Open tab with a Diners cardDECLINED
$106.01Open tab with a JCB cardDECLINED
$2.02Error code 202 on initiateERROR
$4.00Error code 400 on initiateERROR
$4.03Error code 403 on initiateERROR
$4.04Error code 404 on initiateERROR
$5.00Error code 500 on initiateERROR
$5.03Error code 503 on initiateERROR
$5.04Error code 504 on initiateERROR
$2202.00Open tab with a Visa card but error code 202 on closeAPPROVED followed by ERROR
$2400.00Open tab with a Visa card but error code 400 on closeAPPROVED followed by ERROR
$2403.00Open tab with a Visa card but error code 403 on closeAPPROVED followed by ERROR
$2404.00Open tab with a Visa card but error code 404 on closeAPPROVED followed by ERROR
$2500.00Open tab with a Visa card but error code 500 on closeAPPROVED followed by ERROR
$2503.00Open tab with a Visa card but error code 503 on closeAPPROVED followed by ERROR
$2504.00Open tab with a Visa card but error code 504 on closeAPPROVED followed by ERROR
$2600.00Open tab but UNKNOWN_TRANSACTION on closeAPPROVED followed by UNKNOWN_TRANSACTION
$2601.00Open tab but ALREADY_VOIDED on closeAPPROVED followed by ALREADY_VOIDED
$2602.00Open tab but ALREADY_COMPLETED on closeAPPROVED followed by ALREADY_COMPLETED
$3202.00Open tab with a Visa card but error code 202 on voidAPPROVED followed by ERROR
$3400.00Open tab with a Visa card but error code 400 on voidAPPROVED followed by ERROR
$3403.00Open tab with a Visa card but error code 403 on voidAPPROVED followed by ERROR
$3404.00Open tab with a Visa card but error code 404 on voidAPPROVED followed by ERROR
$3500.00Open tab with a Visa card but error code 500 on voidAPPROVED followed by ERROR
$3503.00Open tab with a Visa card but error code 503 on voidAPPROVED followed by ERROR
$3504.00Open tab with a Visa card but error code 504 on voidAPPROVED followed by ERROR
$3600.00Open tab but UNKNOWN_TRANSACTION on voidAPPROVED followed by UNKNOWN_TRANSACTION
$3601.00Open tab but ALREADY_VOIDED on voidAPPROVED followed by ALREADY_VOIDED

Other scenarios:

  1. Open tab using an amount of $0.00 and the simulator returns error code 400
  2. Open tab using a negative amount and the simulator returns error code 400
  3. Open tab using a non-number and the simulator returns error code 400
  4. Open tab using an amount of $102.00 and close tab using an amount of $103.00 as the final amount and the simulator returns InvalidAmount
  5. Close tab using an amount of $0.00 as the final amount and the simulator returns error code 400
  6. Close tab using a negative amount as the final amount and the simulator returns error code 400
  7. Close tab using a non-number as the final amount and the simulator returns error code 400
  8. Close tab with an empty completion ref and the simulator returns error code 400
  9. Close tab for a tab that has already been completed and the simulator returns ALREADY_COMPLETED
  10. Void tab with an empty completion ref and the simulator returns error code 400
  11. Void tab for a tab that has already been completed returns ALREADY_COMPLETED
  12. Void tab for a tab that has already been voided returns ALREADY_VOIDED