LiveSL-04

Wenn dieselbe Handarbeit jede Woche wieder anfällt

Maklerbüros pflegen ihre Immobilien in einem Fachprogramm und danach ein zweites Mal auf der eigenen Website. ImmoSync liest die Dateien, die diese Programme ohnehin ausgeben, und hält die Website von selbst auf dem gleichen Stand. Jeder Auftrag wird getrennt von allen anderen verarbeitet. So kann ein Fehler in den Daten eines Büros kein anderes treffen.

Projekt ansehen

SL-04Live

ImmoSync

3 · Kunden im Betrieb

207 · Verarbeitungsläufe

Belegte Zahlen

Kunden im Betrieb
3Quelle: Produktivserver, Stand 07.09.2026
Verarbeitungsläufe
207Quelle: Auftragswarteschlange auf dem Produktivserver, Stand 07.09.2026
Durchgehender Betrieb seit
27.04.2026Quelle: Serverprotokoll, erster Eintrag 27.04.2026, letzter 04.09.2026
Arten, den Dienst zu betreiben
3Quelle: docker-compose.yml, .production.yml und .vps.yml, Stand 11.08.2026
Neue Version geht von selbst online
Nach jeder ÄnderungQuelle: .github/workflows/deploy.yml

Ausgangslage

Programme für Makler können ihre Immobilien als Datei ausgeben. Das Format dafür ist in der Branche seit Jahren üblich. Websites können mit diesen Dateien aber nichts anfangen. Also wird jede Immobilie zweimal gepflegt: einmal im Fachprogramm und einmal von Hand auf der Website. Das kostet jede Woche Zeit. Und früher oder später stimmen beide Stände nicht mehr überein.

Ergebnis

Ein laufender Dienst unter eigener Adresse. Er nimmt die Dateien der Maklerprogramme entgegen und hält die Website auf dem gleichen Stand. Jeder Auftrag wird für sich allein verarbeitet und hinterlässt danach nichts. Fehlerhafte Daten eines Kunden können so keinen anderen treffen.

Das Problem ist die doppelte Pflege, nicht fehlende Technik

Maklerprogramme können ihre Immobilien ausgeben. Websites können Daten einlesen. Trotzdem pflegen viele Büros jede Immobilie zweimal. Denn zwischen der Datei aus dem Programm und dem, was eine Website versteht, vermittelt niemand.

Das Ergebnis kennt man aus vielen kleinen Unternehmen. Eine Aufgabe fällt jede Woche an. Niemand macht sie gern, und niemand ist richtig zuständig. Fehler fallen erst auf, wenn ein Kunde nach einer Wohnung fragt, die längst verkauft ist.

Der Ansatz war das Format, nicht das Programm

Es gibt viele Maklerprogramme. Für jedes eine eigene Anbindung zu bauen, wäre Arbeit ohne Ende. Sie geben ihre Daten aber alle im selben Format aus.

Also setzt die Verarbeitung am Format an, nicht am Programm. Das unterscheidet ein Produkt von einer Reihe einzelner Anbindungen. Kommt ein neuer Kunde mit einem anderen Programm, muss ich in der Regel nichts neu bauen.

Aus demselben Grund kommen die Dateien per FTP. Das ist nicht modern. Aber die Maklerprogramme können es. Ein Weg, für den der Kunde sein Programm wechseln müsste, wird nicht benutzt.

Warum jeder Auftrag für sich allein läuft

Der Dienst verarbeitet fremde Dateien aus fremden Programmen. Solche Dateien sehen oft anders aus, als sie sollten. Mal fehlen Angaben, mal zeigen Bilder ins Leere, mal ist eine Datei riesig.

Deshalb bekommt jeder Auftrag seinen eigenen abgeschlossenen Bereich. Dort wird er verarbeitet, danach wird der Bereich gelöscht. Scheitert ein Auftrag, reißt er weder andere Kunden noch den Dienst mit. Und der belegte Speicher ist danach wieder frei.

Für Kenner: die Technik dahinter

Pro Auftrag startet der Manager einen kurzlebigen Docker-Container und verwirft ihn danach. Annahme über FTP-Ingest, Verarbeitung von OpenImmo-XML in Node.js, Oberfläche in Vue hinter Nginx. Drei Compose-Varianten, Auslieferung über GitHub Actions bei jedem Merge.

Diese Entscheidung macht aus dem Projekt mehr als ein kleines Hilfsprogramm.

Was hier ehrlicherweise fehlt

Eingesparte Arbeitsstunden. Das wäre die überzeugendste Zahl dieses Berichts, und ich kann sie derzeit nicht belegen. Was ich belegen kann, steht oben: drei Kunden, 207 Durchläufe und ein Betrieb ohne Unterbrechung seit April 2026.

Eine Zahl, die ich nicht belegen kann, schreibe ich nicht hin. Auch dann nicht, wenn sie sich gut lesen würde.

Häufige Fragen

Was ist OpenImmo und warum ist es wichtig?
OpenImmo ist ein Dateiformat. Fast jedes deutsche Maklerprogramm kann seine Immobilien darin ausgeben. Genau deshalb setze ich dort an. Ich muss nicht für jedes Programm eine eigene Anbindung bauen. Es reicht, das eine Format zu verstehen, das alle beherrschen.
Warum wird jeder Auftrag für sich allein verarbeitet?
Zum Schutz. Die Dateien kommen aus fremden Programmen und enthalten oft Unerwartetes. Läuft jeder Auftrag in seinem eigenen abgeschlossenen Bereich, kann ein Fehler weder andere Kunden noch den Dienst selbst mitreißen. Nach dem Auftrag wird der Bereich gelöscht, und der Speicher ist wieder frei.
Warum kommen die Dateien per FTP?
Weil die Maklerprogramme das können. FTP ist ein alter, einfacher Weg, Dateien zu übertragen. Ein modernerer Weg nützt nichts, wenn der Kunde dafür sein Fachprogramm wechseln müsste. Die Anbindung muss dort ansetzen, wo die Daten heute schon herauskommen.
Was spart so eine Automatisierung?
Die doppelte Pflege und die Fehler, die dabei entstehen. Wie viele Stunden das sind, hängt von der Zahl der Immobilien ab. Verlässliche Zahlen habe ich dazu noch nicht. Deshalb steht hier keine.

Alle Referenzen