Skip to content

ECR Integration

To make your shop processes even more effective, you might want to use our ECR Integration. Currently we are certified to offer the solution for Global Payments Europe s.r.o. for following countries:

  • Czech Republic
  • Slovakia
  • Hungary

What do I need to do to integrate POS Base with ECR

To integrate the POS Base application with a Global Payments terminal you will need:

1) hardware requested by Global Payments Europe s.r.o.

2) Navertica´s POS Base application intalled with finished configuration (the configuration for ECR itself will be described bellow)

3) Navertica´s POS GPE Connector application installed and configured (you can find the necessary configuration details described in the application help)

4) A local service for communication with the terminal used

Technical Details

The solution currently support GPE + iCT220 / IP protocol.

How does the solution work once integrated?

The integration doesn´t change the way you usually process your POS Transactions much. From the user perspective it only helps you while entering the bill payments in the step when you should enter the Autorization Code for the card payment transaction, though it would be good to go throug the changes in the standard processes with or without the integration.

Processing Bill Payments and Service Invoice Payments

The POS ECR integration is made in all of the basic shop processes.

Note

Once the payment is marked as Processed By ECR in the Payment Interface, you are not able to delete the payment line. Please take that into account while processing manual payments.

Sucessful payment

If you process a general payment of POS Bill, you enter the card payment in the POS Payment Interface. Two new field have been added:

  • Processed by ECR (in case the posting itself fails in BC, but the payment has been finished, this field will be ticked. If this field is ticked, the terminal won´t try to process payment again)
  • Manually processed by (in case the user for some reason need to enter the transaction manually, his ID will be marked to the line)

Payment Interface

The processing of the payment is the same for processing bill payments and for processing service invoice payments. All fuctions should be available for both actions.

After selecting the payment method Card and entering the relevant amount, select the action "Close and Post". You will see a dialogue showing the progress of the communication. The dialogue is counting the time spent with the communication with the ECR device. The timer resets after each handshake in case the transaction takes longer than one minute (e.g. the user must enter some data on the terminal).

ECR Communication in Progress

In case the card used for the payment requeres a signature, the user operating POS will get an application dialogue asking to confirm the signature of the customer. If the user presses YES, he accepts the signature of the customer and the payment will be finished. If the user presses NO, the payment is not accepted.

ECR Communication Signature Requirement

If the process is sucessful the result is a bill being posted and printed from POS Interface.

If the payment by multiple cards is selected, the user has to process each payment separatly. They are sent to the ECR terminal in the order in which they have been entered to the Payments Interface. Both payments need to be finished succesfully for the bill to be posted.

The result of the ECR Transaction is that the authorization code is transferred automatically from the ECR device to POS and is noted into the posted document Payment Methods

ECR Communication Posted Document Payment Methods

It is also transeffered as External Document Number into the customer ledger entries and can therefore be used for payment reconcilliation.

ECR Communication Posted Document Customer Ledger Entries

The details of the communication with the ECR device is stored in the ECR entries. The table of nine entries. The entries have following meaning (in the order they are being transfered):

  1. Line with type PAYMENT including the variable symbol of the transaction, the amount and the currency code. This line is sent from BC to the ECR, all other lines are received by BC from the ECR
  2. Line with type CARDID including masked number of the card by which the payment has been made
  3. Line with type ISSUER including the name of the company that issued the card (e. g. MASTERCARD, VISA)
  4. Line with type AUTH that contains the authorization symbol of the transaction that is then noted to the document payment line
  5. Line with type VS not including any details important to the user
  6. Line with type PREAUTH not including any details important to the user
  7. Line with type SEQ not including any details important to the user
  8. Line with type AMOUNT including the ammount of the transaction in the terminal notation (not including the thousand and decimal separator)
  9. Line with type OK not including any details important to the user

ECR Entries For Successful Payment

If the transaction requires signature, the step 9 includes the information that the signature is necessary to finish the payment. Also the confirmation of the user in POS is noted to the POS transactions by an additional line. This line also contains the information, if the signature was valid or not (ECR entries for a transaction for a card with signature needed are shouwn on the screenshot bellow)

ECR Entries For Successful Payment with Signature

Payment failure

The user can see payment failure from various reasons. Each situation requires different behaviour therefore they will be described separately.

Insuficient Card Balance

One of the most common reasons why the payment can´t be processed is that the card is refused by the ECR, e.g. because the balance on the card is not sufficient or the transaction limit has been exceeded.

The result of this is that the payment itself is cancelled. The user will be notified of this result by the application dialogue.

ECR Communication Payment Declined

In this case the user should decide if it makes sense to process the payment again (sometimes it helps to insert the card to the terminal) or if another payment method should be applied for the document. If the user wants to restart the payment transaction with ECR, its enought to use the "Close and Post" action again.

In case of this reason for payment failure, there will be 6 ECR entries:

  1. Line with type PAYMENT including the variable symbol of the transaction, amount and currency code. This is the only line that is transfered from BC do ECR. All the other lines are transfered from the ECR to BC.
  2. Line with type CARDID in this case not including any information (the card hasn´t been accepted by the terminal)
  3. Line with type ISSUER in this case not including any information (the card hasn´t been accepted by the terminal)
  4. Line with type AUTH not including any information relevant to the user
  5. Line with type PREAUTH not including any information relevant to the user
  6. Line with type ERR in this case including the error code and the message giving further detail about the error reason

ECR Entries For Declined Payment

Invalid signature

Payment with requested signature are processed in the way that the terminal first decreses the user account balance and sends back an information to BC that the user should check the signature. If the user selects YES in the application dialogue, the payment is processed successfully. If the user selects NO in the application dialogue, the payment is not accepted and a reversal is iniciated with the terminal.

ECR Communication Signature Requirement

If the reversal is iniciated (ergo the signiture is not accepted by the shop staff), the user will be informed of that by seeing a communication dialogue informing the user that a reversal request is sent to the ECR. The ECR will then print a cancellation document for the user.

ECR Communication Signature Invalid

After the reversal is finished by the terminal, the user will be informed of the overall negative result of the payment by following dialogue. Since no posting too part yet in the POS Interface, the user doesn´t have to perform any cancellation in BC.

ECR Communication Signature POS Notification

The user is then returned to the bill. He has an option to go to the payments interface and restart the payment or change the payment method in case the customer is not able to pay by a credit card.

In this case the communcation with ECR is separated into two section. First the payment is made, for this part of the transaction following ECR entries are created:

  1. Line with type PAYMENT including the variable symbol, amount and currency code of the payment transaction. This is the first entry transferred from BC to ECR. The following entries leading to a successful payment are transfered from ECR to BC.
  2. Line with type PING including no data important for the user (this line can occure in all cases in case the transaction take longer than handshake time to process, it has no meaning for the processing, it just leads to the transaction staying open between ECR and BC)
  3. Line with type CARDID containing the number of the card by which the payment has been made
  4. Line with type ISSUER containing the issuer of the card by which the payment has been made
  5. Line with type AUTH containing the authorization code of the transaction
  6. Line with type VS containing no information relevant for the user
  7. Line with type PREAUTH containing no information relevant for the user
  8. Line with type SEQ containing no information relevant for the user
  9. Line with type AMOUNT containng the confirmed amount of the payment with no thousand or decimal separator
  10. Line with type OK and request for the confirmation of the signature
  11. Line with type OK and noted result of the signature that should iniciate new transaction of reversal (because the signature has not been accepted)

The reversal transaction includes following ECR entries:

  1. Line with type REVERSE and the variable symbol containing the authorization symbol of the payment made to the document and the amount of the transaction. This communication goes from POS to the ECR
  2. Line with type CARDID with no information relevant to the user
  3. Line with type ISSUER with no information relevant to the user
  4. Line with type AUTH with no information relevant to the user
  5. Line with type VS with no information relevant to the user
  6. Line with type PREAUTH with no information relevant to the user
  7. Line with type SEQ with no information relevant to the user
  8. Line with type OK with no information relevant to the user

ECR Entries For Failed Signature

One of Multiple Payments Fails

If one of the multiple payment fails, you will see the successful payment marked on the terminal.

POS Payment Interface - Partially Successful Payment

The ECR entries for the succesful payment are the same as discribed in the successfull payment chapter. THe ECR entries for the declined payment are the same as described in the chapters above based on the reason why the payment has been declined.

In this case the user can either restart the payment by clicking "Close and Post" or he can change the payment method in the payment interface (for example to cash payment). He can also process the payment manually. The manual processing will be described in its own chapter.

Transaction timeout

The last of most common errors you can get in the communication with the ECR terminal is the transaction timeout or some other technical issues or for example it could be the case when the user clicks "Cancel" on the dialogue while processing the payment.

In thsi case the payment is succesfully processed by the shop terminal, but the information is not correctly transfered to BC. The ECR entries look like this. They look the same as for the successful payment but in this case they are not marked as Processed (they are in status Processed = False)

ECR Entries - not processed

In this case the user should use the action "Close and Post" again. The POS terminal will go through the unprocessed ECR Entries and try to match them to this payment. If such payment is found, the payment transaction with ECR is not iniciated again. The ECR entries are then marked as processed.

Manual Processing Of The Payment

If for some reason the communcation with ECR is not working (e. g. problems with the local service), the user still can process the payment manually. A new line action is available called "Mark as Proccessed".

POS Payment Interface - marking payment as processed

After using this action an application dialogue for entering authorization code will be displayed.

POS Payment Interface - dialogue for entering authorization code

After confirming the application dialogue the payment in the payment interface will be marked as Processed and the field Manually Processed By will be filled. The user can afterwards use the "Close and Post" action without a payment transaction being iniciated with the payment terminal.

POS Payment Interface - payment processed

Payment cancellations

If a payment has already been made, but the user for some reason wants to cancel the payment before finishing the posting of the bill in POS. For this purpose the action "Cancel Payment" has been prepared in the POS payment interface. The payment in the payment interface has to be marked as "Processed by ECR" before a user can use this action, otherwise the user will get an error message.

POS Payment Interface - Cancel Payment Action

Atfter running this function a confirmation dialogue is shown to the user asking to confirm the reversal transaction and its amount. If the dialogue is confirmed, the ECR transaction is started.

POS Payment Interface - Cancel Payment Confirm

Note

You can only use this action for the payments that were processed by the terminal, otherwise you will get an error. The purpose of this action is to do a reversal to the same card that the payment was made from.

If the POS reversal transaction is succesfull, you will find the following ECR entries in BC.

ECR Entries - Payment Reversal

After the reversal is successfully finished, the payment in the payment interface is marked as Processed by ECR equals false. The user can then make another card payment to this line or delete the payment line.

Processing Bill Cancellations and Service Credit Memos

You can be processing credit memo in three way in POS interface:

  1. you can use the action "Cancel Bill"
  2. you can use the action "Create Credit Memo"
  3. you can use the action "Create Service Credit Memo"

In case of "Cancell Bill" action the payment is returned in the same way it was made, so the user can´t change the payment method from card to cash. The transaction is transfered to the ECR and the user is asked to put the card to the terminal.

If the return is processed correctly, eight ECR entries are created:

  1. Line with type MERCHRET containing the variable symbol, the amount and the currency code for the payment.
  2. Line with type CARDID containing the ID of the card by which the payment was made
  3. Line with type ISSUER containing the issuer of the card by which the payment was made
  4. Line with type AUTH containing the authorization code of the transaction
  5. Line with type VS containing no information relevant for the user
  6. Line with type PREAUTH containing no information relevant for the user
  7. Line with type SEQ containing no information relevant for the user
  8. Line with type OK containing no information relevant to the user

ECR Entries - Goods Return

The authorization code from the terminal is also transfered to the posted customer ledger entries for payment reconcilliation.

ECR Return - Customer Ledger Entries

In case of the "Create Credit Memo" action a credit memo is created and the user then has to enter the payment methods into the payment interface. In this case the user should select the payment methods accordingly. The rest of the processing of the payment is the same. The same method should also be used in case of processing service credit memo.

ECR Entries

The ECR entries list is a list of all the communication between the ECR device and POS (BC). It contains following information:

  • general connection to the service
  • payment processing status
  • reversal processing status
  • return processing status

The ECR entries list contains following information:

Field Meaning
Entry No The number of the entry (automatically generated by BC when creating the entry)
Direction Two directions are possible for POS transactions: ECR2POS (ECR sends data to BC), POS2ECR (BC sends data to ECR)
TID The ID of the transaction with the ECR terminal
Server Name The name of the server that is used for the communication
Data and Time Date and time where the informations have been received
ECR ID ID of the ECR device that is processing the payment
Type The type of the entry, which determines what should be done with the entry. The list of possible Types will be listed bellow.
Variable Symbol It´s the symbol of the transaction that it transfered from BC to ECR when processing a payment
Amount The amount of the transaction that was sent to the ECR
User ID This field is currently not used
Currency ID This is the ID of the currency in which the payment is made. Note that the device has a list of supported currencies and it won´t accept any other currency.
Message 1: It contains the result of the operation from the terminal, e.g. additional information or the error code
Message 2: It contans additional information from the terminal, e.g. detailed error message
Processed This field determines if the ECR entry has been processed by POS. If it is set to YES, then the transaction has been successfully processed. If it is set to NO, then the transaction hasn´t been proccessed yet.
Processed Date and Time The date and time when the ECR enty has been processed.

As promised above, now the list of possible types of ECR entries will be given.

ECR Entry Type Meaning
CONN This type is used when connecting ECR through the local service. If the connection is successful, this ECR entry is created alongside with API and APIAUTH. If this entry isn´t created after connection, you should check the connection setup, probably there´s something wrong.
API This type is used when connecting ECR through the local service and it stores the information about the service. This entry is only created, if the connection to the service is successful.
APIAUTH This type is used when connecting ECR through the local service and the information in it is blured to the user. This entry is only created, if the connection to the service is successful.
HANDSHAKE This type is used when a user triggers a handshake with the ECR terminal using the "Handshake" action from the ECR Termianls list. Note that some devices do not support handshake, therefore the result of this action might be that it´s not supported.
CLOSING This type is used when a user trigger a Closing priting using the "Closing" action from the ECR Terminals list. This leads to the ECR Closing being printed from the terminal, if such action is supported by the device.
ERR This type is used when the transaction end with an error (e. g. the payment couldn´t be processed, the ECR device was not found)
PING This type is used when the transaction with the ECR lasts longer than expected to keep the connection open. BC checks if the terminal is still alive and if it receives an answer, the connection continues with no apparent results for the user except the transaction timeout is zerod out and the timer starts again.
PAYMENT This type is used when a payment transaction is transfered to the ECR device. It then contains the variable symbol, amount and the currency ID.
REVERSE This type is used when a reversal transaction i transfered to the ECR Device. It contains the variable symbol and the amount. Note that the reversal transaction is not a return. A reversal can only be used for the transactions made with the ECR Device.
MERCHRET This type is used when a return transaction is transfered to the ECR Device. It contains the variable symbol, the amount and the currency code for the payment. In this case the user is asked to put the card to which the money should be returned on the terminal.
CARDID For successful payments and returns this entry then contains the masked number of the card by which the transaction has been paid.
ISSUER For successful payments and returns this entry then contains the name of the issuer of the card by which the transaction has been paid.
AUTH This is a type that is used for internal purposes of the communication.
PREAUTH This is a type that is used for internal purposes of the communication.
VS This is a type that is used for internal purposes of the communication.
SEQ This is a type that is used for internal purposes of the communication.
AMOUNT For payment and return transactions this line includes the amount that has been paid or returned.
OK This is the code that is returned in case the transaction was finished successfully. In case a payment with a signature necessary, this line can also contain the request for the signature contol.

What do I need to set up in POS Base?

The setup necessary to run the ECR integration is quite simple. It only takes a few minutes.

ECR Setup

For each ECR you will need to setup service information in the ECR Terminals setup. You may find the setup using the search bar by typing in "ECR Terminals".

ECR Terminal Setup from the menu

This will open a setup table in which you should enter following informations:

Field Meaning
ID The ID of your terminal (For GPE Terminals its called TID and its a six digit number)
Active If this checkbox is ticked, it means that the device is currently in use, ergo communication can be directed to the device
Server Name The name of the server on which the local service is running (the name is returned when the service is sucessfully connected - you can retrieve this information from ECR CONN entries and use the server name without domain identification)
Last Seen The date of the last time the terminal has been connected (this date is filled automatically by the service)
Device Type You may choose if the device is a Client or Server. If the option Server is selected, it means that BC is connecting to the device (this option should be used for GPE integration). If the otpion Client is selected, it means that the terminal is connecting somewhere, meaning it has to have the relevant setup on its side.
Device Address You should enter the IP address of the device into this field. You can get this address from your ECR device.
Device Port The port on which the device communicates. For the GPE integration it should be set to 2050.
Device Protocol The protocol that should be used for the communication. Note that the protocols are added by the connector apps (e.g. by GPE Connector). If you don´t see any available protocols, you should check if you have the connector application installed. For the integration to GPE Terminals you should select GPE + API.
Timeout (ms) You can adjust the timeout of the device. The default value is set to 60000 ms. For GPE terminal the timeout shouldn´t be set to less that 60 seconds because of the terminal handshake setup (if you set up lower timeout, you may reach issues when performing the transactions)

ECR Terminal Setup

There are 4 actions available from the ECR terminals setup:

  • Handshake
  • Closing
  • Update terminal
  • Entries

The "Handshake" action is available for the user to be able to check the connection to the terminal.

The "Closing" actiong allows the user to print out the terminal closing.

The "Update terminal" action allows the user to download the latest updates for the terminal. During the installation of the upates the terminal might restart several times.

The "Etries" action allows you to see all the ECR Entries for the communication with selected device. The ECR entries are the records of the communication with the terminal and contain the informations that were transmitted between POS and ECR.

POS Shop Terminals Setup

The setup you need to do for the POS-ECR integration is quite simple. All the setup is connected to the Shop Terminals setup. In the Shop Terminal Setup you will need to select which ECR terminal is used for which shop terminal. You may do that by assigning the ECR ID to each terminal connected to the ECR in the Sho Terminal setup.

Shop Terminal Setup

ECR Currencies Setup

For the currencies that you want to use for the ECR payments, you need to have a Currency card with the ISO code filled in.