Hilfe
abbrechen
Suchergebnisse werden angezeigt für 
Stattdessen suchen nach 
Meintest du: 

REST API Schritt 2.4 Aktivierung einer Session-TAN

Christof.K
Autor ★
8 Beiträge

Hallo,

ich implementiere derzeit die REST-API in mein System, um automatisiert prüfen zu könne, ob bestimmte Rechnungen bezahlt wurden. Super, dass sich das mit der REST-API umsetzen lässt.

 

Der Autnehtifizierungsprozess mit den fünf Schritten (2.1 bis 2.5) funktioniert auch soweit und ich kann die Umsätze abrufen. Problematisch ist bisher lediglich, dass ich die Aktivierung der Session-TAN (Schritt 2.3) manuell aufrufen muss, nachdem ich die Freigabe in der comdirect App getätigt habe (ich nutze P_TAN).


Wenn ich den Schritt 2.3 ausführe, bevor ich die Freigabe in der App getätigt habe, bekomme ich eine Fehlermeldung (ist soweit ja auch richtig). Wenn den Schritt aber anschließend wiederhole, nachdem ich die Freigabe erteilt habe, dann fuktioniert es nicht mehr. Mache ich hier etwas falsch bzw. wie sollte man hier verfahren. Woher soll mein System wissen, wann die Freigabe erfolgt ist (gibt es hier die Möglichkeit einen Websoccet einzurichten?) Oder muss das Manuel durch den User eingegeben werden?

Ich hatte einfach gedacht, Schritt 2.3 in Abstand von x Sekunden durchzuführen, biss die Freigabe erfolgt.

 

Danke vorab für die Antwort.

Beste Grüße

Christof

21 ANTWORTEN

ehemaliger Nutzer
ohne Rang
0 Beiträge

Hallo @Christof.K,

 

herzlich willkommen in unserer Community.

 

Ein super Anwendungsfall – genau für sowas stellen wir die comdirect REST API unseren Kunden zur Verfügung!

 

Du nutzt offenbar P_TAN_PUSH? P_TAN wäre das PhotoTAN-Verfahren. Im ersten Schritt 2.3 Anlage Validierung einer Session-TAN erzeugst du eine TAN-Challenge, die in deiner App erscheint. Erst nach dem Freigeben in der App darf der Schritt 2.4 Aktivierung einer Session-TAN durchgeführt werden.

 

Wir arbeiten übrigens daran, Schnittstellen zur Verfügung zu stellen, mit der dein Client herausfinden kann, ob die PushTAN in der App freigegeben wurde. Bis dahin muss dein Client zur Sicherheit einige Sekunden bis zum Schritt 2.4 warten, damit die Freigabe in der App inzwischen sicher beim Server angekommen ist. Da im Schritt 2.3 eine TAN-Challenge erzeugt wird, die unbedingt im Schritt 2.4 im Header „x-once-authentication-info“ mitgeschickt werden muss, gehören 2.3 und 2.4 also zusammen und es ist damit nicht möglich, mehrfach den Schritt 2.4 durchzuführen. Wenn du das erste Mal den Schritt 2.4 durchführst und der Server hat das Freigeben in der App noch nicht empfangen, dann wird die Challenge entwertet.

 

Viele Grüße

Mario

Christof.K

Vielen Dank für die Antwort. Das ist genau das Verhalten, dass ich auch beobachte. Ich lasse jetzt Schritte 2.1 bis 2.3 hintereinanderlaufen und der User muss nach dem bestätigen der P_TAN_PUSH manuell die Schritte 2.4 und 2.5 starten bevor er einen Kontorundruf (Schritt 4.3) startet. Funktioniert soweit auch ganz gut bisher.

 

Eine Schnittstelle zur Prüfung, ob die TAN bestätigt wurde, wäre aber natürlich noch besser, dann könnte man es noch ein wenig besser gestalten. Bin gespannt auf eure Weiterentwicklung.

 

Beste Grüße

Christof

ZwenAusZwota

Hallo und ein gesundes neuen Jahr an die Entwickler!

 

Gibt es beim Schritt 2.4 inzwischen Fortschritte? 

 

Danke - Sven

SMT_Jessica
ehemaliger Mitarbeiter
1.179 Beiträge

Hallo @ZwenAusZwota,

 

auch dir ein gutes Neues und herzlich willkommen in der Community!

 

Wir haben hierzu leider keine Neuigkeiten.  

 

Viele Grüße

Jessica

_hi0b_

Hallo zusammen..

genau das Problem habe ich auch gerade. Ich programmiere in C++ mit Qt und wollte auf eine Antwort der Api warten, aber es kommt wohl nach 2.3 direkt ein Status Code 201 zurück und dann weiss ich auch nicht weiter. Baue ich ein Sleep von ein paar Sekunden ein und gebe während dessen den Auftrag per PushTan frei, klappt es, bin ich zu langsam, kommt ein HTTP-Error 400. Gibt es nun schon eine Möglichkeit für den Client herauszufinden, ob eine Freigabe getätigt wurde?

 

Viele Grüße,

Ray..

jsattler
Autor ★★
14 Beiträge

Hi @Christof.K ,

ich hatte das gleiche Problem und es gibt mittlerweile eine Lösung.

Als Antwort auf Schritt 2.3 erhaeltst du einen Header "x-once-authentication-info".

In diesem Header stehen die verschiedenen TAN Typen und zusaetzlich ein JSON Objekt mit dem Namen "link".  Dort findest du einen Link und weitere Informationen wie du den Status der TAN Aktivierung prüfen kannst. In dem GET Request musst du weiterhin dein Bearer Token und die x-http-request-info aus den vorangegangen Schritten mitgeben. Als Antwort erhältst du etwa sowas:

{
    "authenticationId": "XXXXXXXXXXXXXXXXX",
    "status": "AUTHENTICATED"
}
oder
{
    "authenticationId": "XXXXXXXXXXXXXXXXX",
    "status": "PENDING"
}

In meinem Anwendungsfall frage ich den Status in regelmäßigen Abständen ab. Das funktioniert soweit gut.

 

Ich hoffe das hilft Dir.

 

@ehemaliger NutzerIn den API Docs ist das leider noch nicht dokumentiert. Bitte an die Entwickler weitergeben 🙂

 

Viele Gruesse,

Joshua

SMT_Jan-Ove
ehemaliger Mitarbeiter
4.279 Beiträge

Hallo @jsattler,

 

vielen Dank für deinen Hinweis.

 

Ich habe das gerne an meine Kollegen weitergegeben. 🙂

 

Beste Grüße

Jan-Ove

Christof.K
Autor ★
8 Beiträge

Hallo @jsattler,

vielen lieben Dank für den Hinweis. Ich werde es direkt mal probieren.

 

Zur Zeit muss die Abfrage immer noch durch einen weiteren Klick fortgeführt werden. Das funktioniert zwar sehr gut, ist aber dennoch entwas nervig.

 

Beste Grüße

Christof

jsattler
Autor ★★
14 Beiträge

Hi @SMT_Jan-Ove,

seit einem Update der PhotoTAN App (von heute?) funktioniert das Abrufen des "Aktivierungs" Status, wie ich zuvor beschrieben habe, nicht mehr. Kannst Du vielleicht mal nachfragen, ob es da einen Zusammenhang gibt? Wurde an der Schnittstelle etwas geaendert? Es hat gestern Nachmittag/Abend noch funktioniert, jetzt nicht mehr.

 

Vielen Dank vorab!

 

Joshua