europace / baufismart-kundenangaben-api

API zum Importieren von Kundenangaben in einen neuen Vorgang in BaufiSmart.
https://developer.europace.de
14 stars 4 forks source link

zinsbindungBis bei Darlehen BESTEHENDES_IMMOBILIENDARLEHEN führt zu Fehler #113

Closed ic-hv closed 3 years ago

ic-hv commented 3 years ago

Gibt man ein Zinsbindungs-Datum im Format DD-MM-YYYY bei einem Darlehens-Objekt vom Typ BESTEHENDES_IMMOBILIENDARLEHEN mit, dann mag das die API nicht:

{"type":"https://api.europace.de/kundenangaben/problem/bad-request","title":"Bad Request","status":400,"detail":"Cannot deserialize into 'kundenangaben.finanzierungsobjekt.darlehenslisteErfassung.darlehensliste.[0].darlehen' at line: 1, column: 1594","traceId":"Root=1-60ec1697-00c75139474662eb4c97a922"}

ElisaBaum commented 3 years ago

Hallo @ic-hv,

alle Datumsangaben in der API sind in folgendem Format anzugeben: YYYY-MM-DD.

Die Dokumentation ist hierzu noch nicht ausreichend. Das nehmen wir uns als ToDo mit.

ic-hv commented 3 years ago

Hallo Elisa,

sorry da hab' ich mich verschrieben. Ich habe genau das Format YYYY-MM-DD verwendet, klappt aber nicht.

ElisaBaum commented 3 years ago

Hallo @ic-hv,

könntest du bitte mal ein Beispiel-JSON posten? Ich kann den Fehler aktuell nicht reproduzieren. Bei mir klappt es mit dem Datumsformat.

ic-hv commented 3 years ago

Hallo Elisa,

beispielsweise macht dieser Datensatz Probleme:

{"importMetadaten":{"datenkontext":"TEST_MODUS","betreuung":{"kundenbetreuer":"RYB98","bearbeiter":"RYB98"},"externeVorgangsId":290,"importquelle":"Homepage","leadtracking":{"kampagne":"accedo.de"}},"kundenangaben":{"haushalte":[{"kunden":[{"referenzId":"heiko_290_vogel@intercorp.de","personendaten":{"person":{"anrede":"FRAU","titel":{"prof":false,"dr":false},"vorname":"Testing","nachname":"Second"}},"finanzielles":{"beschaeftigung":{"@type":"ANGESTELLTER","beschaeftigungsverhaeltnis":{"arbeitgeber":{"inDeutschland":true},"probezeit":false,"anzahlGehaelterProJahr":"ZWOELF"},"beschaeftigungsstatus":"UNBEFRISTET"}},"kontakt":{"telefonnummer":{"nummer":"76"},"email":"vogel@intercorp.de","weitereKontaktmoeglichkeiten":"email2:"}}],"kinderErfassung":{"@type":"KEINE_KINDER"},"finanzielleSituation":{"bestehendeImmobilien":[{"einsatz":"VERKAUFEN","marktwert":22222,"maximalEinzusetzenderBetragBeiVerkauf":22222,"darlehenslisteErfassung":{"@type":"KEINE_BESTEHENDEN_DARLEHEN"}}],"ausgaben":{"summeMietausgaben":{"entfaelltMitFinanzierung":false}}}}],"finanzierungsobjekt":{"immobilie":{"adresse":{"strasse":"Universit\u00e4tsstra\u00dfe","hausnummer":"30","plz":"95447","ort":"Bayreuth"},"typ":{"@type":"EIGENTUMSWOHNUNG","grundstuecksgroesse":0,"gebaeude":{"anzahlGeschosse":"3","baujahr":"1970","modernisierungErfassung":{"@type":"KEINE_MODERNISIERUNG"},"nutzung":{"wohnen":{"gesamtflaeche":100,"nutzungsart":{"@type":"EIGENGENUTZT"}},"gewerbeErfassung":{"@type":"KEIN_GEWERBE"}}}},"stellplaetzeErfassung":{"@type":"KEINE_STELLPLAETZE"},"zusatzangaben":{"zusatzangabenProProduktanbieter":[{"@type":"ZUSATZANGABEN_IMMOBILIE_SANTANDER","vorlaeufigerVerkehrswert":280000}]}},"darlehenslisteErfassung":{"@type":"VORHANDENE_BESTEHENDE_DARLEHEN_DES_FINANZIERUNGSOBJEKTES","darlehensliste":[{"zinsbindungBis":"2022-02-22","@type":"BESTEHENDES_IMMOBILIENDARLEHEN"}]}},"finanzierungsbedarf":{"finanzierungszweck":{"@type":"KAUF","kaufpreis":280000,"nebenkosten":{"notargebuehr":{"wert":5600,"einheit":"EURO"}},"modernisierungskostenErfassung":{"eigenleistungErfassung":{"@type":"KEINE_EIGENLEISTUNG"},"@type":"VORHANDENE_MODERNISIERUNGSKOSTEN"}},"finanzierungsbausteine":[{"darlehensbetrag":280000,"annuitaetendetails":{"zinsbindungInJahren":"10","tilgungswunsch":{"@type":"TILGUNG_IN_PROZENT","tilgungssatzInProzent ":"2"}},"@type":"ANNUITAETENDARLEHEN","bereitstellungsZinsfreieZeitInMonaten":"2"}]}}}

grafik

ElisaBaum commented 3 years ago

Hallo @ic-hv,

die Struktur des JSON stimmt an der Stelle darlehenslisteErfassung nicht.

Dein JSON sieht hier wie folgt aus:

"darlehenslisteErfassung": {
        "@type": "VORHANDENE_BESTEHENDE_DARLEHEN_DES_FINANZIERUNGSOBJEKTES",
        "darlehensliste": [
          {
            "zinsbindungBis": "2022-02-22",
            "@type": "BESTEHENDES_IMMOBILIENDARLEHEN"
          }
        ]
      }

Es muss aber wie folgt aussehen:

"darlehenslisteErfassung": {
        "@type": "VORHANDENE_BESTEHENDE_DARLEHEN_DES_FINANZIERUNGSOBJEKTES",
        "darlehensliste": [
          {
            "darlehen": {
                "zinsbindungBis": "2022-02-22",
                "@type": "BESTEHENDES_IMMOBILIENDARLEHEN"
            }
          }
        ]
      }

Der Typ VorhandeneBestehendeDarlehenDesFinanzierungsobjektes hat als Property darlehenslistevom Typ BestehendesDarlehenDesFinanzierungsobjektes. Der Typ BestehendesDarlehenDesFinanzierungsobjektes hat dann als Property darlehen, unter welchem dann die Informationen des Darlehens erfasst werden. Bei deinem JSON fehlt das Property darlehen.

ic-hv commented 3 years ago

Ok, well ja ... wenn mal kein Brett vorm Kopf hat, hat man stattdessen Tomaten vor den Augen ...

Läuft, danke!