Tutorial: Zugriff auf QuickBooks Online APIs für Entwickler
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
- Gehe auf das Intuit Developer Portal.
- Klicke auf Sign Up und erstelle ein Konto.
- 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:
- Klicke auf Dashboard und dann auf Create an app.
- Wähle die Plattform: QuickBooks Online and Payments.
- Gib deiner App einen Namen (z.B. "Meine Test-Integration").
- Wähle einen Scope (Bereich) aus – meistens "Accounting", wenn du auf Finanzdaten zugreifen willst.
- 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.
- Gehe zu Keys & Credentials.
- Unter Redirect URIs füge deine lokale URL hinzu (z. B.
http://localhost:3000/callback). - Wenn du Postman nutzt, füge
https://www.getpostman.com/oauth2/callbackhinzu.
Schritt 5: Authentifizierung via OAuth 2.0
QuickBooks nutzt OAuth 2.0. Der Ablauf ist wie folgt:
- Authorization Request: Der Nutzer wird zur Intuit-Login-Seite geleitet.
- Authorization Code: Nach dem Login erhältst du einen temporären Code.
- 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:
- Vervollständige dein Profil im Developer Portal.
- Reiche deine App zur Überprüfung ein (Intuit prüft Sicherheitsrichtlinien).
- Wechsle im Dashboard von Development Keys zu Production Keys.
- Ersetze die Sandbox-Base-URL durch:
https://quickbooks.api.intuit.com.
Nützliche Links:
Viel Erfolg bei deiner Integration!