TapHome

CNB CZK Wechselkurse

Packet Parser → HTTP
Eingereicht von
Zuletzt aktualisiert: 03. 2026

Die Tschechische Nationalbank (CNB) veröffentlicht täglich offizielle CZK-Wechselkurse für 30 Fremdwährungen. Diese Kurse sind die offiziellen Fixing-Kurse, die als Referenz im gesamten tschechischen Finanzsystem verwendet werden.

Die TapHome-Vorlage ruft alle 30 Wechselkurse über die öffentliche CNB REST API (api.cnb.cz) per HTTP Packet Parser ab. Jede Währung wird als separater schreibgeschützter Sensor mit dem aktuellen CZK-Kurs angezeigt. Die API ist vollständig öffentlich — keine Authentifizierung, kein API-Schlüssel und keine Registrierung erforderlich. Die Kurse werden stündlich aktualisiert.

Konfiguration

Die Vorlage verbindet sich mit api.cnb.cz über HTTPS (Port 443). Es werden keine IP-Adresse, Anmeldedaten oder API-Schlüssel benötigt — der Endpunkt ist eine vollständig öffentliche staatliche API.

Es gibt keine benutzerkonfigurierbaren Variablen. Die einzige benutzerdefinierte Variable (responsejson) ist ein interner HTTP-Antwort-Cache, der von den Vorlagenskripten verwendet wird — sie muss nicht geändert werden.

Funktionsweise

Das Modul sendet einmal pro Stunde eine einzelne HTTP GET-Anfrage (Abfrageintervall 3.600.000 ms):

1
GET /cnbapi/exrates/daily?date={today}&lang=CZ

Die Antwort ist ein JSON-Objekt mit einem rates[]-Array mit allen 30 Währungseinträgen. Jeder Eintrag enthält den Währungscode, den Ländernamen, die Menge und den Kurs. Das Modul speichert die vollständige JSON-Antwort in der Variable responsejson.

Jedes Währungsgerät parst dann seinen Kurs aus der zwischengespeicherten Antwort mit PARSEJSON(responsejson, "$.rates[N].rate"), wobei N der feste Array-Index für die jeweilige Währung ist. Das Abfrageintervall der Geräte beträgt 15 Sekunden, aber da alle Geräte aus der zwischengespeicherten responsejson lesen, werden zwischen den stündlichen Aktualisierungen keine zusätzlichen API-Aufrufe durchgeführt.

Die Vorlage verwendet lang=CZ in der API-Anfrage. Dies ist kritisch, da das rates[]-Array alphabetisch nach Ländername in der ausgewählten Sprache sortiert ist. Eine Änderung auf lang=EN würde eine andere Sortierung erzeugen und alle Array-Index-Zuordnungen ungültig machen.

Gerätefähigkeiten

Die Vorlage stellt 30 schreibgeschützte Sensoren bereit, einen pro Währung. Alle Werte sind in CZK.

Hauptwährungen

Die am häufigsten verfolgten Kurse umfassen EUR (Euro), USD (US-Dollar), GBP (Britisches Pfund), CHF (Schweizer Franken) und PLN (Polnischer Zloty). Diese werden pro 1 Einheit Fremdwährung notiert — zum Beispiel bedeutet ein USD-Kurs von 21,315, dass 1 USD = 21,315 CZK.

Mehrfacheinheiten-Währungen

Acht Währungen verwenden Mehrfacheinheiten-Kurse aufgrund ihres niedrigen CZK-Werts pro Einheit:

WährungMengeBedeutung
HUF (Ungarischer Forint)100Kurs pro 100 HUF
INR (Indische Rupie)100Kurs pro 100 INR
ISK (Isländische Krone)100Kurs pro 100 ISK
JPY (Japanischer Yen)100Kurs pro 100 JPY
KRW (Südkoreanischer Won)100Kurs pro 100 KRW
PHP (Philippinischer Peso)100Kurs pro 100 PHP
THB (Thailändischer Baht)100Kurs pro 100 THB
TRY (Türkische Lira)100Kurs pro 100 TRY
IDR (Indonesische Rupiah)1000Kurs pro 1000 IDR

Die Vorlage liest den Roh-rate-Wert aus der API ohne Division durch den amount. Zum Beispiel bedeutet ein JPY-Kurs von 13,328 in TapHome, dass 100 JPY = 13,328 CZK, nicht 1 JPY = 13,328 CZK.

Vollständige Währungsliste

Alle 30 Währungen: AUD, BRL, CAD, CHF, CNY, DKK, EUR, GBP, HKD, HUF, IDR, ILS, INR, ISK, JPY, KRW, MXN, MYR, NOK, NZD, PHP, PLN, RON, SEK, SGD, THB, TRY, USD, XDR (Sonderziehungsrechte des IWF), ZAR.

Automatisierungsbeispiele

Benachrichtigung bei Kursüberschreitung

Verwenden Sie einen Währungssensor in einer Smart-Rule-Bedingung, um Benachrichtigungen zu erhalten, wenn ein Kurs einen Schwellenwert überschreitet:

  • Bedingung: EUR-Wert überschreitet 25,00
  • Aktion: Push-Benachrichtigung senden
Kursbasiertes Schalten

Lösen Sie Aktionen basierend auf Wechselkursbewegungen aus — zum Beispiel Display-Indikatoren umschalten oder Ausgänge steuern, wenn eine überwachte Währung einen Zielbereich erreicht.

Fehlerbehebung

Alle Geräte zeigen Null oder keine Daten
  1. Überprüfen Sie die Internetverbindung des TapHome Core — die Vorlage benötigt ausgehenden HTTPS-Zugriff auf api.cnb.cz
  2. Überprüfen Sie, ob die API antwortet — öffnen Sie https://api.cnb.cz/cnbapi/exrates/daily?date=2026-03-28&lang=CZ im Browser
  3. Neue Wechselkurse werden jeden Werktag gegen 14:30 CET veröffentlicht. An Wochenenden und Feiertagen gibt die API die letzten gültigen Kurse zurück
Werte scheinen bei einigen Währungen falsch

Überprüfen Sie die Tabelle der Mehrfacheinheiten-Kurse oben. Währungen wie JPY, HUF, KRW und IDR werden pro 100 oder 1000 Einheiten notiert, nicht pro 1 Einheit. Dies ist die Standard-CNB-Konvention, kein Vorlagenfehler.

Daten werden nicht mehr aktualisiert

Die Vorlage fragt die API einmal pro Stunde ab. Wenn die Kurse veraltet erscheinen, überprüfen Sie, ob TapHome Core Internetzugang hat und die CNB-API erreichbar ist. Die API hat keine dokumentierten Anfragelimits, aber längere Verbindungsprobleme verhindern Aktualisierungen.

Verfügbare Geräte

CNB CZK Wechselkurse Modul
Benutzerdefinierte Variablen

Kurzy ČNB

Lesen (Modul)
VAR today := tostring(NOW(), "yyyy-MM-dd");
VAR response := SENDHTTPREQUEST("/cnbapi/exrates/daily?date=" + today + "&lang=CZ");
IF response.IsSuccess
    responsejson := response.Content;
ELSE
    ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Australischer Dollar (AUD) Variable Nur lesen
string Einheit: CZK json_path

Australischer Dollar (AUD)

Lesen
PARSEJSON(responsejson, "$.rates[0].rate");
Brasilianischer Real (BRL) Variable Nur lesen
string Einheit: CZK json_path

Brasilianischer Real (BRL)

Lesen
PARSEJSON(responsejson, "$.rates[1].rate");
Kanadischer Dollar (CAD) Variable Nur lesen
string Einheit: CZK json_path

Kanadischer Dollar (CAD)

Lesen
PARSEJSON(responsejson, "$.rates[13].rate");
Chinesischer Renminbi (CNY) Variable Nur lesen
string Einheit: CZK json_path

Chinesischer Renminbi (CNY)

Lesen
PARSEJSON(responsejson, "$.rates[2].rate");
Dänische Krone (DKK) Variable Nur lesen
string Einheit: CZK json_path

Dänische Krone (DKK)

Lesen
PARSEJSON(responsejson, "$.rates[3].rate");
Euro (EUR) Variable Nur lesen
string Einheit: CZK json_path

Euro (EUR)

Lesen
PARSEJSON(responsejson, "$.rates[4].rate");
Britisches Pfund (GBP) Variable Nur lesen
string Einheit: CZK json_path

Britisches Pfund (GBP)

Lesen
PARSEJSON(responsejson, "$.rates[29].rate");
Hongkong-Dollar (HKD) Variable Nur lesen
string Einheit: CZK json_path

Hongkong-Dollar (HKD)

Lesen
PARSEJSON(responsejson, "$.rates[6].rate");
Ungarischer Forint (HUF) Variable Nur lesen

Kurs pro 100 HUF

string Einheit: CZK json_path

Ungarischer Forint (HUF)

Lesen
PARSEJSON(responsejson, "$.rates[15].rate");
Schweizer Franken (CHF) Variable Nur lesen
string Einheit: CZK json_path

Schweizer Franken (CHF)

Lesen
PARSEJSON(responsejson, "$.rates[25].rate");
Indonesische Rupiah (IDR) Variable Nur lesen

Kurs pro 1000 IDR

string Einheit: CZK json_path

Indonesische Rupiah (IDR)

Lesen
PARSEJSON(responsejson, "$.rates[8].rate");
Israelischer Schekel (ILS) Variable Nur lesen
string Einheit: CZK json_path

Israelischer Schekel (ILS)

Lesen
PARSEJSON(responsejson, "$.rates[10].rate");
Indische Rupie (INR) Variable Nur lesen

Kurs pro 100 INR

string Einheit: CZK json_path

Indische Rupie (INR)

Lesen
PARSEJSON(responsejson, "$.rates[7].rate");
Isländische Krone (ISK) Variable Nur lesen

Kurs pro 100 ISK

string Einheit: CZK json_path

Isländische Krone (ISK)

Lesen
PARSEJSON(responsejson, "$.rates[9].rate");
Japanischer Yen (JPY) Variable Nur lesen

Kurs pro 100 JPY

string Einheit: CZK json_path

Japanischer Yen (JPY)

Lesen
PARSEJSON(responsejson, "$.rates[11].rate");
Südkoreanischer Won (KRW) Variable Nur lesen

Kurs pro 100 KRW

string Einheit: CZK json_path

Südkoreanischer Won (KRW)

Lesen
PARSEJSON(responsejson, "$.rates[14].rate");
Mexikanischer Peso (MXN) Variable Nur lesen
string Einheit: CZK json_path

Mexikanischer Peso (MXN)

Lesen
PARSEJSON(responsejson, "$.rates[17].rate");
Malaysischer Ringgit (MYR) Variable Nur lesen
string Einheit: CZK json_path

Malaysischer Ringgit (MYR)

Lesen
PARSEJSON(responsejson, "$.rates[16].rate");
Norwegische Krone (NOK) Variable Nur lesen
string Einheit: CZK json_path

Norwegische Krone (NOK)

Lesen
PARSEJSON(responsejson, "$.rates[19].rate");
Neuseeland-Dollar (NZD) Variable Nur lesen
string Einheit: CZK json_path

Neuseeland-Dollar (NZD)

Lesen
PARSEJSON(responsejson, "$.rates[20].rate");
Philippinischer Peso (PHP) Variable Nur lesen

Kurs pro 100 PHP

string Einheit: CZK json_path

Philippinischer Peso (PHP)

Lesen
PARSEJSON(responsejson, "$.rates[5].rate");
Polnischer Zloty (PLN) Variable Nur lesen
string Einheit: CZK json_path

Polnischer Zloty (PLN)

Lesen
PARSEJSON(responsejson, "$.rates[21].rate");
Rumänischer Leu (RON) Variable Nur lesen
string Einheit: CZK json_path

Rumänischer Leu (RON)

Lesen
PARSEJSON(responsejson, "$.rates[22].rate");
Schwedische Krone (SEK) Variable Nur lesen
string Einheit: CZK json_path

Schwedische Krone (SEK)

Lesen
PARSEJSON(responsejson, "$.rates[24].rate");
Singapur-Dollar (SGD) Variable Nur lesen
string Einheit: CZK json_path

Singapur-Dollar (SGD)

Lesen
PARSEJSON(responsejson, "$.rates[23].rate");
Thailändischer Baht (THB) Variable Nur lesen

Kurs pro 100 THB

string Einheit: CZK json_path

Thailändischer Baht (THB)

Lesen
PARSEJSON(responsejson, "$.rates[26].rate");
Türkische Lira (TRY) Variable Nur lesen

Kurs pro 100 TRY

string Einheit: CZK json_path

Türkische Lira (TRY)

Lesen
PARSEJSON(responsejson, "$.rates[27].rate");
US-Dollar (USD) Variable Nur lesen
string Einheit: CZK json_path

US-Dollar (USD)

Lesen
PARSEJSON(responsejson, "$.rates[28].rate");
IWF SZR (XDR) Variable Nur lesen

IWF Sonderziehungsrechte — zusammengesetztes Reserveaktivum

string Einheit: CZK json_path

IWF SZR (XDR)

Lesen
PARSEJSON(responsejson, "$.rates[18].rate");
Südafrikanischer Rand (ZAR) Variable Nur lesen
string Einheit: CZK json_path

Südafrikanischer Rand (ZAR)

Lesen
PARSEJSON(responsejson, "$.rates[12].rate");
Verbindung: Packet Parser → HTTP

Quellen

  • CNB API — OpenAPI Specification
    api.cnb.cz 2026-03-28
  • CNB Exchange Rate Format & Currency List
    www.cnb.cz 2026-03-28