ECR API.

Make a transaction

Make a transaction

post/makeTransaction

Request

  • Base URL
    https://test.tecs.at/tecsclientrest-auth
  • URL
    https://test.tecs.at/tecsclientrest-auth/makeTransaction
  • Auth
    • HTTP bearer
    • or HTTP basic

Request body

amountstring required

Numeric Transaction Amount. According to the ISO 4217 currency exponent, for example:

  • EUR (exponent = 2): 12,55 EUR is represented as "1255"
  • BYR (exponent = 0): 15000 BYR is represented as "15000"
authorization_numberstring

For Gratuity (msg type 0009): the authorization number of the original transaction. Otherwise, leave this field empty.

card_numberstring required

Depends on the transaction scenario:

  • Standard Pin Pad transaction: leave empty.
  • Manual PAN input: provide card number + "_" + expiration date (YYMM).
  • Swiped card on ECR: include Track2 data.
  • Cancellation/Capture (msg type 0013): "TXID" + original transaction number.
  • Gratuity (msg type 0009) or Credit note (msg type 0011): "TXID" + original transaction number.
  • Cancellation/Capture from different terminal: "TXID" + "" + "" (e.g., "TXID00000000001234567890_01_88091234").
currencystring required

ISO 4217 Alpha Currency Code (e.g., "EUR", "USD").

cvc2string

Card Verification Code.

desired_currencystring

ISO 4217 Alpha Currency Code in which the transaction will be processed (e.g., "EUR", "USD").

ecr_datastring

ECR Data field used to transfer user information for private-labeled cards (e.g., Fleet Card Company such as UTA, outex). This field is sent as received.

languagestring

ISO 639-1 language code used by the Pin Pad user interface during the transaction (e.g., "en", "de", "es").

message_typestring

Message type code. Allowed values include:

  • 0001 = Purchase, Balance, or Preauthorization
  • 0005 = Purchase with authorization number
  • 0009 = Gratuity
  • 0011 = Credit note
  • 0013 = Cancellation/Capture
  • 0015 = Pre-paid (Mobile Recharge)
  • 0017 = Abort ongoing transaction
  • 0018 = External reader device restart command
  • 0027 = Voucher/Coupon generation
  • 0029 = Card to Card transfer
  • 0034 = End of day (Internal TC only)
  • 2667 = Get connection status (Internal TC only)
  • 2668 = Terminal send diagnostic message (Internal TC only)
  • 4544 = Kill application (Internal TC only)
  • 9043 = Get terminal status
  • 9999 = Initiate CTLS tap event simulator
  • 7976 = Pops-up terminal system menu (Internal TC only)
passwordstring

Password - currently not used (filled with spaces).

payment_reasonstring

Payment reason (e.g., "Taxi journey"). Should be agreed with the acquirer. For Prepaid/Mobile recharge (msg type 0015): "+" followed by Operator Code and optional phone number. (UTF-8 encoded; maximum binary size is 39 bytes.)

payment_reasonAsBytestring[]

Payment reason represented as a byte array.

personal_idstring

Identification of the current user of the ECR or Terminal.

receipt_layoutstring

Receipt layout identifier.

receipt_numberstring

Receipt number.

terminal_numberstring required

Terminal number provided by TECS. For Cancellation/Capture (msg type 0013), this is the terminal number of the original transaction.

transaction_date_timestring required

Transaction date and time (format: yyyymmddhhmmss).

transaction_idstring required

Unique transaction identifier. Must be unique for every transaction performed on the specified Terminal.

transaction_origin_identifierstring

Transaction origin identifier:

  • 1 = Face to Face (Customer present)
  • 2 = MOTO (Customer not present)
  • 4 = Capture/Completion
  • 5 = Pre Authorization
  • 7 = Balance
transaction_origin_indicatorstring

Transaction origin indicator:

  • 0 = Request for card data on PIN PAD.
  • 1 = Face to Face (Magswipe on ECR, no PIN PAD).
  • 2 = Mail order/Telephone order/Manual entry (no PIN PAD).
transaction_placestring

The transaction place; the first 5 characters should contain a formatted zip code.

transaction_source_idstring

Identification number of the authorization source. In cancellation (msg type 0013), gratuity (0009), or credit note (msg type 0011), it should match the original transaction's source ID as provided by TECS.

Example request

{
  "amount": "1255",
  "card_number": "TXID00000000001234567890",
  "currency": "EUR",
  "cvc2": "123",
  "desired_currency": "USD",
  "ecr_data": "ECR123",
  "language": "en",
  "message_type": "0001",
  "password": "        ",
  "payment_reason": "Taxi journey",
  "payment_reasonAsByte": [
    "0x54",
    "0x61",
    "0x78",
    "0x69"
  ],
  "personal_id": "User123",
  "receipt_layout": "01",
  "receipt_number": "0123",
  "terminal_number": "88091105",
  "transaction_date_time": "20240430123045",
  "transaction_id": "TX1234567890",
  "transaction_origin_identifier": "1",
  "transaction_origin_indicator": "0",
  "transaction_place": "12345",
  "transaction_source_id": "01"
}

Response

successfully routed to TecsClient.

authorization_numberstring

Alphanumeric. Authorization number generated by TECS Authorization Host.

balance_amountstring

Alphanumeric. Maximum amount available.

bonus_pointstring

Alphanumeric. Actual bonus points.

card_numberstring

Alphanumeric. Depends on the transaction scenario:

  • Standard transaction: Card number + "_" + expiration date (YYMM).
  • For terminals activated for Card Reference number: "REF" + reference no + "" + expiry date (YYMM) + "" + last 4 digits from PAN + "_" + first 6 digits from PAN.
  • Cancellation/capture/credit note: "TXID" + transaction number as entered in request.
  • Non ISO based Card numbers: Card prefix + Card number. Card prefixes are defined by TECS and are stated in the document "NonISO_CardIssuer_Prefixes" provided by TECS.
credit_card_issuer_and_acquirer_companystring

Alphanumeric. Acquirer name + ";" + card brand (e.g. "VISA").

ecr_datastring

Alphanumeric. ECR Data field used to transfer user information for private labeled cards like Fleet Card Company (e.g. UTA, outex, etc.). This field is sent from TECS Server to ECR as received.

ex_feestring

Numeric. Exchange fee.

exchange_ratestring

Alphanumeric. Exchange rate at the time of transaction (e.g. 000000000000001,1223).

foreign_tx_amountstring

Alphanumeric. Transaction amount in desired currency.

merchant_addressstring

Alphanumeric. Merchant address.

merchant_namestring

Alphanumeric. Merchant name.

message_typestring

Numeric. Message type: 0002 = Transaction response.

operator_idstring

Alphanumeric. Identification of the operator of the TECS engine installation.

orig_stanstring

Numeric. STAN of original transaction (for Cancellation).

orig_tx_idstring

Numeric. Original transaction ID (for Cancellation).

receipt_footerstring

Alphanumeric. Receipt footer that must be printed on the receipt. Contains the authentication method ("PIN VERIFIED" or "SIGNATURE") and tags "AID:" and "AC:".

receipt_headerstring

Alphanumeric. Receipt header.

response_codestring

Numeric. Response code.

response_textstring

Alphanumeric. Response text - description of the response code. Text is UTF-8 encoded. Binary size of the field is 80 bytes.

serien_nrstring

Alphanumeric. If present, should be printed on the receipt.

stanstring

Numeric. TECS Trace Number.

svcstring

Numeric. Service code (returned by TECS Server). Must be printed on the receipt.

transaction_date_timestring

Numeric. Transaction date and time (format: yyyymmddhhmmss).

transaction_idstring

Alphanumeric. Transaction unique identifier (should be the same as sent in the authorization request).

transaction_typestring

Alphanumeric. Transaction type.

vu_numberstring

Alphanumeric. Merchant Contract number with acquirer.

Changes

No recorded changes to this operation across all 1 revision of this API.