1. Melden Sie sich unter https://api.usegroup.de/devportal/ an, wählen Sie die neueste Mustangserver-API aus und laden Sie die OpenAPI-Definition (=Swagger) der API herunter.

2. Öffnen Sie die Datei in einem Texteditor, markieren Sie den gesamten Inhalt und kopieren Sie ihn.
3. Laden Sie ein Swagger Editor Docker-Image herunter, führen Sie es aus und rufen Sie es auf, z. B. mit
docker run -d -p 80:8080 docker.swagger.io/swaggerapi/swagger-editor
Lokal über Port 8080 ausführen. Fügen Sie die kopierte Swagger-Datei ein.
4. Verwenden Sie „Generate Client|PHP“, um eine ZIP-Datei herunterzuladen, und extrahieren Sie diese.

5. Bearbeiten Sie die extrahierte Datei „composer.json“ und ändern Sie den Namen des Projekts in der Datei „composer.json“ in „lowercaps/lowercaps“.
6. Aktualisieren Sie die Versionsnummer von php-cs-fixer auf ^2.0. Führen Sie anschließend „composer install“ in diesem Verzeichnis aus.

7. Kopieren Sie das Beispiel aus dem Abschnitt „Erste Schritte“ der Datei readme.md in eine neue Datei mit dem Namen index.php.

8. Jetzt lassen wir Client-Anmeldedaten zu. Klicken Sie auf „Anwendungen“ (8.), „Standardanwendung“.
9. Klicken Sie auf „Produktionsschlüssel/OAuth2-Token“. Alternativ können Sie auch erstellen API-Schlüssel. Bitte beachten Sie, dass alle alten API-Schlüssel weiterhin funktionieren, wenn Sie neue API-Schlüssel erstellen. Bitte beachten Sie auch, dass API-Schlüssel im Gegensatz zu OAuth-Tokens für zukünftige Versionen möglicherweise aktualisiert werden müssen, da sie an die derzeit bestehenden Abonnements gebunden sind.
10. Als Vorbereitung für die Authentifizierung: Überprüfen Sie die Client-Anmeldedaten und klicken Sie unten auf der Seite auf die Schaltfläche „Aktualisieren“.
11. Jetzt erhalten wir einen Zugriffstoken: Für diesen Teil verwenden wir einen Token, der in Kürze abläuft. Klicken Sie auf „Zugriffstoken generieren“ (11.), generieren Sie den Token und kopieren Sie ihn. Fügen Sie ihn ein.

12. index.php (12.), in derselben Datei
13. Ändern Sie ErrorController in Mustangcontroller (13.) und
14. handle() in ping() (14.). Bitte beachten Sie, dass Ihnen gängige PHP-Editoren eine Code-Vervollständigung anbieten. Nun können Sie die resultierende Datei index.php über Ihren Server und den PHP-Prozessor in Ihrem Browser öffnen. Sie sollte nun wie in Screenshot 6 aussehen:

OAuth2-Authentifizierung
Zurück zu Screenshot 4:
Fügen Sie in index.php den folgenden Code ein
$client = new GuzzleHttp\Client();
$res = $client->request('POST', 'https://gw.usegroup.de:9443/oauth2/token', [
'auth' => ['<15.>', '<16.>'],
'form_params' => [
'grant_type' => 'client_credentials',
]
]);
$json = json_decode($res->getBody(), true);

15. Kopieren Sie den Verbraucherschlüssel (15., aus Bildschirm 4) an den Anfang von index.php (16.).
17. Verbrauchergeheimnis (18.) anzeigen und kopieren.
19 Ersetzen Sie das statische Zugriffstoken, das ungültig wird, durch $json[„access_token“].
20 Erstellen oder laden Sie eine zu validierende Rechnung herunter, z. B. https://www.mustangproject.org/files/MustangGnuaccountingBeispielRE-20201121_508.pdf, und speichern Sie sie als factur-x.pdf.
21 Ändern Sie die Methode in validateFile und
22 HTML-Escape des Validierungsergebnisses, sodass das Ergebnis im Browser wie in Screenshot 8 aussieht:

Das war’s. Anstatt das XML anzuzeigen, können Sie es nun analysieren 🙂
