Rückmeldungscode 9391
https://www.f-i.de/fints
Wir bitten daher die Hersteller seit März 2023, ihre Produkte auf die korrekte Umsetzung zu prüfen, damit alle Kunden die Geräteerkennung problemlos nutzen können. Insbesondere muss jedes FinTS-Produkt beim Empfang des Rückmeldecodes 9391 korrekt mit einem „HKSYN“ reagieren und damit die Synchronisation der Kundensystem-ID vornehmen. Des Weiteren muss das Produkt die FinTS-Kundensystem-ID korrekt speichern und bei künftiger FinTS-Kommunikation verwenden. Anderenfalls würde künftig eine weitere Kommunikation vom Banksystem erneut mit dem Rückmeldecode 9391 abgewiesen. Die Ausführung bankfachlicher Geschäftsvorfälle wäre somit nicht mehr möglich.
Für weitere technische Details verweisen wir auf die FinTS-Spezifikation:
https://www.hbci-zka.de/dokumente/spezifikation_deutsch/fintsv3/FinTS_3.0_Formals_2017-10-06_final_version.pdf (insbesondere Kap. C8) https://www.hbci-zka.de/dokumente/spezifikation_deutsch/FinTS_Rueckmeldungscodes_2023-03-27_final_version.pdf
Following these two links, there's only one occurrence of 9391:
9391 Neue Kundensystem-ID holen
Not much information from the specification's side. But it seems like we're supposed to trigger a fresh sync when receiving this response code. Presumably bank servers use the Kundensystem-ID for something like an auth token, but once that expires, it needs to be refreshed, so then they send this code.
The implementation of this functionality in hbci4java seems to confirm that all we need to do is trigger a sync.
Has anyone ever observed 9391 in the wild? I wonder whether we should perhaps insert some logging, so that we can find out more about how often it happens in practice and what the consequences are if it's ignored.
I looked in our logs, there are no occurrences of '9391'.
Wow, you just have a log of all the messages that went over the wire for some number of days? That's really useful!
Hehe, it is quite useful indeed. If something goes wrong, I can always retrace the communication.