Skip to main content

Automatisierter Sales-Abgleich

easy.affiliate bietet die Möglichkeit, denBeim Sales-Abgleich fürgleichen Sie zu automatisieren. Da dieser Prozess bei jedem Advertiser unterschiedlich sein kann, beschreibt dieses Dokument nur das Grundgerüst und zählt dazu einzelne Realisierungsmöglichkeiten auf. Sollten Ihre Anforderungen über dieses Gerüst hinausgehen, kontaktieren Sie uns über support@easy-m.de und wir erstellen einen auf Ihre Anforderungen zugeschnittenen Prozess.

Das Grundgerüst besteht im Prinzip aus 3 Schritten:

Schritt 1: Übermittlung derdie getrackten Transaktionen ausmit easy.affiliateIhrem anShop- oder Warenwirtschaftssystem ab: Was bezahlt und behalten wurde, wird bestätigt, was storniert oder retourniert wurde, wird storniert. Diese Seite beschreibt den Advertiser

kompletten

FürAblauf, dendas Sales-AbgleichDateiformat benötigen Sie prinzipiell nurund die folgendendrei DatenWege, auf denen die Ergebnisse zurück ins System kommen.

Überblick

Der Abgleich läuft immer in drei Schritten:

    Offene Transaktionen holen: als Datei aus unseremder System.Transaktionsliste Dieseoder sindautomatisch für uns zwingend notwendig, damit wirüber die PositionenDaten-API. einerAbgleichen: Orderin zuweisenIhrem können.System entscheiden, welche Transaktion bestätigt, storniert oder im Umsatz korrigiert wird. Ergebnis zurückspielen: per Upload, per SFTP oder per Webservice-API.
    DatensatzWeg BeschreibungGeeignet für
    Automatisierbar Ergebnis sehen Sie unter idUpload im Transaktionsimport Internemonatlichen IDoder auswöchentlichen easy.affiliateAbgleich zurvon ZuordnungHand desnein SalesTransaktionsimport, / des Basketinhalts.Historie statusSFTP-Ordner „Sales-Abgleich“ Derregelmäßige StatusDateien desaus Sales.Ihrer StatusWarenwirtschaft 0ja, =>Abholung Offenalle (unbestätigter15 Sale);Minuten StatusTransaktionsimport, 1Historie =>und BestätigterExternalSources Sale; Status 2 => Stornierter Sale.Monitor ordertokenWebservice-API (PUT Orders) Diedirekte OrdernummerAnbindung ausIhres demSystems, Shopsystemauch einzelne Transaktionen ja Antwort des Advertisers.Aufrufs und comission VergütungHistorie der Transaktion => Nur dann zu ändern, wenn die im System hinterlegte Rate nicht passt. Sollte der Turnover geändert werden, wird die Vergütung automatisch von easy.affiliate neu berechnet. turnover Preis des getrackten Sales => Wird bei Teilstornierung von easy.affiliate neu berechnet. Wichtig: Es muss hier die Währung hinterlegt werden, welche bei der Transaktion schon übermittelt wurde. cancel_reason Falls ein Sale storniert wurde, kann hier der Grund (z. B. zu Dokumentationszwecken) hinterlegt sein.

    AuchAlle hierdrei könnenWege wirändern nur bestehende Transaktionen. Neue Transaktionen legt keiner dieser Wege an, solange Sie die exportiertenTransaktions-ID Daten(id) ummitgeben.


    Die Abgleichsdatei

    Für Upload und SFTP brauchen Sie eine CSV-Datei. Für die API gelten dieselben Felder, nur als JSON.

    Diese Spalten reichen

    Spalte Pflicht Inhalt id ja Transaktions-ID aus unserem System. Nicht Ihre AnforderungBestellnummer. beliebigSie erweitern.steht in jedem Export in der ersten Spalte. status ja Neuer Status, siehe unten. turnover nein Korrigierter Netto-Umsatz, zum Beispiel nach einer Teilretoure. Nur mitgeben, wenn er sich geändert hat. cancel_reason nein Stornogrund als Freitext, zum Beispiel Retoure. Sinnvoll bei Status 2.

    Mehr ist für einen Abgleich nicht nötig. Die Provision müssen Sie nicht mitschicken, das System rechnet sie selbst (siehe Provision).

    Status

    Wert Bedeutung 0 offen 1 bestätigt 2 storniert

    Statt der Zahl verstehen Upload und SFTP auch die Wörter offen, bestätigt, storniert sowie open, confirmed, cancelled. Die API erwartet die Zahl.

    DieseAusgezahlte ListeTransaktionen kann(Status als3) CSV,sind XLSXabgerechnet oderund XML-Dateilassen exportiertsich werden.über Diese kannkeinen der Advertiserdrei Wege mehr ändern. Setzen Sie Status 3 nie selbst, er entsteht bei der Auszahlung.

    Provision

    Lassen Sie die Spalte commission weg, rechnet das System die Provision beim Upload und über verschiedenedie KanäleAPI erhalten. Beispielsweise:so:

    • AbrufProzentuale Provision: Ändert sich der Umsatz, wird die Provision aus dem neuen Umsatz berechnet.
    Feste Provision: bleibt, wie sie ist. Warenkorb-Provision: wird beim Upload im Verhältnis zum neuen Umsatz angepasst.

    Beim SFTP-Weg gilt eine Ausnahme, siehe Weg B.

    Eine Spalte commission brauchen Sie nur, wenn Sie bewusst einen festen Betrag setzen wollen, der von der Provisionsgruppe abweicht. Steht sie in der Datei, wird ihr Wert genau so übernommen, auch wenn sich der Umsatz geändert hat.

    Format

      Die erste Zeile ist die Kopfzeile mit den Spaltennamen. Kein Titel, keine Beschreibung, keine Leerzeile darüber. Eine Zeile je Transaktion. Keine Summenzeile am Ende. Trennzeichen Semikolon ;, Textbegrenzer doppelte Anführungszeichen ", Kodierung UTF-8. Beträge als reine Zahl: 12,49 oder 12.49. Keine Währung, kein EUR, kein € in der Zelle. Eine leere Zelle bedeutet „nicht ändern“. Wer nur den Status setzen will, lässt turnover leer oder die Spalte ganz weg. Nur Transaktionen aufnehmen, die Sie tatsächlich entschieden haben. Offene, die offen bleiben, gehören nicht in die Datei.

      Beispiel:

      id;status;turnover;cancel_reason
      4271510;1;;
      4271509;2;;Retoure
      4223190;1;89,90;
      4223189;2;;Bestellung nicht bezahlt
      

      Zeile 1 bestätigt, Zeile 2 storniert mit Grund, Zeile 3 bestätigt mit korrigiertem Umsatz, Zeile 4 storniert.

      Weitere Spalten wie Publisher-Name oder Ihre eigenen Notizen stören nicht. Sie werden beim Upload einfach nicht zugeordnet. Beim SFTP-Weg werden nur die fest vorgegebenen Spalten gelesen (siehe Weg B).

      Wenn Sie die Datei erzeugen lassen

      Erstellt ein Skript, ein Export Ihrer Warenwirtschaft oder ein KI-Assistent die Datei, geben Sie genau diese Vorgaben mit: Kopfzeile id;status;turnover;cancel_reason in Zeile 1, Beträge ohne Währung, keine Kopf- oder Summenzeilen, nur entschiedene Transaktionen. Prüfen Sie die erste Datei einmal im Transaktionsimport (Weg A), bevor Sie auf SFTP oder API umstellen.


      Schritt 1: Offene Transaktionen holen

      In der Transaktionsliste

        Transaktionen → Transaktionsliste öffnen. Zeitraum wählen und unter Status & Typ auf Offen filtern, bei Bedarf zusätzlich nach Kampagne. Liste aktualisieren klicken. Unter Export die Variante Transaktionsabgleich wählen und als CSV herunterladen.

        Export Transaktionsabgleich

        Der Export „Transaktionsabgleich“ enthält nur die Spalten, die für den Abgleich wichtig sind: id, status, timestamp, campaign_id, ordertoken, project_id, type, commission, trigger_id, turnover, order_currency, cancel_reason, dazu Projekt- und Kampagnenname. Die Bestellnummer aus Ihrem Shop steht in ordertoken, darüber finden Sie die Bestellung in Ihrem System.

        Die Datei lässt sich direkt bearbeiten und wieder hochladen. Löschen Sie vorher die Spalte commission, wenn Sie Umsätze ändern. Sonst wird die alte Provision zurückgeschrieben, statt sie neu zu berechnen.

        Automatisch über die Daten-API

        Unter API → Daten-API steht derselbe Export als fester Link zur Verfügung, Zeile Transaktionsabgleich. Ihr System kann ihn regelmäßig abrufen, zum Beispiel jede Nacht.

        Daten-API mit Transaktionsabgleich und Access-Token

        https://<Ihre-Domain>/api/<ACCESS-TOKEN>/admin/<LOGIN-ID>/get-orders_small.csv?condition[l:status]=open&condition[period][from]=01.10.2026&condition[period][to]=31.10.2026
        
        Teil Bedeutung <Ihre-Domain> die Adresse, unter der Sie sich anmelden <ACCESS-TOKEN> Ihr Access-Token, rechts auf der Seite Daten-API <LOGIN-ID> Ihre Login-ID .csv Format, alternativ .xlsx, .xml, .json condition[l:status] open, confirmed, canceled, paid, auch kombiniert: open,confirmed condition[period][from], [to] Zeitraum im Format TT.MM.JJJJ condition[l:campaigns] nur bestimmte Kampagnen, zum Beispiel 1

        Am einfachsten stellen Sie die Filter oben auf der Seite Daten-API ein und kopieren den fertigen Link. Alle Filter: Transaktions-API.

        Der Access-Token wirkt wie ein Passwort. Geben Sie Links mit Token nur an Personen und Systeme weiter, die diese Daten sehen dürfen.


        Schritt 2: Ergebnis zurückspielen

        Weg A: Upload im Transaktionsimport

        Transaktionen → Transaktionsimport (bzw. Administration → Transaktionsimport).

        1. Datei. „Transaktionen“ auswählen, die CSV hineinziehen, Trennzeichen Semikolon und Textbegrenzer doppelte Anführungszeichen stehen lassen, Datei einlesen. Eine Notiz wie „Abgleich Oktober“ hilft später in der intuitivenHistorie.

        easy.affiliate-API

        Schritt Datei

        durch

        2. Zuordnung. Heißen Ihre Spalten wie oben beschrieben, ordnet das System sie selbst zu: id → Transaktions-ID, status → Status, turnover → Umsatz, cancel_reason → Stornogrund. Unter jedem Feld steht der Wert aus der ersten Datenzeile, damit Sie sofort sehen, ob die Spalte passt. Heißen Ihre Spalten anders, wählen Sie sie hier von Hand aus.

        Entscheidend ist der Hinweis über dem Formular:

          blau, „Aktualisierung“: Die Transaktions-ID ist zugeordnet, bestehende Transaktionen werden geändert. So muss es beim Abgleich aussehen. grün, „Neuanlage“: Keine Transaktions-ID zugeordnet, jede Zeile würde als neue Transaktion angelegt. Dann fragt das System nach Projekt-ID, Trigger-ID, Bestellnummer und Zeitpunkt. Für einen Abgleich ist das falsch: Spalte id prüfen.

          Schritt Zuordnung: Aktualisierung erkannt

          3. Prüfung. Vor dem Import zählt das System, was passieren würde. Für einen Abgleich steht die Zahl unter Änderung, gültig, bei Neu steht 0. Abgelehnte Werte erscheinen als Tabelle mit Zeile, Feld, Wert und Hinweis. Die Vorschau zeigt die ersten Zeilen, filterbar nach Fehlern und Dubletten.

          Schritt Prüfung

          4. Import. Import starten schickt den Advertiser

          Turnusgemäßer Upload seitens EASY-M auf einen SFTP-Server des Advertisers Versand durch EASY-M per E-MailAuftrag an den AdvertiserImporter, er beginnt innerhalb weniger Sekunden. Mit Zur Freigabe vorlegen wird der Auftrag erst ausgeführt, wenn ein zweites Konto ihn freigibt (Vier-Augen-Prinzip).

          Danach steht der Auftrag in der Historie unter dem Formular. Ein Klick öffnet das Detail: Zahl der geänderten und übersprungenen Zeilen, jede abgelehnte Zelle mit Grund und ein Protokoll je Zeile mit dem Wert vorher und nachher. Dort sehen Sie für jede Transaktion, was der Abgleich geändert hat.

          Mehr zum Transaktionsimport: Transaktionsabgleich / Conversion.

          Weg B: SFTP

          Für regelmäßige Dateien richten Sie sich einen eigenen SFTP-Zugang ein. Den Abgleich übernimmt danach das System.

            Integrations → SFTP-Uploads öffnen und oben rechts die Kampagne wählen. Zugang einrichten. Das System legt den Zugang und die Ordner an und zeigt Host, Port, Benutzername und Passwort. Das Passwort wird nur dieses eine Mal angezeigt, speichern Sie es sofort in einem Passwortmanager. Ein neues lässt sich jederzeit erzeugen, das alte wird dabei sofort ungültig. Ihre Abgleichsdatei in den Ordner /order_abgleich_import/ hochladen.

            Alle 15 Minuten holt das System neue Dateien aus dem Ordner, importiert sie und verschiebt sie danach nach done/. Jede Datei erscheint als eigener Auftrag in der Historie des Transaktionsimports, mit denselben Details wie bei Weg A.

            Unterschiede zum Upload:

              Es gibt keinen Zuordnungsschritt. Die Spalten müssen genau so heißen: id, status, turnover, cancel_reason, optional commission und description. Trennzeichen ist immer das Semikolon, Textbegrenzer immer das doppelte Anführungszeichen. Ändern Sie über SFTP den Umsatz, geben Sie die neue Provision in commission mit an.

              Schritt

              Der 2:Ordner Bearbeitung/order_tracking_import/ derist für neue Transaktionen durchgedacht, nicht für den AdvertiserAbgleich.

              AnschließendEine bearbeitetDatei dermit Advertiser die aus easy.affiliate exportierte Transaktionsliste. Dabei können – bis auf die FelderSpalte id undgehört immer nach ordertoken/order_abgleich_import/ – alle Felder bearbeitet und angepasst werden..

              SchrittWeg 3:C: ÜbermittlungWebservice-API

              Mit der überarbeitetenAPI Transaktionslisteändert anIhr easy.affiliateSystem Transaktionen direkt, einzeln oder viele auf einmal, ohne Datei.

              AuchÄndern oder neu anlegen? Das entscheidet die HTTP-Methode:

              Methode Wirkung PUT ändert bestehende Transaktionen. Legt nie eine neue an. POST legt neue Transaktionen an, siehe Create Orders.

              Für den Abgleich nutzen Sie ausschließlich PUT.

              Zugang

              URL https://<Ihre-Domain>/ws/V6/admin/REST/Orders Methode PUT Content-Type application/json X-Auth-ID Login-ID Ihres Admin-Benutzers X-Auth-Token Access-Token dieses Benutzers, zu finden unter API → Daten-API X-Network-ID -1 (bzw. die ID Ihres Mandanten, wenn Sie mehrere haben)

              Legen Sie für die Anbindung am besten einen eigenen Benutzer an, zum Beispiel „Salesabgleich API“. Dann ist in diesemder SchrittHistorie passtjeder sichTransaktion easy.affiliatezu ansehen, Ihredass gewünschtendie ÜbermittlungswegeÄnderung an:aus der Anbindung kam.

              Aufruf

              curl -X PUT "https://<Ihre-Domain>/ws/V6/admin/REST/Orders" \
                -H "Content-Type: application/json" \
                -H "X-Auth-ID: <LOGIN-ID>" \
                -H "X-Auth-Token: <ACCESS-TOKEN>" \
                -H "X-Network-ID: -1" \
                -d '[
                  { "id": 4271510, "status": 1 },
                  { "id": 4271509, "status": 2, "cancel_reason": "Retoure" },
                  { "id": 4223190, "status": 1, "turnover": 89.90 }
                ]'
              
              Feld Pflicht Inhalt id ja Transaktions-ID status ja 0, 1 oder 2 als Zahl turnover nein korrigierter Netto-Umsatz als Zahl mit Punkt, zum Beispiel 89.90 cancel_reason nein Stornogrund commission nein nur für einen bewusst festen Betrag, siehe Provision

              Schicken Sie nur diese Felder. Eine campaign_id ist nicht nötig, die id reicht. Große Abgleiche teilen Sie auf mehrere Aufrufe auf.

              Antwort: Woran Sie sehen, dass alles angekommen ist

              Die Antwort enthält in data jede Transaktion, die geändert wurde, mit ihrem neuen Stand:

              {
                "data": [
                  { "id": 4271510, "status": 1, "turnover": 19.99, "commission": 5, "cancel_reason": null, "status_change_date": "2026-10-28T14:50:44+00:00", ... },
                  { "id": 4271509, "status": 2, "turnover": 19.99, "commission": 5, "cancel_reason": "Retoure", ... },
                  { "id": 4223190, "status": 1, "turnover": 89.9, "commission": 8.99, ... }
                ]
              }
              
              • DownloadGleichen Sie die IDs in der bearbeitetenAntwort Transaktionslistemit durchden easy.affiliategesendeten ab. Eine Transaktion, die in data fehlt, wurde nicht geändert: Die ID gibt es nicht, oder die Transaktion ist bereits ausgezahlt. Die API meldet dafür keinen Fehler, die Zeile fehlt einfach.
              • Übermittlungstatus, turnover und commission in der einzelnenAntwort geänderten Positionen per Server-Sided-Call ansind die easy.affiliate-APIWerte, die jetzt im System stehen. Hier sehen Sie auch, ob die Provision neu berechnet wurde.
              • Uploadstatus_change_date setzt das System selbst, sobald sich der ListeStatus imändert.
              FrontendBei falschen Zugangsdaten kommt {"error": true, "message": "Authentification failed."}.

              AnschließendTesten wirdSie die TransaktionslisteAnbindung vollautomatischzuerst mit einer einzigen Transaktion und prüfen Sie das Ergebnis in easy.affiliateder eingespieltTransaktionsliste, bevor Sie den ganzen Abgleich schicken.

              Weitere Felder und Beispiele: Update Orders.


              Häufige Fehler

              Was Sie sehen Ursache Lösung „Es wurde nur eine Spalte erkannt“ und „Für die OrdersNeuanlage fehlen: Kampagnen-ID, Projekt-ID …“ Über der Kopfzeile stehen Titel, Beschreibung oder Leerzeilen, oder das Trennzeichen stimmt nicht. Alles über der Kopfzeile löschen. Trennzeichen im Schritt Datei prüfen. Hinweis „Neuanlage“ statt „Aktualisierung“ Die Spalte mit der Transaktions-ID fehlt oder heißt anders. Spalte id nennen oder im Schritt Zuordnung bei Transaktions-ID auswählen. Betrag abgelehnt: nicht als Zahl lesbar Währung oder Text in der Zelle, zum Beispiel 12,49 EUR. Nur die Zahl eintragen. Letzte Zeile ungültig Summenzeile wie „Gesamt“ am Ende der Datei. Summenzeile entfernen. Provision hat sich geändert, obwohl nur der Status geändert werden entsprechendsollte Die Spalte commission aus dem Export wurde mitgeschickt. Spalte commission vor dem Upload löschen. Provision bleibt alt, obwohl der AnpassungenUmsatz geupdatet.geändert wurde Spalte commission aus dem Export enthält noch den alten Wert, oder Abgleich per SFTP ohne commission. Beim Upload die Spalte löschen. Bei SFTP die neue Provision mitgeben. Transaktion wurde nicht geändert Sie ist bereits ausgezahlt (Status 3), oder die ID stimmt nicht. ID in der Transaktionsliste suchen. Ausgezahlte Transaktionen korrigiert der Support.

              So sieht der Transaktionsimport aus, wenn über der Kopfzeile noch Text steht:

              WieDatei mit Text über der Kopfzeile

              eingangs
              erwähnt,

              Fragen

              entspricht

              Für dieseAbgleiche, Beschreibung nur dem Grundkonzept. Sollten Sie Anforderungen haben, welchedie über die hier aufgezeigtendiese Wege hinausgehen, entwickelnetwa wirein Abruf direkt aus Ihrem Warenwirtschaftssystem oder ein festes Dateiformat, das Sie nicht ändern können, schreiben Sie an support@easy-m.de. Wir richten die passende Strecke mit Ihnen zusammen eine individuelle Abgleichsstrecke.ein.