Datenintegration und APIs
August 12, 2026
9 Min.

Rabatt aus dem Lieferschein ermitteln: Wie gleichen Sie den gezahlten AEP mit dem Listenpreis ab?

Der erzielte Rabatt ist die Differenz zwischen dem auf dem Lieferschein ausgewiesenen Apotheken-Einkaufspreis und dem Listen-AEP, der zum Belegdatum galt. Nötig sind je Position PZN, gezahlter AEP und Belegdatum, dazu der Listenpreis aus dem passenden Preisstand. Preisstände wechseln zum 1. und zum 15. eines Monats.

Blog Image
Inhaltsverzeichnis
    Zusammenfassung
    • Der Lieferschein trägt PZN, Artikelbezeichnung, AVP und den gezahlten AEP, aber keinen Referenzpreis.
    • Verglichen wird gegen den Listen-AEP des Preisstands, der am Belegdatum galt, nicht gegen den heutigen.
    • Preisstände wechseln zum 1. und 15., wer heute gegen heute rechnet, misst Preisänderungen statt Rabatte.
    • Der AVP ist kein Rabattindikator, er errechnet sich nach § 3 AMPreisV aus dem AEP.
    • Rabattfähig ist nur der prozentuale Großhandelszuschlag von höchstens 3,15 Prozent, der Festzuschlag von 73 Cent ist zu erheben.
    • Integration: PZN-Liste je Abrechnungszeitraum an die API, Rückgabe als JSON.

    Wer wissen will, welchen Rabatt er beim Großhandel tatsächlich erzielt hat, braucht zwei Preise je Position: den gezahlten Apotheken-Einkaufspreis (AEP) vom Lieferschein und den Listen-AEP, der am Belegdatum galt. Die Differenz ist der Rabatt. Auf dem Lieferschein stehen dafür Artikelbezeichnung, Pharmazentralnummer (PZN), Apothekenverkaufspreis (AVP) und der gezahlte AEP, nicht aber der Referenzpreis, gegen den sich rechnen ließe. Den liefert der Artikelstamm, und zwar datumsgenau: Preisstände wechseln zum 1. und zum 15. eines Monats, ein Beleg vom 8. gehört also zum Stand ab dem 1. Der Abruf läuft über eine API, der Sie die PZN eines Abrechnungszeitraums übergeben und die Ihnen die Preise als JSON zurückgibt. Dieser Artikel richtet sich an Apotheken und klinikversorgende Betriebe, die ihre Einkaufskonditionen belastbar auswerten wollen, und an Softwarehäuser, die eine solche Auswertung bauen.

    Der Use-Case: Aus Lieferscheinen den tatsächlich erzielten Rabatt ermitteln

    Die Belege kommen als PDF, meist je Großhandlung getrennt, und sie tragen genau vier für die Auswertung relevante Angaben: Artikelbezeichnung, PZN, AVP und den gezahlten AEP. Wer mit mehreren Großhandlungen arbeitet und Bestellungen aufgeteilt geliefert bekommt, sammelt im Monat schnell dreistellige Belegzahlen. Aus dieser Menge eine Aussage über die eigenen Konditionen zu ziehen, ist nicht schwierig, sondern nur mühsam, und genau deshalb unterbleibt es meist.

    Der Grund für die Mühe ist eine fehlende Zahl. Der gezahlte AEP allein sagt nichts, er wird erst im Abstand zu einem Referenzpreis aussagekräftig. Diesen Referenzpreis müsste man sich bisher alle 14 Tage als vollständige Liste ziehen und ins eigene System einspielen, nur um am Ende je Beleg eine einzige Spalte zu füllen. Der Aufwand steht in keinem Verhältnis zum Ergebnis, und die eingespielte Liste ist zwei Wochen später wieder veraltet.

    Der Aufwand lohnt sich, weil das Ergebnis drei Fragen beantwortet, die sonst Gefühlssache bleiben. Erstens: Welche der beauftragten Großhandlungen liefert tatsächlich die bessere Kondition, gemessen am gleichen Sortiment und nicht an einer Zusage? Zweitens: Wo im Sortiment ist die Kondition schwach, also bei welchen Herstellern oder Warengruppen bleibt Spielraum liegen? Drittens: Hat sich nach dem letzten Konditionsgespräch etwas verändert, und um wie viel? Ohne diese Auswertung lässt sich eine Verhandlung nur mit Eindrücken führen, mit ihr mit Belegen.

    Hinzu kommt eine Verwechslung, die die Auswertung von Anfang an schief laufen lässt. Der AVP auf dem Beleg ist kein Indikator dafür, ob ein Rabatt gewährt wurde. Er ist der Apothekenverkaufspreis und errechnet sich nach den Zuschlägen in § 3 der Arzneimittelpreisverordnung aus der Einkaufsseite. Ein Rabatt wirkt sich dort nicht aus. Die Auswertung muss deshalb ausschließlich die Einkaufsseite betrachten.

    Welche Felder der Rabatt-Abgleich je Lieferscheinposition verlangt

    Kurzantwort: Drei Felder kommen aus dem Beleg, eines aus dem Artikelstamm. PZN, gezahlter AEP und Belegdatum auf der einen Seite, der Listen-AEP des passenden Preisstands auf der anderen. Alles Weitere macht die Auswertung belastbarer, entscheidet aber nicht über das Ergebnis.

    FeldHerkunftWofür Sie es brauchen
    PZN (8-stellig)LieferscheinSchlüssel für den Preisabruf
    Gezahlter AEPLieferscheinDer eine Vergleichswert
    BelegdatumLieferscheinBestimmt, welcher Preisstand gilt
    Menge je PositionLieferscheinGewichtung, damit Großpositionen nicht untergehen
    Listen-AEP zum BelegdatumArtikelstammDer andere Vergleichswert
    ApUArtikelstammBasis der Zuschlagsrechnung, Plausibilitätsprüfung
    Anbieter und VertriebsstatusArtikelstammAuswertung nach Hersteller, Ausschluss von Altartikeln
    AVPbeideNur Abgleich der Belegzuordnung, kein Rabattindikator

    Die PZN ist dabei der einzige verlässliche Schlüssel. Sie ist achtstellig, bedeutungsfrei und wird von der IFA vergeben. Über die Artikelbezeichnung zu matchen ist der naheliegende, aber falsche Weg: Schreibweisen unterscheiden sich je Großhandlung, und Packungsgrößen stehen mal im Namen und mal nicht. Wer einzelne Nummern prüfen will, kann das im PZN-Verzeichnis tun.

    Warum der tagesaktuelle Listenpreis die falsche Referenz ist

    Kurzantwort: Weil er zum Beleg nicht passt. Preisstände wechseln zum 1. und zum 15. eines Monats. Ein Beleg vom 8. muss gegen den Stand ab dem 1. gerechnet werden. Wer stattdessen den heutigen Listenpreis nimmt, misst zu einem Teil Preisänderungen und nennt das Ergebnis Rabatt.

    Der Fehler ist unauffällig, weil er das Ergebnis nicht zerstört, sondern nur verfälscht. Bei einem Artikel, dessen Preis sich seit dem Beleg nicht geändert hat, stimmt die Rechnung. Bei allen anderen wandert die Preisänderung in die Rabattquote, mal nach oben, mal nach unten. Über einen Monat gemittelt entsteht daraus eine Zahl, die plausibel aussieht und aus zwei Effekten besteht, die niemand mehr trennen kann.

    Praktisch gibt es zwei saubere Wege. Entweder Sie rufen die Preise datumsbezogen ab, dann ist der Zeitpunkt Teil der Abfrage. Oder Sie werten innerhalb der laufenden Periode aus, also vor dem nächsten Stichtag, dann ist der aktuelle Stand zugleich der richtige. Der zweite Weg ist der einfachere und für eine monatliche Auswertung völlig ausreichend, er verlangt aber Disziplin im Takt: mindestens alle 14 Tage, und zwar bevor der Stand wechselt.

    Wo im Preis der Rabatt überhaupt sitzen kann

    Kurzantwort: Nur im prozentualen Großhandelszuschlag. Nach § 2 Absatz 1 der Arzneimittelpreisverordnung sind auf den Abgabepreis des pharmazeutischen Unternehmers ein Festzuschlag von 73 Cent sowie die Umsatzsteuer zu erheben; zusätzlich darf ein Zuschlag von höchstens 3,15 Prozent, höchstens jedoch 37,80 Euro, erhoben werden.

    Der Unterschied zwischen den beiden Formulierungen ist der ganze Punkt. Der Festzuschlag ist zu erheben, der prozentuale Zuschlag darf erhoben werden. Verhandelbar ist damit allein der prozentuale Teil, und er ist nach oben gedeckelt. Das gibt Ihrer Auswertung eine Plausibilitätsgrenze: Ein rechnerischer Rabatt, der deutlich tiefer geht, als dieser Zuschlag hergibt, ist mit hoher Wahrscheinlichkeit kein Konditionsvorteil, sondern ein Zuordnungsfehler im Beleg, ein falscher Preisstand oder ein Sonderfall wie ein Direktbezug. Der Volltext steht in § 2 AMPreisV, die Bezugsgröße, also der Abgabepreis des pharmazeutischen Unternehmers, ist in § 78 des Arzneimittelgesetzes geregelt.

    Ein Hinweis zur Einordnung: Die gestaffelten Prozentsätze, die in derselben Vorschrift weiter unten stehen, betreffen Arzneimittel zur Anwendung bei Tieren. Wer sie versehentlich als Spanne für Humanarzneimittel liest, baut eine Plausibilitätsgrenze ein, die um ein Vielfaches zu weit ist.

    An einem gerechneten Beispiel wird die Größenordnung deutlich, alle Werte netto. Ein Artikel mit einem Abgabepreis des pharmazeutischen Unternehmers von 100,00 Euro trägt einen Festzuschlag von 0,73 Euro und einen prozentualen Zuschlag von höchstens 3,15 Prozent, also 3,15 Euro. Der volle Listen-AEP liegt damit bei 103,88 Euro. Steht auf dem Lieferschein ein gezahlter AEP von 101,50 Euro, beträgt die Differenz 2,38 Euro.

    Diese 2,38 Euro lassen sich auf zwei Arten lesen, und nur eine davon ist aussagekräftig. Bezogen auf den Listenpreis sind es 2,3 Prozent, eine Zahl, die klein wirkt. Bezogen auf den tatsächlich verhandelbaren Teil, also die 3,15 Euro, sind es rund 76 Prozent, und das ist die Zahl, die etwas über die Kondition sagt: Drei Viertel des überhaupt verfügbaren Spielraums sind ausgeschöpft. Wer seine Auswertung so aufbaut, vergleicht Lieferanten und Warengruppen auf einer Skala, die nach oben eine reale Grenze hat, statt auf einer Prozentzahl, die je nach Preisniveau des Artikels etwas völlig anderes bedeutet.

    Der Integrationsweg: PZN-Liste an die API, Preise als JSON zurück

    Kurzantwort: Sie übergeben die PZN aller Belegpositionen eines Zeitraums an die API und erhalten die zugehörigen Preise strukturiert zurück. Ein vollständiger Abzug des Artikelstamms ist dafür nicht nötig, weil Sie nur die Artikel brauchen, die in Ihren Belegen tatsächlich vorkommen.

    1. Belege lesen und Positionen extrahieren. Aus dem PDF entstehen je Position PZN, gezahlter AEP, Menge und das Belegdatum. Das ist der Teil, den Sie ohnehin bauen müssen, unabhängig davon, woher die Preise kommen.
    2. Preise gesammelt abrufen. Die API nimmt eine Liste von PZN entgegen und antwortet als JSON. Die Authentifizierung läuft über Nutzerkennung, Passwort und einen Secret Key, in den zusätzlich ein Zeitstempel einfließt, damit ein Zugriffstoken nicht dauerhaft gültig bleibt.
    3. Im Takt der Preisstände auswerten. Mindestens alle 14 Tage, vor dem jeweiligen Stichtag. Für eine monatliche Auswertung genügt das, für eine belegnahe Prüfung rufen Sie beim Eingang jedes Belegs ab.
    4. Ergebnis gewichten. Eine ungewichtete Rabattquote über alle Positionen beantwortet wenig, weil eine hochpreisige Position mehr über die Kondition aussagt als zwanzig günstige. Gewichten Sie nach Einkaufswert, nicht nach Positionszahl.

    Die meiste Arbeit steckt erfahrungsgemäß nicht im Preisabruf, sondern im ersten Schritt. Drei Fallstricke tauchen dabei regelmäßig auf. Erstens liefern verschiedene Großhandlungen unterschiedliche Belegaufbauten, sodass eine Extraktion, die für einen Lieferanten sauber läuft, beim nächsten Positionen verliert. Zweitens wird eine Bestellung häufig aufgeteilt geliefert, sodass zu einem Vorgang mehrere Belege mit unterschiedlichen Daten gehören; wer nach Bestellung statt nach Beleg gruppiert, ordnet einem Teil der Positionen den falschen Preisstand zu. Drittens tauchen auf denselben Belegen Positionen auf, die gar nicht preisgebunden sind, etwa Freiwahlartikel oder Verbandmittel. Sie gehören aus der Rabattrechnung heraus, sonst verwässern sie das Ergebnis.

    Ein wirksamer Test gegen alle drei ist eine Gegenprobe auf Belegebene: Die Summe der extrahierten Positionswerte muss dem Belegtotal entsprechen. Weicht sie ab, ist die Extraktion unvollständig, und zwar bevor irgendeine Rabattaussage entsteht. Diese Prüfung kostet wenig und verhindert die unangenehmste Variante des Fehlers, nämlich eine Auswertung, die vollständig aussieht und es nicht ist.

    Zwei Bausteine sind dabei zu trennen, und sie hängen voneinander ab: die Lizenz für die Plattform und der technische Zugang über die API. Der Zugang setzt die Lizenz voraus, weil die Daten dem Datenurheber gehören und die Nutzung je Nutzer gemeldet wird. Das ist keine Formalie, sondern der Grund, warum ein API-Zugang nicht isoliert erworben werden kann. Welche Lizenzstufe wofür nötig ist, vertieft der Beitrag Wann Sie eine Rohdatenlizenz für Arzneimitteldaten brauchen.

    Datensteckbrief: welche Daten den Rabatt-Abgleich lösen

    • ABDA-Artikelstamm. Felder: PZN, Apotheken-Einkaufspreis, Apothekenverkaufspreis, Abgabepreis des pharmazeutischen Unternehmers, Festbetrag, Anbieter, Vertriebsstatus, Gültigkeitsdatum des Preises. Aktualisierung: täglich, Preisstände 14-tägig zum 1. und 15. Der Artikelstamm trägt 260 auswertbare Felder je Artikel.
    • Preishistorie. Historische Preisstände seit 2007, nötig für jede Auswertung, die weiter zurückreicht als der aktuelle Stand, und für die datumsbezogene Zuordnung älterer Belege.
    • Zugang. REST-API mit einer PZN-Liste als Eingabe und JSON als Rückgabe, Authentifizierung über Nutzerkennung, Passwort und Secret Key mit Zeitstempel. Alternativ periodischer Datenabzug, wenn Sie ohnehin einen vollständigen Bestand vorhalten.

    pharmazie.com ist die konsolidierte pharmazeutische Datenplattform der DACON Datenbank Consulting GmbH, die 25+ Fachdatenbanken in einer einzigen Suche bündelt, ausschließlich für Fachkreise im Gesundheitswesen. Diese Suche heißt Eisbergsuche®: Eine Abfrage über die PZN legt Preisstand, Festbetrag, Rabattverträge und Verfügbarkeit nebeneinander. Für die Belegauswertung heißt das, dass Sie einen auffälligen Wert ohne Systemwechsel im Einzelfall nachsehen können.

    Wo die Grenze liegt: die Auswertung erklärt nicht jede Differenz

    Der beschriebene Weg beantwortet eine Frage vollständig: Wie groß ist der Abstand zwischen gezahltem und gelistetem Einkaufspreis? Er beantwortet nicht, woher dieser Abstand kommt.

    Erstens die Konditionsformen. Naturalrabatte, Skonti für schnelle Zahlung und Rückvergütungen am Ende eines Zeitraums tauchen auf dem einzelnen Lieferschein nicht auf. Eine Auswertung, die nur Belegpreise vergleicht, unterschätzt die Gesamtkondition entsprechend.

    Zweitens die Sonderfälle. Direktbezug am Großhandel vorbei, Importe und Artikel außerhalb der Preisbindung folgen anderen Regeln. Sie gehören in eine eigene Auswertungsklasse, sonst verzerren sie den Durchschnitt.

    Drittens die Verhandlung selbst. Die Zahl zeigt, wo Sie stehen, nicht was erreichbar ist. Was sie liefert, ist die Grundlage, mit der ein Konditionsgespräch überhaupt erst faktenbasiert geführt werden kann, und die Möglichkeit, eine Veränderung im nächsten Zeitraum nachzuweisen.

    Fazit

    Den erzielten Rabatt bekommen Sie nicht aus dem Lieferschein allein, sondern aus dem Abstand zwischen gezahltem AEP und dem Listen-AEP des Preisstands, der am Belegdatum galt. Nötig sind je Position PZN, gezahlter Preis, Menge und Datum, dazu ein datumsrichtiger Preisabruf über eine API mit PZN-Liste. Achten Sie auf zwei Dinge: den richtigen Preisstand statt des heutigen, und den prozentualen Zuschlag als Plausibilitätsgrenze. Wenn Sie den Zuschnitt eines solchen Zugangs durchsprechen möchten, buchen Sie eine Demo.

    Author Image
    Ursula Tschorn
    Ursula Tschorn ist Geschäftsführerin der DACON DACON Datenbank Consulting GmbH und beschäftigt sich seit 1989 mit dem Aufbau pharmazeutischer Informationsinfrastrukturen. Sie schreibt über Standards für Arzneimitteldaten, Preisregulierung und Marktzugang in der DACH-Region.

    FAQ

    Welche Angaben brauche ich vom Lieferschein, um den Rabatt zu berechnen?
    Wie hoch kann ein Großhandelsrabatt überhaupt ausfallen?
    Kann ich gegen den heutigen Listenpreis rechnen?
    Muss ich den kompletten Artikelstamm einspielen?
    Sagt der AVP auf dem Lieferschein etwas über den Rabatt aus?
    Reicht ein API-Zugang, oder brauche ich zusätzlich eine Lizenz?
    Seit 1989 vertrauen über 1.000 Kunden auf unsere Daten.

    Die umfassendste Arzneimitteldatenbank für Fachkreise.