Chargement...
Chargement...
Binden Sie das Widget in Ihre Website ein oder nutzen Sie die Immobilienberechnungen der REST-API in Ihrer Anwendung.
10 Länder · Widget und API · Von Tevaxia
Fügen Sie die bereitgestellten JavaScript- und CSS-Dateien Ihrer Seite hinzu. Das Widget enthält seine Darstellungskomponenten; Ihre Website benötigt keine Framework-Installation.
<link rel="stylesheet"
href="https://www.tevaxia.lu/propcalc/propcalc.min.css">
<script src="https://www.tevaxia.lu/propcalc/propcalc.min.js"></script>
<div data-propcalc data-country="lu" data-lang="de"></div>data-countryWidget-Codes: lu, fr, de, uk, be, es, pt, it, nl, us. Für das Vereinigte Königreich gilt uk.data-langWidget-Sprachen: fr, en, de, es, pt, it, nl. Auf der luxemburgischen Seite ist das Widget-Beispiel auf Französisch.data-moduleModule: fees, borrowing, rental, cashflow, comparator, prequalify, amortization, buyvsrent, scenarios, stampdutydata-themeVisuelles Thema: light (Standard) oder darkdata-accent-colorGültige CSS-Akzentfarbe (#1a365d, rgb(...), hsl(...))Quellenhinweis Tevaxia sichtbar
Basis-URL: https://www.tevaxia.lu/api/v1/propcalc
JSON und CORS. Dieser Dienst veröffentlicht kein garantiertes Monatskontingent. Eingegebene Zinssätze sind Dezimalverhältnisse (0.035 = 3,5 %). Unbekannte Felder und falsche Datentypen werden abgelehnt.
| Methode | Endpoint |
|---|---|
| POST | /fees |
| POST | /mortgage |
| POST | /yield |
| POST | /cashflow |
| GET | /countries |
Frankreich: price enthält gegebenenfalls die Umsatzsteuer. Bei isNew=true ist frenchVatOnFullPrice anzugeben (Neubauverkauf mit Umsatzsteuer auf den gesamten Preis, keine Margenbesteuerung). Bei true ist frenchVatRate erforderlich: 0.055, 0.1 oder 0.2. Bei false werden reguläre Übertragungssteuern angesetzt. loanGuaranteeCost ist der angebotene Besicherungsbetrag, nur mit Kredit zulässig; ohne Angabe bleibt er unbeziffert. acquisitionCoverage nennt ausgeschlossene Kosten: totalFees ist eine Teilsumme, keine vollständige notarielle Abrechnung.
Französische Mietbesteuerung (/yield): taxYear ist 2025 oder 2026 (Standard 2026). Standard ist reel_foncier, eine vereinfachte unmöblierte Vermietung mit tatsächlichen Kosten. Mikroregime verlangen frenchMicroEligible=true als Bestätigung der Berechtigung und der gesamten Haushalts-/Betriebseinnahmen, einschließlich der Vorjahresbedingungen für micro-BIC. Möblierte Vermietung verlangt frenchNonProfessional=true. micro_bic bezeichnet Langzeitvermietung, micro_bic_tourism klassifizierte und micro_bic_tourism_unclassified nicht klassifizierte Ferienvermietung. annualTaxReceipts enthält die gesamten steuerpflichtigen Einnahmen einschließlich steuerpflichtiger Nebenkosten; sonst gilt die simulierte Miete nach Leerstand. frenchSocialRegime=solidarity_only setzt eine berechtigende Sozialversicherung voraus; Standard ist standard. Keine vollständige Haushaltssteuerberechnung; Erwerbsbeiträge, Verlustvorträge und Sonderregime sind ausgeschlossen.
Italien (/yield): Berechnet wird nur cedolare_secca mit 21 % für einen gewöhnlichen Wohnraummietvertrag mit frei vereinbarter Miete. italianCedolareEligible=true bestätigt eine berechtigte natürliche Person außerhalb einer gewerblichen oder beruflichen Tätigkeit und eine wirksame Wahl dieses Regimes. italianAnnualContractRent ist erforderlich: vertragliche Bruttomiete für den Eigentumsanteil und Mietzeitraum, ohne Kostenabzug. Simulierter Leerstand senkt die wirtschaftlichen Einnahmen, ändert aber nicht automatisch diese Steuerbasis. Ein negativer Mietertrag hebt die Steuer nicht auf. IRPEF, Kurzzeitvermietung, ermäßigte Verträge, Mietausfälle und besondere Katasterfälle erfordern eine gesonderte Prüfung.
Portugal (/yield): portugueseCategoryFConfirmed=true bestätigt eine gewöhnliche Vermietung der Kategorie F und steuerlich zulässige bezahlte Ausgaben. portugueseRentalUse ist housing oder other. portugueseAnnualTaxReceipts und portugueseDeductibleExpenses sind auch bei null erforderlich; simulierte wirtschaftliche Kosten sind nicht automatisch steuerlich abziehbar. Zinsen, Abschreibung, Möbel, Geräte, Dekoration und AIMI sind ausgeschlossen. taxYear ist 2025 oder 2026. Autonome Steuersätze: Wohnraum 25 %, andere Vermietung 28 %, für Ansässige und Nichtansässige. Bei housing 2026 muss portugueseModerateRentEligible ausdrücklich true oder false sein: true bestätigt alle Bedingungen und monatlichen Mietgrenzen nach EBF Artikel 45-C / DL 97/2026 Artikel 2 für 10 %. Die Berechtigung ergibt sich nicht aus der Jahresmiete nach Leerstand. Günstigere Langzeitsätze, Befreiungen und Sonderfälle brauchen eine separate Prüfung. progressive_resident nutzt den eingegebenen Grenzsteuersatz ohne automatische Vergleichs- oder Haushaltssteuerberechnung.
Vereinigtes Königreich (/fees, country=uk): region akzeptiert ENG, NIR, SCT oder WLS; ohne Angabe wird ENG ausdrücklich angenommen. ukAdditionalProperty bestätigt erhöhte Steuersätze unabhängig von isPrimary; ukNonResident bestätigt den SDLT-Auslandsaufschlag in England/Nordirland. Beide sind standardmäßig false. Ersterwerberentlastung verlangt isFirstTime und isPrimary sowie die Berechtigung aller Käufer; Wales hat keine besondere Entlastung. Nur gewöhnliche Wohnimmobilienkäufe durch Privatpersonen, ohne Übergangsregeln, Gesellschaften, verbundene Vorgänge oder neue Pachtmieten. acquisitionCoverage nennt Teilsumme und ausgeschlossene Kosten. /cashflow nimmt einen zusätzlichen Kauf in England ohne Auslandsaufschlag an.
curl -X POST https://www.tevaxia.lu/api/v1/propcalc/fees \
-H "Content-Type: application/json" \
-d '{
"country": "lu",
"price": 700000,
"isNew": false
}'Das Beispiel ruft die API mit fetch auf, prüft Fehler und liest die zurückgegebenen Daten und Annahmen. Schätzungen hängen vom Szenario ab; kein Zahlenwert wird garantiert.
const response = await fetch('https://www.tevaxia.lu/api/v1/propcalc/fees', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ country: 'lu', price: 700000, isNew: false }),
});
const result = await response.json();
if (!response.ok || !result.success) {
throw new Error(result.error || 'Calculation failed');
}
console.log(result.data);
console.log(result.assumptions);
console.log(result.acquisitionCoverage);Wählen Sie das Widget für eine eingebettete Oberfläche oder die REST-API für Ihre eigenen Ansichten.