Schnittstellen¶
Datenanlieferung¶
Zertifizierung¶
Bevor wir Ihre Daten zur elektronischen Verarbeitung entgegennehmen können, werden wir Sie dabei unterstützen, die Daten im korrekten Format anzuliefern. Sobald die Daten eine importierbare Qualität erreicht haben, erhalten Sie von uns schriftlich eine Bestätigung, dass Ihre Daten der jeweils aktuellen Schnittstellenversion entsprechen. Erst dann werden die entsprechenden Programmpunkte freigeschaltet, bzw. der Zugang zu unserem SFTP System aktiviert.
Für den Aktivierungsprozess wenden Sie sich bitte an:
Anlieferungsprozess¶
Nach Abschluß der Zertifizierungsphase können die Daten per sicherem Web-Upload oder SFTP an uns übermittelt werden. Während der Zertifizierungsphase werden Sie persönlich von uns betreut.
Schnittstellenbeschreibung Version 1.6.2 vom 21.11.2023¶
Dateiformat¶
Die Daten sind im CSV Format anzuliefern. Hierbei sind folgende Parameter definiert:
- Dateiendung muss
csv
sein. Die Dateiendung ist klein zu schreiben.- Der zu verwendende Zeichensatz ist ISO_Latin-1
- Sollte es sich bei Zahlen um Beträge handeln, ist als Dezimaltrennzeichen der Punkt (
.
) zu verwenden. Es werden keine Währungssymbole übermittelt.- Bei Beträgen sind zwingend 2 Nachkommastellen anzugeben (1.50, 1.09, 2.00)
- Wenn Wahrheitswerte wie
Ja
oderNein
übermittelt werden, ist eine 1 für Ja und eine 0 für Nein zu verwenden- Datumswerte geben sie in der Form
jjjj-mm-tt
an (z.B. 2012-07-28)- Als Spaltentrenner ist das Semikolon (
;
) zu verwenden- Das Textbegrenzungszeichen ist das Anführungszeichen (
"
)- Um das Textbegrenzungszeichen im Text benutzen zu können, muss es escaped werden. Das Escapezeichen ist der Backslash (
\
) - Bsp.: Sanitätshaus \”Zur Eiche\”- Für den Zeilenumbruch wird
CR LF
eingesetzt- Die CSV Datei darf keine Zeilenüberschriften enthalten
Hinweis
Sollten Sie Fragen haben oder Hilfe benötigen, wenden Sie sich bitte an
Dateiname¶
Für die Anlieferung über die SFTP Schnittstelle ist ein bestimmtes Namensformat einzuhalten.
(Dieses Namensformat schlagen wir auch für die Nutzung über den Webupload vor, hier ist es aber nicht zwingend vorgegeben. )
vorgeschriebenes Namensformat: dzhkdnr-variabel.csv
Wichtig
- dzhkdnr steht als Platzhalter für die DZH Kundennummer, für welche die Abrechnung erfolgen soll
- variabel steht als Platzhalter für eine frei von Ihnen wählbare Variable / Zeichenfolge
Anwendungsbeispiel : 11111-2017-01-15-02.csv
(dzhkdnr-jjjj-mm-tt-zz.csv
)
Namens-Bestandteil | Erläuterung |
---|---|
11111 (dzhkdnr) |
die DZH Kundennummer, für welche die Abrechnung erfolgen soll |
2017 (jjjj) |
das aktuelle Jahr |
01 (mm) |
zweistelliger Monat |
15 (tt) |
zweistelliger Tag |
02 (zz) |
ein exemplarischer Zähler, welcher Angibt, die wievielte Datei an dem Tag übermittelt wurde.
|
Inhalt der Datei¶
Sie können durch einen Klick auf die jeweilige Überschrift die entsprechende Beschreibung ein- oder ausklappen.
Feldname | Typ | Größe | Mussfeld | Beschreibung | Beispiel | Wertebereich | Bemerkung |
---|---|---|---|---|---|---|---|
kundennummer | N | 5 | XM | 5-stellige Kundennummer bei der DZH | 01234 | 00001..99999 | ggf. mit führenden Nullen angeben |
kunden_ik | N | 9 | XM | 9-stelliges IK des Kunden | 123456789 | IK laut Formel | ggf. mit führenden Nullen angeben |
kunde_rechnungsdatum | D | 10 | Rechnungsdatum des Kunden | 2012-12-13 | |||
kostentraeger_bezeichnung | AN | 1..255 | XM | Kostenträger des Kunden | AOK Bayern | ||
versichertennummer | AN | 6..20 | X | Versichertennummer des Patienten | G123456789 | BG Aktenzeichen und PV Mitgliedsnummern werden angenommen, aber verworfen - wenn nicht vorhanden, dann Anschrift des Versicherten übermitteln | |
geburtsdatum | D | 10 | XM | Geburtsdatum des Versicherten | 2012-12-13 | ||
versichertenname | AN | 1..47 | XM | Nachname der Versicherten | Meier | ||
versichertenvorname | AN | 1..30 | XM | Vorname des Versicherten | Dr. Ingolf | ||
status | AN | 5 | X | Status des Versicherten | 5123M | Status laut Formel | wenn nicht vorhanden, dann Anschrift des Versicherten übermitteln |
strasse | AN | ..30 | X | Straße und Hausnummer des Versicherten | In der Ecke 8 | nur anzugeben, wenn Krankenversichertennummer oder Versichertenstatus nicht bekannt | |
plz | AN | 5..7 | X | Postleitzahl des Versicherten | 01217 | nur anzugeben, wenn Krankenversichertennummer oder Versichertenstatus nicht bekannt | |
ort | AN | ..25 | X | Ort des Versicherten | Dresden | nur anzugeben, wenn Krankenversichertennummer oder Versichertenstatus nicht bekannt | |
lanr | N | 9 | XM | Lebenslange Arztnummer | 001234567 | LANR laut Formel | wenn nicht bekannt, dann „999999999“; ggf. IK des Krankenhauses angeben |
bsnr | N | 9 | XM | Betriebsstättennummer | 012345600 | BSNR laut Formel | |
beschaeftigtennummer | N | 9 | X | Beschäftigtennummer | 999999997 | Beschäftigtennummer nach §293 Abs. 8 Satz 2 SGB V | |
pflegedienst_ik | N | 9 | X | Pflegedienst IK | 999999999 | IK des Pflegedienstes nach §71 Abs. 1 SGB XI | |
verordnungsdatum | D | 10 | XM | Datum der Verordnung | 2012-12-13 | ||
leistungsdatum | D | 10 | XM | Datum der Leistungserbringung | 2012-12-13 | ||
genehmigungsdatum | D | 10 | X | Datum der Genehmigung | 2012-12-13 | Es müssen stets alle drei Genehmigungsfelder angegeben werden oder aber keines der Felder. | |
genehmigungskennzeichen | AN | ..20 | X | Kennzeichen der Genehmigung durch den Kostenträger | DAK59433596 | Es müssen stets alle drei Genehmigungsfelder angegeben werden oder aber keines der Felder. | |
genehmigungsart | AN | 2 | X | Art der Genehmigung | A1 | A1 = ‘im Einzelfall’; A2 = ‘langristige Gehmigung’ | Es müssen stets alle drei Genehmigungsfelder angegeben werden oder aber keines der Felder. |
identifikationsnummer | AN | 1..20 | XM | Eindeutiger Schlüssel der Verordnung innerhalb der Sendung | AB12245 | ||
rechnungsnummer | AN | ..32 | Rechnungsnummer des Kunden | 1235AB55 | |||
vorgangsnummer | N | ..10 | Vorgangangsnummer des Kunden | 1234567 | 0..4294967295 | ||
auftragsnummer | N | ..10 | Auftragsnummer des Kunden | 1234567 | 0..4294967295 | ||
rezeptnummer | N | ..10 | Rezeptnummer des Kunden | 1234567 | 0..4294967295 | ||
diagnoseschluessel | AN | ..12 | Internationale statistische Klassifikation der Krankheiten und verwandter Gesundheitsprobleme | ICD10f44.3 | |||
diagnosetext | AN | ..70 | Auffschlüsselung des Diagnoseschlüssels | Besessenheit | |||
besondere_versorgungsform | AN | ..25 | Vertragskennzeichen für besondere Versorgungsform zwischen Ärzten und Kostenträgern | ||||
id_zuzahlung | N | 1..3 | XM | Identifikationsnummer für zusammenhängende Abrechnungspositionen bei der Zuzahlungsberechnung | 1 | 1..255 | Positionen eines Beleges mit gleicher ID werden bei der Zuzahlung zusammengefasst |
anzahl | N | 1..4,2 | XM | Anzahl der abzurechnenden Position | 2.00 | 0..9999.99 | immer positiv |
hkz | N | 2 | XM | Hilfsmittelkennzeichen der Position | 01 | Siehe “Hilfsmittelkennzeichen” | ggf. mit führenden Nullen angeben |
abrechnungs_positions_nummer | AN | 10 | XM | Hilfsmittelnummer oder Pharmazentralnummer (mit führendem ‘PZN’ zu übermitteln) | PZN8: PZ12345678, PZN7: PZN1234567, HiMi: 1400240700 | PZN laut Formel | bei HiMi-Nr.: immer zehnstellig |
inventarnummer | AN | ..20 | X | Inventarnummer im Wiedereinsatz (HMS: Identnummer, MIP: Registernummer) | 201312501 | ||
produktbesonderheit | AN | ..10 | X | Positionsnummer für Produktbesonderheit | 99A5010001 | ||
anwendungsort | N | 1 | X | Anwendungsort Hilfsmittel | 1 | Siehe “Anwendungsort” | |
mwst | N | 1 | XM | MwSt-Schlüssel der APN | 1 | Siehe “Mehrwertsteuer” | |
einzelpreis | N | 1..6,2 | XM | Einzelpreis der APN | 36.10 | 0..999999.99 | immer positiv |
zuzahlungsbetrag | N | ..4,2 | X | Zuzahlungsbetrag der APN | 13.13 | 0..9999.99 | immer positiv - wenn nicht angegeben, dann 0 |
eigenanteil | N | ..4,2 | X | Eigenanteil des Versicherten an der APN | 13.13 | 0..9999.99 | immer positiv - wenn nicht angegeben, dann 0 |
skontosatz | N | ..2,2 | X | Skontosatz | 2.00 | 0..99.99 | immer positiv - wenn nicht angegeben, dann 0 |
skontotage | N | 2 | X | Skontotage | 3 | 0..99 | immer positiv |
versorgung_von | D | 10 | X | Datum des Beginns des Versorgungszeitraums | 2012-12-13 | ||
versorgung_bis | D | 10 | X | Datum des Endes des Versorgungszeitraum | 2012-12-14 | Muss mind. 1 Tag nach dem Beginndatum liegen wenn angegeben | |
legs | AN | 7 | X | Leistungserbringungsgruppe bestehend aus Abrechnungscode und Tarifkennzeichen | 1502514 | ||
mehrkosten | N | ..6,2 | Wirtschaftliche Aufzahlung | 20.00 | 0..999999.99 | immer positiv | |
auslieferndes_ik | N | 9 | XM | 9-stelliges IK der Filiale, welche die Leistung erbracht hat | 123456789 | IK laut Formel | ggf. mit führenden Nullen angeben |
debitor | AN | ..10 | Debitor des Kunden | 1234567 | |||
auftragsdatum | D | 10 | Auftragsdatum des Kunden | 2013-12-13 | |||
a_statistik | AN | ..5 | Auswertungsmöglichkeit A | A1234 | |||
b_statistik | AN | ..5 | Auswertungsmöglichkeit B | B1234 | |||
c_statistik | AN | ..5 | Auswertungsmöglichkeit C | C1234 | |||
wunschtermin | N | 1 | Lieferung der APN zu einem Wunschtermin | 1 | 0 = nein; 1 = ja | ||
kunde_kassen_id | N | ..20 | Kundeneigene Kostenträger ID | 123 | 0..18446744073709551615 | ||
kunde_kostenstelle | N | ..20 | Kundeneigene Kostenstelle | 123 | 0..18446744073709551615 | ||
kunde_versicherten_id | N | ..20 | Kundeneigene Versicherten ID | 123 | 0..18446744073709551615 | ||
kunde_artikel_id | AN | ..20 | Kundeneigene Artikel ID | 123 | 0..18446744073709551615 | ||
kunde_artikel_bezeichnung | AN | ..255 | Kundeneigene Artikelbezeichnung | ISAPAK System H1000 Sterilwasser | |||
laenderkennzeichen | AN | ..3 | X | Länderkennzeichen der Versichertenadresse | D | Siehe “Länderkennzeichen” | wenn nicht angegeben, dann „D“ |
brutto_uebergabe | N | 1 | Kennzeichen, ob Einzelpreis brutto/netto übergeben wurde | 0 | 0 = netto; 1 = brutto | wenn nicht angegeben, dann 0 | |
positions_text | AN | ..70 | Bezeichnung des Produkts und Herstellerinformation/Angabe Sendungsnummer/Therapiestunden | JJD1410008666336 | z.B. Paketnummer | ||
kunde_mitarbeiter_nr | AN | ..20 | Kundeneigene Mitarbeiternummer | ML1337 | |||
rechnung_anschrift | AN | ..30 | Anschriftzeile für alternative Rechnungsadresse | Pflegestift St. Johanna | nur anzugeben, wenn Privatabrechnung und Versicherter nicht Rechnungsempfänger | ||
rechnung_zusatz | AN | ..30 | Anschriftzusatz für alternative Rechnungsadresse | z.Hd. Herr Vormund | nur anzugeben, wenn Privatabrechnung und Versicherter nicht Rechnungsempfänger | ||
rechnung_laenderkennzeichen | AN | ..3 | Länderkennzeichen für alternative Rechnungsadresse | D | Siehe “Länderkennzeichen” | nur anzugeben, wenn Privatabrechnung und Versicherter nicht Rechnungsempfänger. wenn nicht angegeben, dann „D“ | |
rechnung_plz | AN | 5..7 | Postleitzahl für alternative Rechnungsadresse | 01217 | nur anzugeben, wenn Privatabrechnung und Versicherter nicht Rechnungsempfänger | ||
rechnung_ort | AN | ..30 | Ort für alternative Rechnungsadresse | Dresden | nur anzugeben, wenn Privatabrechnung und Versicherter nicht Rechnungsempfänger | ||
rechnung_strasse | AN | ..30 | Straße und Hausnummer für alternative Rechnungsadresse | In der Ecke 8 | nur anzugeben, wenn Privatabrechnung und Versicherter nicht Rechnungsempfänger | ||
geschlecht | AN | 1 | Geschlecht des Versicherten | m | m = männlich; w = weiblich; a = anders oder unbekannt | ||
datum_erstversorgung | D | 10 | Datum der Erstversorgung | 2013-12-13 | |||
erstversorgung | N | 1 | Kennzeichen, ob Abrechnungsposition eine Erstversorgung ist | 1 | 0 = nein; 1 = ja | ||
hauptdiagnose | AN | ..255 | Hauptdiagnose nach Vorgaben der rehaVital | Chronische Bronchitis mit Asthma Bronchiale | |||
nebendiagnose | AN | ..255 | Nebendiagnose nach Vorgaben der rehaVital | Chronische Herzinsuffizienz | |||
zuzahlungsrechnung_erstellen | N | 1 | Kennzeichen, ob für einen Beleg eine Zuzahlungsrechnung zu erstellen ist | 1 | 0 = nein; 1 = ja | ||
rechnung_wirtschaftliche_aufzahlung_erstellen | N | 1 | Kennzeichen, ob für einen Beleg eine Rechnung für die wirtschaftliche Aufzahlung zu erstellen ist | 1 | 0 = nein; 1 = ja | ||
zuzahlungsrechnungsnummer | AN | ..32 | Zuzahlungsrechnungsnummer des Kunden | 1235AB55 | |||
packungsmenge | N | ..4,2 | Menge in der Packung der Abrechnungsposition | 2.00 | 0..9999.99 | immer positiv | |
kostentraeger_ik | N | 9 | 9-stelliges IK des Kostenträgers | 123456789 | IK laut Formel | ggf. mit führenden Nullen angeben | |
fallnummer | N | 10 | Die vom Abrechnungszentrum vergebene Nummer zur Identifizierung eines Abrechnungsfalls | A123456789 | |||
ursprungs_identifikationsnummer | AN | ..20 | Identifikationsnummer des mit diesem Vorgang nachzubelastenden Vorgangs | A123456789BC | |||
mwst_satz | N | ..4,2 | MwSt-Satz der APN in % | 16.00 | Siehe “Abweichende Mehrwertsteuer” | Zu übermitteln, wenn der MwSt-Satz der APN vom aktuell geltenden MwSt-Satz abweicht. | |
mwst_gueltig_ab | D | 10 | Datum des Gültigkeitsbeginns des MwSt-Satzes | 2020-07-01 | Siehe “Abweichende Mehrwertsteuer” | Pflichtfeld, wenn abweichender MwSt-Satz übermittelt wird | |
verbrauchshilfsmittel | 1 | Kennzeichen ob die APN ein Verbrauchshilfsmittel ist | 1 | 0 = Gebrauch; 1 = Verbrauch |
Legende
Mussfelder
Mussfelder X Feld ist stets zu übermitteln, kann aber ggf. leer sein XM Feld ist stets zu übermitteln und darf nie leer sein leer Feld muss nicht übermittelt werden Datentyp
Datentyp AN Alpha-numerischer Datentyp N numerischer Datentyp D Datum im Format JJJJ-MM-TT Größe
Größe 2 genau zwei Zeichen/Ziffern ..2 bis zu zwei Zeichen/Ziffern 2..5 zwei bis fünf Zeichen/Ziffern ..6,2 bis zu sechs Vorkomma- und genau zwei Nachkommastellen Länderkennzeichen
Länderkennzeichen AFG Afghanistan ET Ägypten AL Albanien DZ Algerien AJ Amerikanische Jungferninseln AS Amerikanisch-Samoa AND Andorra AGO Angola ANG Anguilla AT Antarktis-Territorium ANT Antigua und Barbuda AQU Äquatorialguinea RA Argentinien ARN Armenien ASE Aserbaidschan ETH Äthiopien AUS Australien, einschl. Kokosinseln, Weihnachtsinseln und Norfolk-Insel BS Bahamas BRN Bahrain BD Bangladesch BDS Barbados B Belgien BH Belize DY Benin BER Bermuda BHT Bhutan BOL Bolivien BIH Bosnien und Herzegowina RB Botsuana BR Brasilien BJ Britische Jungferninseln BRU Brunei Darussalam BG Bulgarien HV Burkina Faso RU Burundi CUE Canton und Enderbury RCH Chile TJ China einsch. Tibet COI Cookinseln CR Costa Rica CI Côte d’Ivoire DK Dänemark D Deutschland WD Dominica DOM Dominikanische Republik DSC Dschibuti EC Ecuador einschl. Galapagos-Inseln ES El Salvador ERI Eritrea EST Estland FAL Falklandinseln FR Färöer FJI Fidschi FIN Finnland F Frankreich einschl. Korsika FG Französisch-Guayana FP Französisch-Polynesien GAB Gabun WAG Gambia GEO Georgien GH Ghana GIB Gibraltar WG Grenada GR Griechenland GRO Grönland GB Großbritannien GUA Guadeloupe GUM Guam GCA Guatemala RB Guinea GUB Guinea-Bissau GUY Guyana RH Haiti HCA Honduras HOK Hongkong IND Indien einschl. Sikkim und Goa RI Indonesien einschl. Irian Java MAN Insel Man IRQ Irak IR Iran, Islamische Republik IRL Irland IS Island IL Israel I Italien JA Jamaika J Japan YEM Jemen JOR Jordanien YU Jugoslawien KAI Kaimaninseln K Kambodscha CAM Kamerun CDN Kanada KAN Kanalinseln CV Kap Verde KAS Kasachstan QAT Katar EAK Kenia KIS Kirgistan KIB Kiribati CO Kolumbien KOM Komoren RCB Kongo ZRE Kongo, Dem. Republik KOR Korea, Dem. Volksrepublik ROK Korea, Republik HR Kroatien C Kuba KWT Kuwait LAO Laos, Dem. Volksrepublik LS Lesotho LV Lettland RL Libanon LB Liberia LAR Libysch-Arabische Dschamahirija FL Liechtenstein LT Litauen L Luxemburg MAC Macau RM Madagaskar MK Makedonien/Mazedonien MAL Malaysia BIO Malediven RMM Mali M Malta MA Marokko MAR Marshallinseln MAT Martinique RIM Mauretanien MS Mauritius MAY Mayotte MEX Mexiko MIK Mikronesien, Föderierte Staaten v. MD Moldau MC Monaco MON Mongolei MNE Montenegro MOT Montserrat MOZ Mosambik MYA Myanmar SWA Namibia NAU Nauru NEP Nepal NKA Neukaledonien NZ Neuseeland NIC Nicaragua NL Niederlande NLA Niederländische Antillen einschl. Curacao RN Niger WAN Nigeria NIU Niue NMA Nördliche Marianen N Norwegen einschl. Bäreninsel und Spitzbergen MAO Oman A Österreich PK Pakistan PAL Palau PA Panama PNG Papua-Neuguinea PY Paraguay PIN Pazifische Inseln (Marianen- u. Karolineninseln) PE Peru RP Philippinen PIT Pitcairn-Insel PL Polen P Portugal PRI Puerto Rico REU Réunion RWA Ruanda RO Rumänien RUS Russische Föderation PIE Saint Pierre und Miquelon SOL Salomonen Z Sambia WS Samoa RSM San Marino STP São Tomé und Príncipe SAU Saudi-Arabien S Schweden CH Schweiz SN Senegal SRB Serbien SCG Serbien und Montenegro SY Seychellen WAL Sierra Leone ZW Simbabwe SGP Singapur SK Slowakei SLO Slowenien SP Somalia E Spanien CL Sri Lanka HEL St. Helena einschl. Ascension SCN St. Kitts und Nevis WL St. Lucia WV St. Vincent und die Grenadinen ZA Südafrika SUD Sudan SME Suriname SD Swasiland SYR Syrien / Arabische Republik TAD Tadschikistan RC Taiwan EAT Tansania / Vereinigte Republik T Thailand OTI Timor-Leste TG Togo TOK Tokelau-Inseln TON Tonga TT Trinidad und Tobago CHD Tschad CZ Tschechische Republik TN Tunesien TR Türkei TUR Turkmenistan TUC Turks- und Caicosinseln TUV Tuvalu EAU Uganda UA Ukraine H Ungarn ROU Uruguay USB Usbekistan VAN Vanuatu V Vatikanstadt YV Venezuela UAE Vereinigte Arabische Emirate USA Vereinigte Staaten v. Amerika VN Vietnam BY Weißrussland RCA Zentralafrikanische Republik CY Zypern Hilfsmittelkennzeichen
Hilfsmittelkennzeichen 00 Neulieferung 01 Reparatur 02 Wiedereinsatz 03 Miete 04 Nachlieferung 05 Zurichtung 06 Abgabe eines von der Verordnung abweichenden, höherwertigen Hilfsmittels 07 unbesetzt 08 Vergütungspauschale 09 Folgevergütungspauschale 10 Folgeversorgung 11 Ersatzbeschaffung 12 Zubehör 13 Reparaturpauschale 14 Wartung 15 Wartungspauschale 16 Auslieferung 17 Aussonderung 18 Rückholung 19 Abbruch 20 Erprobung Anwendungsort
Anwendungsort 0 links 1 rechts 2 beidseitig MwSt.
MwSt. 0 steuerfrei (0 %) 1 voller MwSt-Satz (19 % / 16 %) 2 ermäßigter MwSt-Satz (7 % / 5%) Abweichende MwSt.Wenn eine APN mit einem vom aktuell geltenden MwSt-Satz abweichenden Steuersatz abgerechnet werden soll, so muss der abweichende Steuersatz und das dazu gehörige Gültigkeitsdatum übermittelt werden.Die Kombination aus abweichendem MwSt-Satz und dem Datum des Gültigkeitsbeginns des MwSt-Satzes ist dabei verpflichtend und wird beim Import der Daten zusammen mit dem MwSt-Schlüssel der APN auf Korrektheit geprüft.Die zu den APN übermittelten abweichenden MwSt-Sätze werden jedoch nur dann bei der Abrechnung verarbeitet, wenn dies zwischen Kunden und Abrechnungshaus explizit vereinbart wurde.Folgende Kombinationen sind zulässig:
mwst_satz mwst_gueltig_ab mwst 0.00 1970-01-01 0 16.00 1970-01-01 1 19.00 2007-01-01 1 16.00 2020-07-01 1 19.00 2021-01-01 1 7.00 1970-01-01 2 5.00 2020-07-01 2 7.00 2021-01-01 2
Download der Beschreibung
Schnittstellenbeschreibung_v1.6.2.xls
Aufbau der Datei¶
Der Aufbau der Datei kann von Ihnen selbst bestimmt werden. Im Kapitel Abrechnungsdaten/Datenimport ist beschrieben, wie Sie die Vorlage für den Import erstellen. Gerne helfen wir Ihnen bei der ersten Einrichtung.
Beispiel einer gültigen Datei
Änderungsprotokoll¶
Version 1.6.1 zu 1.6.2 |
|
|
Version 1.6.0 zu 1.6.1 |
---|
|
|
Version 1.5.0 zu 1.6.0 |
---|
|
|
|
|
|
|
|
|
|
|
|
Version 1.4.0 zu 1.5.0 |
---|
|
|
Version 1.3.1 zu 1.4.0 |
---|
|
Version 1.3.0 zu 1.3.1 |
---|
|
Version 1.2.1 zu 1.3.0 |
---|
|
Version 1.2.0 zu 1.2.1 |
---|
|
Version 1.1.0 zu 1.2.0 |
---|
|
Version 1.0.3 zu 1.1.0 |
---|
|
Version 1.0.2 zu 1.0.3 |
---|
|
Version 1.0.1 zu 1.0.2 |
---|
|
Datenexport¶
Für den maschinenlesbaren Export Ihrer Daten stellen wir Ihnen eine RESTful Schnittstelle zur Verfügung.
Die Dokumentation befindet sich noch im Aufbau; dennoch stellen wir Ihnen in den folgenden Kapiteln schon jetzt einen Teil des Funktionsumfangs vor.
Bemerkung
Um die Schnittstelle nutzen zu können, benötigen Sie einen API_KEY, den Sie auf Anfrage von uns erhalten können. Wenden Sie sich hierzu bitte mit einer kurzen Nachricht an folgende E-Mail-Adresse: projekte@dzh-online.de
Testumgebung¶
Erstellen einer Testumgebung
Um die in dieser Dokumentation vorgestellten Beispiele reproduzieren zu können, müssen Sie auf Ihrer Kommandozeile das Tool cURL installiert haben. Falls dies nicht der Fall ist, müssen Sie die Aufrufe auf Ihre gewohnte Umgebung anpassen.
In einigen Beispielen arbeiten wir mit den Platzhalten API_KEY
und API_URL
API_KEY | Diesen Eintrag müssen Sie durch den API_KEY ersetzen, welchen Sie von uns erhalten haben |
API_URL | Die API_URL müssen Sie durch https://service.dzh-online.de/api.php ersetzen |
Hier die Nutzung der Testumgebung (Basisaufruf) am Beispiel der Chrome Erweiterung “REST Console”: |
---|
![]() |
![]() |
![]() |
![]() |
![]() |
Basisaufruf¶
Basisaufruf
Jeder Aufruf der API beginnt gleich und wird daher nicht bei jedem Beispiel vollständig ausgeschrieben.
HTTP-Methode: GET
Der Beginn des Aufrufs lautet:
curl --header 'Authorization: Basic API_KEY API_URL
Er liefert bereits ein Ergebnis. Die Ausgabe der Ergebnisse erfolgt standardmäßig im JSON-Format.
Unterstützte Ausgabeformate | Ändern Sie die Parametereingabe folgendermaßen: |
---|---|
JSON | –header 'Accept: application/json |
XML | –header 'Accept: application/xml |
Nur für den Bezug der Stornoschreiben : PDF | –header 'Accept: application/pdf |
Beispiel
Der Basisaufruf würde nun für einen zufälligen API_KEY mit dem Format XML wie folgt aussehen:
curl --header 'Authorization: Basic API_KEY' --header 'Accept: application/xml' https://service.dzh-online.de/api.php
und folgendes Ergebnis liefern:
<?xml version="1.0" encoding="UTF-8"?>
<api href="/">
<link rel="clearing" href="/clearing"/>
<link rel="payment" href="/payment"/>
<link rel="costUnits" href="/cost-units"/>
<link rel="customers" href="/customers"/>
</api>
Basisfunktionen¶
payment
(Auszahlungsdaten) gibt, wird an die API_URL /payment
angehangen:curl --header 'Authorization: Basic API_KEY' --header 'Accept: application/xml' https://service.dzh-online.de/api.php/payment
Das Ergebnis sollte wie folgt aussehen:
<?xml version="1.0" encoding="UTF-8"?>
<payment href="/payment">
<link rel="cheques" href="/payment/cheques"/>
<link rel="chequeItems" href="/payment/cheques/items"/>
<link rel="booking" href="/payment/booking"/>
</payment>
Die auslesbaren Link-Elemente 'cheques'
, 'chequeItems'
und 'booking'
können aufgerufen werden, indem
die API_URL dem obigen Beispiel entsprechend erweitert wird.
Alle Basisfunktionen auf einen Blick
URL-Erweiterung | Ausgabe |
---|---|
/clearing |
Abrechnungsdaten |
/costUnits |
Kostenträgerdaten |
/customers |
Kundendaten |
/payment |
Auszahlungsdaten |
erweiterte Funktionen¶
Hier finden Sie eine Übersicht der erweiterten Funktionen zu den Basisfunktionen
/clearing
(Abrechnungsdaten)![]() |
![]() |
/cost-units
(Kostenträgerdaten)![]() |
/customers
(Kundendaten)![]() |
/payment
(Auszahlungsdaten)![]() |
Filter¶
Alle Aufrufe lassen sich filtern, indem folgender Zusatz an die API_URL angehangen wird:
?fields=Auswahl1 (Eingrenzung1, Auswahl2 (Eingrenzung2))
Parameter | Bedeutung |
---|---|
?fields= |
Der Parameter fields muss angegeben werden, um durch Angabe von Filtern detailliertere Informationen erhalten zu können |
Auswahl1 |
Die Angabe des Parameters „Auswahl1“ liefert Ihnen eine Auflistung der entsprechenden Auswahl (z.B. prescriptions für Verordnungen) |
(Eingrenzung1, Auswahl2(Eingrenzung2)) |
Dieser Filter besteht aus zwei Teilen:
|
Beispiel
Gewünschtes Ergebnis | URL-Anpassung |
---|---|
„Zeige mir von den Verordnungen alle (* ) Felder an und zusätzlich noch die einzelnen Positionen (items ) der Verordnungen.
Von den Positionen auch wieder alle Felder (* ).“ |
API_URL/?fields=prescriptions(*,items(*)) |
Beispiel-Aufrufe¶
Informationen zu einer bestimmten Posteingangsnummer¶
1.) Mit folgendem Aufruf holen Sie sich Infos zu einem Ihrer Posteingänge:
API_URL/clearing/302/inboxes/xxxxxxxxx
Parameter | Bedeutung |
---|---|
/clearing |
Abrechnungsdaten |
/302 |
Abrechnungsdaten nach §302 |
/inboxes |
Posteingänge |
/xxxxxxxxx |
steht exemplarisch für eine beliebige Posteingangsnummer |
2.) Ihr Ergebnis sollte in etwa wie folgt aussehen:
<?xml version="1.0" encoding="UTF-8"?>
<inbox id="xxxxxxxxx" href="/clearing/302/inboxes/xxxxxxxxx">
<createdAt><![CDATA[2012-01-05]]></createdAt>
<clearedAt><![CDATA[2012-01-12]]></clearedAt>
<firstPaymentAt><![CDATA[2012-01-30]]></firstPaymentAt>
<feeInvoiceNumber>1234</feeInvoiceNumber>
<invoiceTotalAmount>12345.67</invoiceTotalAmount>
<numberOfPrescriptions>222</numberOfPrescriptions>
<isFree>false</isFree>
<link rel="changes" href="/clearing/302/inboxes/xxxxxxxxx/changes"/>
<link rel="cheques" href="/clearing/302/inboxes/xxxxxxxxx/cheques"/>
<link rel="customer" href="/customers/12345"/>
<link rel="prescriptions" href="/clearing/302/inboxes/xxxxxxxxx/prescriptions"/>
</inbox>
3.) Aufschlüsselung der Informationen:
<tag> | Erklärung |
---|---|
createdAt |
Posteingangsdatum |
clearedAt |
Abrechnungsdatum |
firstPayment |
Datum der ersten Auszahlung |
freeInvoiceNumber |
DZH Rechnungsnummer |
invoiceTotalAmount |
Abrechnungsvolumen |
numberOfPrescriptions |
Anzahl der Verordnungen |
isFree |
Anzahl der Verordnungen |
4.) Nach diesen Informationen erhalten Sie noch einige Ressourcenlinks zu changes
, cheques
, customer
und
prescriptions
, um die Informationssuche zu verfeinern.
Auflistung vorhandener Verordnungen¶
1.) Um jetzt zum Posteingang des vorherigen Beispiels alle Belege mit allen Abrechnungspositionen zu erhalten, erweitern Sie die API_URL folgendermaßen:
/clearing/302/inboxes/xxxxxxxxx/prescriptions?fields=prescriptions(*,items(*))
Parameter | Bedeutung |
---|---|
/clearing |
Abrechnungsdaten |
/302 |
Abrechnungsdaten nach §302 |
/inboxes |
Posteingänge |
/xxxxxxxxx |
steht exemplarisch für eine beliebige Posteingangsnummer |
fields= |
Der Parameter fields muss angegeben werden, um durch Angabe von Filtern detailliertere Informationen erhalten zu können |
prescriptions |
Die Angabe des Parameters “prescriptions” liefert Ihnen eine Auflistung aller Verordnungen |
(*,items(*)) |
Dieser Filter besteht aus zwei Teilen :
1. (*) liefert Ihnen alle Verordnungen
2. (items(*) liefert Ihnen zusätzlich alle Positionen der Verordnung |
2.) Zusammengefasst:
Gewünschtes Ergebnis | URL-Anpassung |
---|---|
“Zeige mir von den Verordnungen alle (* ) Felder an und zusätzlich noch die einzelnen Positionen (items ) der Verordnungen. Von den Positionen auch wieder alle Felder (* ).” |
prescriptions(*,items(*)) |
3.) Exemplarisch hier das Ergebnis für eine einzelne Verordnung:
<?xml version="1.0" encoding="UTF-8"?>
<prescriptions>
<prescription id="xxxxxxxxx" shipment="2" stack="N" sequenceNumber="129" href="/clearing/302/prescriptions/xxxxxxxxx">
<costUnitInvoiceNumber>3923</costUnitInvoiceNumber>
<insurantStatus><![CDATA[50001]]></insurantStatus>
<insurantLastName><![CDATA[Musterfrau]]></insurantLastName>
<insurantFirstName><![CDATA[Maria]]></insurantFirstName>
<insurantBirthday><![CDATA[1949-08-15]]></insurantBirthday>
<insurantPostalStreet><![CDATA[Musterweg 1]]></insurantPostalStreet>
<insurantPostalCode><![CDATA[20537]]></insurantPostalCode>
<insurantPostalCity><![CDATA[Musterdorf]]></insurantPostalCity>
<additionalPaymentTotal>0.00</additionalPaymentTotal>
<doctorLifetimeNumber><![CDATA[999999999]]></doctorLifetimeNumber>
<productionSiteNumber><![CDATA[999999999]]></productionSiteNumber>
<issuedAt><![CDATA[2011-12-13]]></issuedAt>
<serviceDate><![CDATA[2011-12-13]]></serviceDate>
<customerInvoiceNumber><![CDATA[147739]]></customerInvoiceNumber>
<statisticA><![CDATA[123]]></statisticA>
<statisticB><![CDATA[456]]></statisticB>
<totalPriceGross>167.08</totalPriceGross>
<item id="xxxxxxxxx" sequenceNumber="1" href="/clearing/302/prescriptions/items/xxxxxxxxx">
<quantity>1.00</quantity>
<clearingNumber><![CDATA[11.29.05.1002]]></clearingNumber>
<inventoryNumber><![CDATA[00000]]></inventoryNumber>
<serviceCode><![CDATA[00]]></serviceCode>
<vatRate>19.00</vatRate>
<additionalPayment>0.00</additionalPayment>
<ownShare>0.00</ownShare>
<cashDiscountRate>0.00</cashDiscountRate>
<unitPriceNet>140.40</unitPriceNet>
<unitPriceGross>167.08</unitPriceGross>
<totalPriceNet>140.40</totalPriceNet>
<totalPriceGross>167.08</totalPriceGross>
</item>
<link rel="costUnit" href="/cost-units/xxxxx"/>
<link rel="items" href="/clearing/302/prescriptions/xxxxxxxxx/items"/>
</prescription>
</prescriptions>
Für jede Verordnung wird ein Element prescription
inkl. der jeweiligen ID ausgegeben.
Innerhalb der prescription
befindet sich für jede Position ein item
Element.
4.) Aufschlüsselung
<tag> (prescription) | Erklärung |
---|---|
costUnitInvoiceNumber |
Kassenrechnungsnummer |
insurantStatus |
Versichertenstatus |
insurantLastName |
Versichertenname |
insurantFirstName |
Versichertenvorname |
insurantBirthday |
Geburtstag |
insurantPostalStreet |
Strasse |
insurantPostalCode |
PLZ |
insurantPostalCity |
Stadt |
additionalPaymantTotal |
Gesamtzuzahlung |
doctorLifeTimeNumber |
Lebenslange Arztnummer |
productionSiteNumber |
Betriebsstättennummer |
issuedAt |
Verordnungsdatum |
serviceDate |
Leistungsdatum |
customerInvoiceNumber |
Kundenrechnungsnummer |
statisticA |
A-Statistik |
totalPriceGross |
Gesamtpreis brutto |
<tag> (item) | Erklärung |
---|---|
quantity |
Menge |
clearingNumber |
Abrechnungspositionsnummer |
inventoryNumber |
Poolnummer |
serviceCode |
Hilfsmittelkennzeichen |
vatRate |
MwSt |
additionalPayment |
Zuzahlung |
ownShare |
Eigenanteil |
cashDiscountRate |
Skontosatz |
unitPriceNet |
Einzelpreis netto |
unitPriceGross |
Einzelpreis brutto |
präziser Filter¶
1.) Im obigen Beispiel konnten Sie durch die Angabe des Filters *
jeweils alle Datensätze abrufen.
Sie können den Filter mithilfe der obigen Liste präzisieren:
/clearing/302/inboxes/xxxxxxxxx/prescriptions?fields=prescriptions(customerInvoiceNumber,totalPriceGross,items(clearingNumber, serviceCode, unitPriceGross))
2.) Zusammengefasst:
Parameter | Bedeutung |
---|---|
fields= |
Einleitung des Filters |
prescriptions( ) |
Welche Elemente der ‘’prescriptions’’ sollen enthalten sein ? (vgl. obige Tabelle “prescriptions”) |
items( ) |
Welche Elemente der ‘’items’’ sollen enthalten sein ? (vgl. obige Tabelle “items”) |
Wichtig
Bitte beachten Sie für individuelle Filter die Schreibweise des obigen Beispiels: items
ist ein Element der
prescriptions
und kann nicht ausgeklammert werden
3.) Ergebnis:
Sie erhalten mit obiger Abfrage von der Verordnung folgende Ausgaben:
Ergebnis | Element aus Menge: | Bezeichnung |
---|---|---|
Ihre Rechnungsnummer | prescriptions |
customerInvoiceNumber |
den Gesamtpreis | prescriptions |
totalPriceGross |
die Abrechnungspositionsnummer der einzelnen Positionen | items |
clearingNumber |
das Hilfsmittelkennzeichen | items |
serviceCode |
und den Preis der einzelnen Positionen | items |
unitPriceGross |
Stornoschreiben über API beziehen¶
Über die API lassen sich Stornoschreiben direkt beziehen. Folgende Ausgaben werden unterstützt:
- Metadaten zu einem Stornoschreiben (Seitenanzahl, Größe, Scandatum)
- direkte Ausgabe des entsprechenden PDFs als Binärdaten
Die API_URL wurde um eine Ressource erweitert: /clearing/changes/documents/<documentId>
.
Bemerkung
Die <documentId>
verweist auf die zugehörige Stornoschreiben-Ressource.
HTTP-Methode: GET
Content-Type: JSON/XML/PDF
Format | Konsolen-Aufruf | Ausgabe |
---|---|---|
JSON / XML | curl --header 'Authorization: Basic API_KEY' \ --header 'Accept: application/xml' API_URL/clearing/changes/documents/<documentId> |
id / pages / size / scannedAt |
curl --header 'Authorization: Basic API_KEY' \ --header 'Accept: application/pdf' API_URL/clearing/changes/documents/<documentId> |
Zugehörige PDF-Datei als binären Datenstream. Der erwartete HTTP Content-Type für PDF ist application/pdf. |
Datensendungen über API beziehen¶
Über die API lassen sich Informationen zu Datenlieferungen anzeigen. Im Moment wird nur die Sendungsnummer ausgegeben.
Die API_URL wurde um eine Ressource erweitert: /clearing/shipments/<shipmentId>
.
Bemerkung
Die <shipmentId>
verweist auf die zugehörige Sendungsressource.
Dieser Link steht auch in den Details des dazugehörigen Posteingangs, bspw beim Aufruf der Ressource /clearing/302/inboxes/xxxxxxxxx
.
Hier gibt es das neue Element <link rel="shipment" href="/clearing/shipments/xxx"/>
HTTP-Methode: GET
Content-Type: JSON/XML
Format | Konsolen-Aufruf | Ausgabe |
---|---|---|
JSON / XML | curl --header 'Authorization: Basic API_KEY' \ --header 'Accept: application/xml' API_URL/clearing/shipments/<shipmentId> |
id |
Fehlermeldungen / Response Codes¶
<?xml version="1.0" encoding="UTF-8"?>
<error status="404">
<message><![CDATA[Für die angeforderte Ressource wurden keine Daten gefunden.]]></message>
</error>
- Mögliche Ursachen:
- Die URL wurde fehlerhaft erweitert (z.B. /api.php/clearing/I nboxe S) oder die URL endet mit
/
(z.B. /api.php/clearing/inboxes /) - Zu der angefragten URL / dem angefragtem Datensatz liegen keine Daten vor.
- Die URL wurde fehlerhaft erweitert (z.B. /api.php/clearing/I nboxe S) oder die URL endet mit
{"status":406,"message":"Inakzeptables Ausgabeformat angefordert: "}
- Bei der Angabe zum Ausgabeformat liegt eine fehlerhafte Eingabe vor. Erwartetes Format:
--header 'Accept: application/xml|json'
<?xml version="1.0" encoding="UTF-8"?>
<error status="403">
<message><![CDATA[Authentifizierung fehlgeschlagen.]]></message>
</error>
- Die von Ihnen angegebenen Daten zur Authentifizierung sind fehlerhaft.
Weitere Fehlergründe lassen sich durch den jeweiligen HTTP-Status-Code ermittelt.
Eine vollständige Übersicht zu verschiedenen Status-Codes finden Sie hier.
Response Message | Bedeutung |
---|---|
('Authentifizierung erforderlich.') |
Bitte setzen Sie Benutzername und Passwort |
('Verschlüsseltes Protokoll erforderlich.') |
Bitte nutzen Sie ein verschlüsseltes Protokoll |
('Inakzeptables Ausgabeformat angefordert.') |
Bitte wählen Sie ein anderes Ausgabeformat (default: JSON) |
('Inakzeptabler Zeichensatz angefordert: "Ihre Eingabe" JSON unterstützt nur UTF-8') |
Wählen Sie den Zeichensatz UTF-8 |
('Inakzeptabler Zeichensatz angefordert: "Ihre Eingabe"') |
Wählen Sie einen anderen Zeichensatz (default: UTF-8) |
Hinweis
Sollten Sie Fragen haben oder Hilfe benötigen, wenden Sie sich bitte an