Installation and Setup For Development

info

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

Mid Effect
200 Valid
500 HTTP status code 500: Server Error
504 HTTP status code 504: Gateway Timeout
Other HTTP status code 400: Bad Request

Tids

Tid Effect
200 Valid
Any other HTTP status code 403: Authentication Failed

Keys

Key Effect
tyro123 Valid
Any other HTTP status code 403: Authentication Failed
HTTP status code 400: Bad Request

Terminal Business Day

Date Effect
Within the last 7 days Valid
Prior to last 7 days HTTP status code 400: Bad Request
In the future Empty results
Not formatted as yyyyMMdd HTTP status code 400: Bad Request

Report Type

Report Type Effect
summary Returns summary report
detail Returns detail report
Returns summary report
Other HTTP 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.

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

Testing the Integrated Bar Tabs feature against the Integration Server Simulator**

Amount Description Result Extra Information
$102.00 Open tab with a Visa card APPROVED Completion reference from this transaction can be used to close or void the tab.
$103.00 Open tab with a MasterCard APPROVED Completion reference from this transaction can be used to close or void the tab.
$104.00 Open tab with an Amex card APPROVED Completion reference from this transaction can be used to close or void the tab.
$105.00 Open tab with a Diners card APPROVED Completion reference from this transaction can be used to close or void the tab.
$106.00 Open tab with a JCB card APPROVED Completion reference from this transaction can be used to close or void the tab.
$102.08 Open tab with a Visa card APPROVED WITH SIGNATURE
$103.08 Open tab with a MasterCard APPROVED WITH SIGNATURE
$104.08 Open tab with an Amex card APPROVED WITH SIGNATURE
$105.08 Open tab with a Diners card APPROVED WITH SIGNATURE
$106.08 Open tab with a JCB card APPROVED WITH SIGNATURE
$102.01 Open tab with a Visa card DECLINED
$103.01 Open tab with a MasterCard DECLINED
$104.01 Open tab with an Amex card DECLINED
$105.01 Open tab with a Diners card DECLINED
$106.01 Open tab with a JCB card DECLINED
$2.02 Error code 202 on initiate ERROR
$4.00 Error code 400 on initiate ERROR
$4.03 Error code 403 on initiate ERROR
$4.04 Error code 404 on initiate ERROR
$5.00 Error code 500 on initiate ERROR
$5.03 Error code 503 on initiate ERROR
$5.04 Error code 504 on initiate ERROR
$2202.00 Open tab with a Visa card but error code 202 on close APPROVED followed by ERROR
$2400.00 Open tab with a Visa card but error code 400 on close APPROVED followed by ERROR
$2403.00 Open tab with a Visa card but error code 403 on close APPROVED followed by ERROR
$2404.00 Open tab with a Visa card but error code 404 on close APPROVED followed by ERROR
$2500.00 Open tab with a Visa card but error code 500 on close APPROVED followed by ERROR
$2503.00 Open tab with a Visa card but error code 503 on close APPROVED followed by ERROR
$2504.00 Open tab with a Visa card but error code 504 on close APPROVED followed by ERROR
$2600.00 Open tab but UNKNOWN_TRANSACTION on close APPROVED followed by UNKNOWN_TRANSACTION
$2601.00 Open tab but ALREADY_VOIDED on close APPROVED followed by ALREADY_VOIDED
$2602.00 Open tab but ALREADY_COMPLETED on close APPROVED followed by ALREADY_COMPLETED
$3202.00 Open tab with a Visa card but error code 202 on void APPROVED followed by ERROR
$3400.00 Open tab with a Visa card but error code 400 on void APPROVED followed by ERROR
$3403.00 Open tab with a Visa card but error code 403 on void APPROVED followed by ERROR
$3404.00 Open tab with a Visa card but error code 404 on void APPROVED followed by ERROR
$3500.00 Open tab with a Visa card but error code 500 on void APPROVED followed by ERROR
$3503.00 Open tab with a Visa card but error code 503 on void APPROVED followed by ERROR
$3504.00 Open tab with a Visa card but error code 504 on void APPROVED followed by ERROR
$3600.00 Open tab but UNKNOWN_TRANSACTION on void APPROVED followed by UNKNOWN_TRANSACTION
$3601.00 Open tab but ALREADY_VOIDED on void APPROVED 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
Copyright © Tyro Payments 2019-2022. All right reserved.