Payment terminal TIMAPI.DLL
Moderator: Rathinagiri
Re: Payment terminal TIMAPI.DLL
I'm waiting for phisical terminal for my client today. I have to install it on Wednesday. If I find a little time, I will test it
Re: Payment terminal TIMAPI.DLL
Hi Edward
I tried browsing via UDP, it works without problems. SSL : Off
Best regards, Georg
I tried browsing via UDP, it works without problems. SSL : Off
Best regards, Georg
Re: Payment terminal TIMAPI.DLL
Hello Marek
will you have a payment terminal from WORLDLINE?
Georg
will you have a payment terminal from WORLDLINE?
Georg
Re: Payment terminal TIMAPI.DLL
1. Terminal detection by its ID.
2. Errors handling
3. Payment handling (beware with real cards, if you authorize the transaction you can be charged 123.45 EUR!!!)
2. Errors handling
3. Payment handling (beware with real cards, if you authorize the transaction you can be charged 123.45 EUR!!!)
Re: Payment terminal TIMAPI.DLL
Hello Edward.
Thanks for your help
Thank you for your notice. Everything is OK. I received a set of test payment cards for attestation. 6 test cards - security in case of damage 200Eur. Another IP address is entered in the terminal for testing.
Only after testing and approval will it go into full operation.
I have to use my Integrator ID for every transaction.
I'm going to look at your new edits and let you know what the terminal does.
Best regards, Georg
Thanks for your help
Thank you for your notice. Everything is OK. I received a set of test payment cards for attestation. 6 test cards - security in case of damage 200Eur. Another IP address is entered in the terminal for testing.
Only after testing and approval will it go into full operation.
I have to use my Integrator ID for every transaction.
I'm going to look at your new edits and let you know what the terminal does.
Best regards, Georg
Re: Payment terminal TIMAPI.DLL
Hi Edward
On a real payment terminal, I always end up on the Activate function
with error 700
I don't know if there is a problem with the values, cPosId := "POS1234" cUserID := "0".
I don't know what to replace them with in real operation.
This is a message from worldline
The quickest way to get familiar with the Integration is to use a proper (using your target programming language) ECR simulator (from the Extranet SDK package), connect to the test terminal (e.g. using terminal’s IP address), enable logs as FINEST and perform several test transactions. You can then see how the terminal communicates with the ECR and vice versa.
Please also remember that the terminal requires access to addresses and ports in the tables below:
TEST/ETU:
lp
HOST
ip address
name
1
Software download
153.46.253.140:8953 HTTP
tserv.ep2.telekurs.com
2
GKLP
153.46.254.218:62000 TCP
tgklp.telekurs.com
3
Configuration
153.46.253.139:8115 TCP
tsiconfig.ep2.telekurs.com
4
Initialisation
153.46.253.133:2262 TCP
tsiinit.ep2.telekurs.com
5
Authorisation
153.46.253.129:2261 TCP
tfe.ep2.telekurs.com
6
Direct/PMS delivery
153.46.253.135:2264 TCP
tmisubm.ep2.telekurs.com
And later (merchant/store LAN), for production:
PRODUCTION:
lp
HOST
ip address
name
1
Software download
153.46.253.156:8953 HTTP
serv.ep2.telekurs.com
2
GKLP
153.46.254.217:62000 TCP
gklp.telekurs.com
3
Configuration
153.46.253.155:8115 TCP
siconfig.ep2.telekurs.com
4
Initialisation
153.46.253.149:2252 TCP
siinit.ep2.telekurs.com
5
Authorisation
153.46.253.145:2251 TCP
fe.ep2.telekurs.com
6
Direct/PMS delivery
153.46.253.151:2254 TCP
misubm.ep2.telekurs.com
Best regards, Georg
On a real payment terminal, I always end up on the Activate function
with error 700
I don't know if there is a problem with the values, cPosId := "POS1234" cUserID := "0".
I don't know what to replace them with in real operation.
This is a message from worldline
The quickest way to get familiar with the Integration is to use a proper (using your target programming language) ECR simulator (from the Extranet SDK package), connect to the test terminal (e.g. using terminal’s IP address), enable logs as FINEST and perform several test transactions. You can then see how the terminal communicates with the ECR and vice versa.
Please also remember that the terminal requires access to addresses and ports in the tables below:
TEST/ETU:
lp
HOST
ip address
name
1
Software download
153.46.253.140:8953 HTTP
tserv.ep2.telekurs.com
2
GKLP
153.46.254.218:62000 TCP
tgklp.telekurs.com
3
Configuration
153.46.253.139:8115 TCP
tsiconfig.ep2.telekurs.com
4
Initialisation
153.46.253.133:2262 TCP
tsiinit.ep2.telekurs.com
5
Authorisation
153.46.253.129:2261 TCP
tfe.ep2.telekurs.com
6
Direct/PMS delivery
153.46.253.135:2264 TCP
tmisubm.ep2.telekurs.com
And later (merchant/store LAN), for production:
PRODUCTION:
lp
HOST
ip address
name
1
Software download
153.46.253.156:8953 HTTP
serv.ep2.telekurs.com
2
GKLP
153.46.254.217:62000 TCP
gklp.telekurs.com
3
Configuration
153.46.253.155:8115 TCP
siconfig.ep2.telekurs.com
4
Initialisation
153.46.253.149:2252 TCP
siinit.ep2.telekurs.com
5
Authorisation
153.46.253.145:2251 TCP
fe.ep2.telekurs.com
6
Direct/PMS delivery
153.46.253.151:2254 TCP
misubm.ep2.telekurs.com
Best regards, Georg
Re: Payment terminal TIMAPI.DLL
Have you tried connecting to the terminal using the "\TIMAPI_DotNet\DotNet\Examples\AdvancedEcr\AdvancedEcr.exe" client? By analyzing the logs, you can see what syntax to send and what responses to expect.
Generally, I base the analysis of ECR - EFT communication on this.
Did you set the "<sixml:IntegratorId>" field in the TIM_Login() function in the "cSIXml" variable definition to the correct value?
I set the value to 0 because I don't know what it should be in your case.
Maybe try to change:
UsrID variable according to documentation: https://six-tim.github.io/timapi/doc/cs ... nal_UserId
PosId variable: https://six-tim.github.io/timapi/doc/cs ... inal_PosId
It's hard for me to refer to the indicated addresses. Generally, without documentation of the SIXml protocol, it's a bit of a downhill job. Lots of trial and error operations, a little bit of guessing, a little bit of intuition.
Generally, I base the analysis of ECR - EFT communication on this.
Did you set the "<sixml:IntegratorId>" field in the TIM_Login() function in the "cSIXml" variable definition to the correct value?
I set the value to 0 because I don't know what it should be in your case.
Maybe try to change:
Code: Select all
FUNCTION TIM_Activate ( nSequenceNumber, cUserID )
Local cSIXml := '<?xml version="1.0" encoding="UTF-8"?>' + ;
'<sixml:Request xmlns:sixml="http://www.worldline.com/" ' + ;
'FunctionGroup="Admin" ' + ;
'Function="Activate" ' + ;
'SequenceNumber="' + AllTrim( Str( nSequenceNumber ) ) + '">' + ;
'<sixml:UsrId>' + cUserID + '</sixml:UsrId></sixml:Request>'
RETURN cSIXml
PosId variable: https://six-tim.github.io/timapi/doc/cs ... inal_PosId
It's hard for me to refer to the indicated addresses. Generally, without documentation of the SIXml protocol, it's a bit of a downhill job. Lots of trial and error operations, a little bit of guessing, a little bit of intuition.
Re: Payment terminal TIMAPI.DLL
Hi Edward
Thank you very much for your help.
I have the IntegratorId value set. It is assigned by WorldLine.
According to that instruction, UsrID, PosId are values that can be defined.
But as you write, no documentation of what it is good for.
Your solutions are always very interesting - instructive.
I'm going to take care of AdvancedEcr.exe
George
Thank you very much for your help.
I have the IntegratorId value set. It is assigned by WorldLine.
According to that instruction, UsrID, PosId are values that can be defined.
But as you write, no documentation of what it is good for.
Your solutions are always very interesting - instructive.
I'm going to take care of AdvancedEcr.exe
George
Re: Payment terminal TIMAPI.DLL
AdvancedEcr.exe it reports the same error.
I wrote for support, today is a holiday, so we'll see what I write tomorrow
Georg
I wrote for support, today is a holiday, so we'll see what I write tomorrow
Georg
Re: Payment terminal TIMAPI.DLL
What is the terminal's response to the TIM_GetFeatureRequest() query?
The terminal sends back a lot of parameters, I don't know what they mean and what they are for.
Maybe when logging in you need to return the same parameters as the terminal sends back
Perhaps in particular:
I'm guessing again 
The terminal sends back a lot of parameters, I don't know what they mean and what they are for.
Maybe when logging in you need to return the same parameters as the terminal sends back


Perhaps in particular:
Code: Select all
<sixml:ProtocolOptionList><sixml:ProtocolOption OptionType="sixml:ProtocolLevel">3</sixml:ProtocolOption><sixml:ProtocolOption OptionType="sixml:Guides">1</sixml:ProtocolOption><sixml:ProtocolOption OptionType="sixml:AutoCommit">0</sixml:ProtocolOption><sixml:ProtocolOption OptionType="sixml:Dcc">0</sixml:ProtocolOption></sixml:ProtocolOptionList><sixml:PrintOptionList>
