Tutorial: Zugriff auf QuickBooks Online APIs für Entwickler

Melden

Hier ist ein umfassendes Tutorial, wie du als Entwickler auf die QuickBooks Online APIs zugreifst.


QuickBooks Online (QBO) bietet eine leistungsstarke REST-API, mit der Entwickler Buchhaltungsdaten wie Rechnungen, Kunden, Ausgaben und Berichte verwalten können. Um den Zugriff zu ermöglichen, nutzt Intuit den OAuth 2.0-Standard.

In diesem Guide gehen wir Schritt für Schritt durch den Prozess – von der Registrierung bis zum ersten API-Aufruf.


1. Voraussetzungen

Bevor du startest, benötigst du:

  • Ein Intuit Developer Konto (kostenlos).
  • Grundkenntnisse in REST APIs und OAuth 2.0.
  • Ein Tool zum Testen von APIs (z. B. Postman) oder eine Entwicklungsumgebung deiner Wahl.

Schritt 1: Ein Intuit Developer Konto erstellen

  1. Gehe auf das Intuit Developer Portal.
  2. Klicke auf Sign Up und erstelle ein Konto.
  3. Nach dem Login gelangst du zum Dashboard.

Schritt 2: Eine App erstellen

Um API-Schlüssel zu erhalten, musst du im Portal eine "App" registrieren:

  1. Klicke auf Dashboard und dann auf Create an app.
  2. Wähle die Plattform: QuickBooks Online and Payments.
  3. Gib deiner App einen Namen (z.B. "Meine Test-Integration").
  4. Wähle einen Scope (Bereich) aus – meistens "Accounting", wenn du auf Finanzdaten zugreifen willst.
  5. Klicke auf Create app.

Schritt 3: API-Credentials (Schlüssel) abrufen

Sobald die App erstellt ist, findest du in der linken Seitenleiste den Punkt Development -> Keys & Credentials. Dort findest du zwei wichtige Informationen für die Sandbox-Umgebung (Testumgebung):

  • Client ID: Die eindeutige Kennung deiner App.
  • Client Secret: Dein Passwort für die API (geheim halten!).

Hinweis: Es gibt separate Schlüssel für "Development" (Sandbox) und "Production" (Live-Daten).

Schritt 4: Redirect URIs konfigurieren

Damit OAuth 2.0 funktioniert, muss Intuit wissen, wohin der User nach der Anmeldung zurückgeschickt werden soll.

  1. Gehe zu Keys & Credentials.
  2. Unter Redirect URIs füge deine lokale URL hinzu (z. B. http://localhost:3000/callback).
  3. Wenn du Postman nutzt, füge https://www.getpostman.com/oauth2/callback hinzu.

Schritt 5: Authentifizierung via OAuth 2.0

QuickBooks nutzt OAuth 2.0. Der Ablauf ist wie folgt:

  1. Authorization Request: Der Nutzer wird zur Intuit-Login-Seite geleitet.
  2. Authorization Code: Nach dem Login erhältst du einen temporären Code.
  3. Token Exchange: Du tauschst den Code gegen ein Access Token (kurzlebig) und ein Refresh Token (langlebig) aus.

Profi-Tipp: Nutze das OAuth Playground von Intuit. Hier kannst du ohne Programmierung Tokens generieren und die API sofort testen.

Schritt 6: Der erste API-Aufruf

Die Basis-URL für die Sandbox-Umgebung lautet: https://sandbox-quickbooks.api.intuit.com/v3/company/{company_id}/...

Hier ist ein Beispiel für einen GET-Request, um Unternehmensinformationen abzurufen:

Endpoint: GET /v3/company/<Deine_Company_ID>/companyinfo/<Deine_Company_ID>

Header:

Authorization: Bearer <Dein_Access_Token>
Accept: application/json
Content-Type: application/json

2. Tools für die Entwicklung

QuickBooks Online SDKs

Intuit bietet offizielle SDKs an, um die Arbeit mit OAuth und den Endpunkten zu erleichtern:

  • Java
  • .NET
  • PHP
  • Node.js
  • Python (Community-basiert)

Sandbox-Umgebung

In deinem Developer Dashboard unter Tools -> Sandbox findest du Test-Unternehmen mit Beispieldaten. Hier kannst du gefahrlos Rechnungen erstellen oder löschen, ohne echte Buchhaltungsdaten zu beeinflussen.


3. Wichtige Endpunkte (Beispiele)

Hier sind einige der am häufigsten genutzten Endpunkte:

  • Kunden abrufen: GET /v3/company/{realmId}/query?query=select * from Customer
  • Rechnung erstellen: POST /v3/company/{realmId}/invoice
  • Berichte (P&L): GET /v3/company/{realmId}/reports/ProfitAndLoss

4. Tipps für den Live-Gang (Production)

Wenn deine App fertig ist und du auf echte Daten zugreifen möchtest:

  1. Vervollständige dein Profil im Developer Portal.
  2. Reiche deine App zur Überprüfung ein (Intuit prüft Sicherheitsrichtlinien).
  3. Wechsle im Dashboard von Development Keys zu Production Keys.
  4. Ersetze die Sandbox-Base-URL durch: https://quickbooks.api.intuit.com.

Nützliche Links:

Viel Erfolg bei deiner Integration!

0