v1

latestOpenAPI 3.1.02026-07-24153164.0 KB
ECR API.

Make a transaction

Make a transaction

post/makeTransaction

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.