maesn

Xero-Schnittstelle und API-Integration

Xero ist eine Cloud-Buchhaltungsplattform, die kleine Unternehmen und Kanzleien in UK, Irland, Australien, Neuseeland, den USA und Kanada einsetzen. Binden Sie es über Maesn an, und Sie erreichen es mit derselben REST API und demselben Datenmodell wie jedes andere unterstützte System.

IHR PRODUKT+28
Diese Software-Teams vertrauen uns
HubSpotTipaltiPaywiseRallyQredNordhealthFindityFintoClockinHEROHolviLanes & PlanesAgicapHubSpotTipaltiPaywiseRallyQredNordhealthFindityFintoClockinHEROHolviLanes & PlanesAgicap
Warum es schnell geht

Eine Xero-Anbindung in Tagen

Xero ist gut dokumentiert, und es lässt sich angenehm damit arbeiten. Zeit kostet ein Team die Pflege, die Xero um jeden Aufruf und jede Verbindung herum erwartet. Hier steht, was das ist, und was Maesn davon abnimmt.

Xero: Jeder Aufruf braucht eine Tenant-ID

Einmal geklärt, immer dabei

Xero identifiziert die angebundene Organisation über eine Tenant-ID, die bei jeder Anfrage mitlaufen muss. Maesn klärt sie bei der Authentifizierung, speichert sie bei der Verbindung und hängt sie an jeden Aufruf, damit nichts Xero-Eigenes Ihren Code erreicht.

Xero: Tokens laufen nach 30 Minuten ab

Das Token erreicht Ihren Code nie

Xero-Access-Tokens sind kurzlebig und müssen aktiv rotiert werden, je angebundener Organisation. Maesn verwahrt die Zugangsdaten und erledigt diese Rotation hinter dem Account-Key, kein Teil Ihres Produkts speichert also ein Xero-Token oder verfolgt, wann es abläuft.

Xero: Webhooks kommen app-weit an

Stattdessen je Kunde zugestellt

Xero benachrichtigt Ihre App, nicht Ihren Kunden: Ein Abonnement deckt alle Verbindungen auf einmal ab, und Sie klären, zu wem das Event gehört. Maesn macht daraus Events je Kunde. Jeder Callback trägt damit die Daten eines einzigen Kunden.

In Ihrem Code kommen ein REST-Aufruf und ein Account-Key an. Teams gehen in Tagen live, und das System nach Xero ist ein Konfigurationsschritt und kein zweites Projekt.

Ein kurzes Gespräch genügt meist, um zu klären, ob Maesn zu Ihrem Anwendungsfall passt.

Kundenstimme
40.000
Handwerksbetriebe auf der Plattform von HERO Software

HERO Software baut gegen klare Dokumentation und echte Sandboxes

HERO Software digitalisiert das Backoffice für Handwerksbetriebe, vom Angebot bis zur Rechnung.

“Die Unterstützung ist wirklich erstklassig, mit beeindruckend kurzen Reaktionszeiten. Die Dokumentation ist gründlich und leicht nachvollziehbar, und dadurch war die Integration für mich ein reibungsloser Ablauf.”
Ricardas Kauneckas
Full Stack Engineer, HERO Software
Warum Unternehmen Maesn wählen

Drei Gründe, die Xero-Schnittstelle über Maesn anzubinden

Xero direkt anzubinden ist ein Projekt, das Sie abschließen können. Es angebunden zu halten, und danach das nächste System hinzuzunehmen, entscheidet über Ihre Roadmap.

01

Die Xero-eigene Arbeit bleibt hier

Die Tenant-Auflösung, kurzlebige Tokens, die rotiert werden müssen, und das app-weite Webhook-Routing sind das, was jede Xero-Integration lösen muss. Gelöst wird es einmal, hier, für jeden Kunden, den Sie anbinden.

02

Events kommen je Kunde an

Xero benachrichtigt Ihre App statt Ihres Kunden: Ein Abonnement löst für alle angebundenen Organisationen gleichzeitig aus, und herauszufinden, wessen Event es war, ist Ihre Sache. Maesn teilt diesen Strom auf. Jeder Callback trägt damit einen Kunden und erreicht Sie in der Form, die jedes andere System benutzt.

03

Das nächste System kostet nichts

Sobald Xero läuft, antwortet jedes andere unterstützte Buchhaltungs- und ERP-System auf derselben Schnittstelle. Ihre zweite Integration ist ein Konfigurationsschritt.

App Store und Partnerschaft

Zertifiziert, gelistet und auf der richtigen Xero-Stufe

Die meisten Anbieter hören bei der API auf. Maesn übernimmt die technische Seite und die Beziehung, und bei Xero entscheidet die zweite darüber, wie weit die erste Sie bringt: Eine nicht zertifizierte App ist eine von nur zweien, die ein Kunde überhaupt verbinden kann.

Technische Unterstützung

Eine Integration gegen die Unified API und ein Datenmodell, identisch zu jedem anderen System, das Maesn unterstützt. Ihre Entwickler treffen hier auf dieselbe Schnittstelle wie beim nächsten System.

Unterstützung bei der Partnerschaft

Maesn führt Sie durch den Xero-App-Partner-Prozess, vom Aufsetzen der App über die Prüfung bis zum Eintrag im App Store, und hilft Ihnen auf die Stufe, die Ihr Anwendungsfall wirklich braucht.

Fünf Stufen im Xero Partner Hub
  1. Starter
  2. Core
  3. Plus
  4. Advanced
  5. Enterprise

Was über Ihre Stufe entscheidet

Die Zahl der Verbindungen und das ausgehende Datenvolumen. Die Stufe folgt also daraus, wie viele Kunden Sie anbinden und wie viel Sie von ihnen lesen.

Was ab Advanced beginnt

Die Endpunkte für Buchungssätze und die Authentifizierung für mehrere Firmen gibt es ab der Stufe Advanced, und das sollten Sie wissen, bevor Sie einen Entwurf darauf aufbauen.

Die App ist auf Ihr Unternehmen registriert. Der Eintrag läuft also unter Ihrer Marke. Ihr Name ist das, was der Kunde beim Verbinden sieht.

Maesn führt den Xero-App-Partner-Prozess parallel zu Ihrer Integration.

Authentifizierung

Ihre App auf dem Xero-Zustimmungsbildschirm, unsere Arbeit dahinter

Xero authentifiziert über OAuth, und die App, die Ihre Kunden freigeben, ist Ihre und nicht die von Maesn. Sie registrieren sie einmal im Entwicklerportal und übergeben die Zugangsdaten, und Maesn fährt den Ablauf für jeden Kunden, den Sie danach anbinden.

Auth-Verfahren
OAuth
Ihre eigene Xero-App

Eine App, jeder Kunde. Maesn verwahrt die Zugangsdaten und die Rotation hinter Ihrem Account-Key.

Was Maesn für Sie verwahrt
Ihre App-Zugangsdaten
Client-ID und Secret werden einmal eingereicht und für jede Verbindung benutzt. Xero zeigt das Secret ein einziges Mal, kopieren Sie es also, bevor Sie die Seite verlassen.
Tokens und Tenant
Xero lässt ein Access-Token nach 30 Minuten verfallen, und die Rotation für jede angebundene Organisation läuft hier statt in Ihrem Code. Die Tenant-ID wird bei der Verbindung gespeichert und an jede Anfrage gehängt.

Wie dieser Account-Key zu Ihnen gelangt, gehört selbst zu Unified Authentication: der übliche Redirect auf Ihre Callback-URL, ein Antwort-Body oder ein signiertes Webhook-Event. Der Schlüssel muss also nie in einem Query-String reisen.

Wie Ihr Kunde sich verbindet
  1. 1

    Ihr Kunde startet in Ihrem Produkt

    Sie schicken ihn in den Ablauf, und Maesn öffnet den Zustimmungsbildschirm von Xero. Er trägt den Namen Ihrer App, denn die App ist auf Ihr Unternehmen registriert. Die Verbindung liest sich also als Ihre.

  2. 2

    Xero kehrt zu Maesn zurück

    Die Redirect-URL Ihrer App zeigt auf den Callback von Maesn. Der Code-Tausch und das erste Token passieren also hier statt in Ihrem Backend. Von OAuth erreicht nichts Ihren Code.

  3. 3

    Sie arbeiten mit einem Account-Key

    Maesn speichert die Verbindung und gibt einen Account-Key zurück. Ab da trägt jede Anfrage Ihren API-Schlüssel und diesen Account-Key, dieselben zwei Header, die Sie für jedes andere System im Katalog ohnehin schon senden.

Jedes System im Katalog authentifiziert anders, und bei Xero ist der Ablauf Standard und die Pflege darum herum nicht. Unified Authentication hält das von Ihrer Seite fern: Der Redirect, der Token-Lebenszyklus und die Art, wie Ihnen der Account-Key übergeben wird, sind dort konfigurierbar und identisch, ganz gleich, welches System ein Kunde anbindet.

Synchron bleiben

App-weite Xero-Events, je angebundenem Kunden zugestellt

Xero unterstützt native Webhooks, und zwei Ressourcen mit zwei Event-Typen sind heute über Maesn verdrahtet. Maesn abonniert je angebundenem Kunden und vereinheitlicht die Nutzlasten. Die Form, die Sie verarbeiten, ist damit bei jedem System identisch, das Sie anbinden.

Ressourcen2 verfügbar
KontakteRechnungen
Event-Typen2 verfügbar
AngelegtAktualisiert

Die Einrichtung hat zwei Hälften, und nur die erste ist einmalig: Sie schalten die Ressource in Ihrer Xero-App frei, was für jeden Nutzer dieser App gilt, und Maesn registriert danach ein Abonnement je authentifiziertem Kunden, damit jeder Callback nur die Events dieses Kunden trägt. Xero sendet keine Lösch-Events und keinen Datumsfilter darauf. Alles außerhalb von Kontakten und Rechnungen bleibt also ein Abfragelauf.

Zwei Ressourcen und zwei Event-Typen sind ein schmales Fenster, und die Systeme um Xero herum ziehen es wieder anders. Was ein Event-Modell Ihnen gibt, ist eine einzige Form zum Parsen und keine einzige Zustellung: Ein Rechnungs-Event von Xero und ein Lesezugriff nach Zeitplan von einem System, das nichts sendet, kommen als derselbe Datensatz an, und nur die Frage nach der Aktualität wird anders beantwortet.

Bevor Sie starten

Was Xero voraussetzt

Xero stellt drei Dinge vor eine Integration, und alle lassen sich leichter einplanen als auf halber Strecke entdecken.

Ein Xero-Konto mit Administratorrechten
Es dient dazu, Ihre App und später Ihre Partnerschaft zu verwalten. Ein kostenloses Testkonto genügt, und es muss kein Konto sein, das Sie sonst benutzen.
Ihre eigene Xero-App, von Ihnen registriert
Sie legen sie im Entwicklerportal von Xero als Web-App an, unter dem Namen Ihres Produkts, und diesen Namen lesen Ihre Kunden auf dem Zustimmungsbildschirm. Die Redirect-URL zeigt auf den Callback von Maesn. Danach erzeugen Sie das Client Secret, das Xero genau einmal anzeigt, und schicken Client-ID und Secret an Maesn.
Zwei nicht zertifizierte Apps je Kunde
Xero lässt je Organisation oder Kanzlei höchstens zwei nicht zertifizierte Apps gleichzeitig zu. Bis Ihre zertifiziert ist, konkurriert sie bei jedem Kunden, den Sie erreichen wollen, um einen dieser beiden Plätze. Die Zertifizierung über den App-Partner-Prozess hebt das auf, und Maesn führt den Prozess mit Ihnen durch.

Wir gehen die App-Einrichtung und den Zertifizierungsweg mit Ihnen durch.

Das Datenmodell

Eine Form für Xero, und für das nächste System

Xero ist das System, mit dem die meisten Produkte anfangen. Die Form, in der es ankommt, ist damit die Form, an die sich der Rest Ihres Katalogs halten muss. Entschieden wird das hier und nicht je System.

Korrekturen reichen weniger weit als Lesezugriffe

Es lassen sich mehr Objekte lesen als schreiben, und Aktualisierungen an Ort und Stelle beschränken sich auf Kontakte und Ausgaben. Wenn Ihr Produkt Datensätze bearbeitet, statt neue zu buchen, ist das die Grenze, die Sie zuerst prüfen sollten.

Standardmäßig löscht kein Objekt

Für kein Objekt ist Löschen freigeschaltet. Die Buchhaltungspraxis erwartet Korrekturen und Stornos ohnehin als neue Belege, planen Sie sie also so und nicht um ein Löschen herum, das Sie erst anfragen müssten.

Alles andere ist eine Anfrage und keine Sackgasse

Objekte mit der Kennzeichnung auf Anfrage fehlen nicht, sie sind nur nicht standardmäßig freigeschaltet. Sagen Sie uns, welche Ihr Anwendungsfall braucht, und sie kommen dazu.

Was Sie lesen, kommt im gemeinsamen Common Data Model zurück, eine Rechnung aus Xero hat also dieselbe Form wie eine Rechnung aus jedem anderen unterstützten System, und der Code, den Sie hier schreiben, ist der Code, den Sie für das nächste wiederverwenden.

Sagen Sie uns, welche Objekte Ihr Anwendungsfall braucht, und wir bestätigen, was möglich ist.

Xero FAQ

Xero API-Fragen

Was ist Xero?

Xero ist eine Cloud-Buchhaltungsplattform für kleine Unternehmen und Kanzleien, verbreitet im Vereinigten Königreich, in Irland, Australien, Neuseeland, den USA und Kanada. Sie deckt Rechnungsstellung, Buchhaltung, Bankabstimmung, Ausgabenerfassung und Auswertungen in mehreren Währungen ab.

Brauche ich eine eigene Xero-App?

Ja. Sie registrieren die App im Entwicklerportal von Xero, und genau das stellt den Namen Ihres Produkts auf den Zustimmungsbildschirm, den Ihre Kunden sehen, und Sie reichen Client-ID und Secret einmal bei Maesn ein. Von da an fährt Maesn den Ablauf für jeden Kunden.

Was ist die Xero-Tenant-ID, und muss ich mich darum kümmern?

Jede Xero-Anfrage muss die Tenant-ID der angebundenen Organisation tragen. Maesn klärt sie bei der Authentifizierung, speichert sie bei der Verbindung und hängt sie an jeden Aufruf, in Ihrem Code bleibt also keine Xero-eigene Behandlung übrig.

Wie geht Maesn mit der Token-Rotation von Xero um?

Xero-Access-Tokens verfallen nach 30 Minuten und müssen aktiv rotiert werden, und das Refresh-Token rotiert mit. Maesn verwahrt die Zugangsdaten für jede angebundene Organisation und erledigt diese Rotation hinter Ihrem Account-Key. Ihr Produkt speichert also nie ein Xero-Token und muss nie wissen, wann eines abgelaufen ist.

Unterstützt Xero Webhooks?

Ja, für Kontakte und Rechnungen, mit den Events angelegt und aktualisiert. Xero sendet sie app-weit. Ein einziges Abonnement deckt also alle Verbindungen auf einmal ab. Maesn macht daraus Events je Kunde, mit derselben Form der Nutzlast wie bei jedem anderen System, das Sie anbinden.

Muss meine Xero-App zertifiziert sein?

Für eine erste Verbindung nicht, aber sie entscheidet, wie weit Sie kommen. Xero erlaubt einer Organisation oder Kanzlei zwei nicht zertifizierte Apps gleichzeitig. Ein Kunde, den Sie ansprechen, hat also möglicherweise beide Plätze belegt. Die Zertifizierung über den Xero-App-Partner-Prozess nimmt Ihre App aus diesem Topf heraus, und es ist derselbe Prozess, der zu einem Eintrag im App Store führt. Maesn fährt ihn mit Ihnen.

Welche Stufen gibt es im Xero Partner Hub?

Der Partner Hub hat fünf Stufen: Starter, Core, Plus, Advanced und Enterprise. Sie unterscheiden sich in der Zahl der Verbindungen und im ausgehenden Datenvolumen, und die Endpunkte für Buchungssätze sowie die Authentifizierung für mehrere Firmen beginnen bei der Stufe Advanced. Maesn hilft Ihnen, die Stufe zu wählen, die Ihr Anwendungsfall braucht, und nicht die, die sicher klingt.

Welche Daten kann ich in Xero lesen und schreiben?

Konten, Rechnungen, Rechnungspositionen, Kunden, Lieferanten, Kontakte, Ausgaben, Buchungssätze, Zahlungen, Steuersätze und Buchungsvorschläge werden heute unterstützt, wobei das Lesen mehr Objekte abdeckt als das Schreiben. Objekte mit der Kennzeichnung auf Anfrage sind auf Anfrage verfügbar.

Warum Xero über Maesn anbinden statt direkt?

Weil die Arbeit bei Xero nicht aufhört. Direkt heißt, die OAuth-App, die Tenant-ID bei jedem Aufruf, den Ablauf der Tokens nach 30 Minuten, das app-weite Webhook-Routing und jede künftige inkompatible Änderung zu tragen, und das für ein System. Über Maesn bauen Sie einmal gegen ein Datenmodell, und jedes andere unterstützte Buchhaltungs- und ERP-System ist danach auf derselben Schnittstelle erreichbar.
Jede Integration, nach der Ihre Kunden fragen. In Tagen, nicht in Monaten.