Coder Social home page Coder Social logo

baebeca-solutions / lexoffice-php-api Goto Github PK

View Code? Open in Web Editor NEW
36.0 13.0 19.0 5.71 MB

PHP-Client für lexoffice.de Public-API

Home Page: https://www.baebeca.de/softwareentwicklung/lexoffice-php-client/

License: GNU Affero General Public License v3.0

PHP 100.00%
lexoffice lex-office php7 api-client lexoffice-php-api php api-wrapper api-client-php api-clients php8

lexoffice-php-api's Introduction

lexoffice-php-api

PHP (minimum 7.4 oder 8.0) Client für lexoffice.de Public API

Wir lieben Automatisierung und die nahtlose Verzahnung von Systemen!

lexoffice.de stellt seinen Kunden eine öffentliche API-Schnittstelle zur Verfügung über die bestehende Systeme integriert und Prozesse automatisiert werden können. Für diesen Ansatz haben wir einen PHP-Client entwickelt und stellen diesen kostenfrei zur Verfügung.

Alle weiteren Informationen finden Sie hier:

  • Allgemeine Themen auf unserer Projektseite
  • Eine technische Dokumentation in unserem Wiki

Baebeca Solutions bei lexoffice.de

lexoffice

lexoffice.de API-Dokumentation

Die offizielle lexoffice API-Dokumentation findest du hier.

lexoffice-php-api Dokumentation

Die Dokumentation mit allen Informationen findest du in unserem Wiki unter https://wiki.baebeca.de/index.php?title=lexoffice-php-api

Support

An wen kann ich mich wenden, wenn ich Probleme oder Fragen habe?
Für diese Frage ist entscheidend, ob du eine Nutzungslizenz für unsere lexoffice-php-api erworben hast oder die kostenlose Variante nutzt.

  • Sofern eine Nutzungslizenz vorhanden ist, kannst du dich sich jederzeit gerne wie folgt an uns wenden:
  • Wenn du die kostenlose Version benutzt, kannst du einen Github issue öffnen.

Lizenz

Unsere Software wurde unter der "GNU Affero General Public License v3.0" Lizenz veröffentlicht. Dies bedeutet, dass Sie unsere Software gerne in Ihren Projekten und Produkten nutzen dürfen, solange Sie Ihr Projekt dann ebenso Quelloffen unter den in der Lizenz genannten Rahmenbedingungen zur Verfügung stellen.

Wenn Sie Ihre Lösung nicht veröffentlichen möchten, Support benötigen, individuelle Erweiterungen benötigen oder dieses Projekt einfach Unterstützen möchten, können Sie für 99,- EUR/Netto eine lifetime Nutzungslizenz erhalten. Setzte dich diesbezüglich einfach kurz mit uns via [email protected], 02261-8161691 oder über unsere Website in Verbindung.

lexoffice-php-api's People

Contributors

elompenta avatar jmebb avatar valeriiabykovets avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lexoffice-php-api's Issues

get_invoice_pdf() invoice not ready ?

Separates Problem aus #6

Hintergrund ist, dass ich Belege via API anlege und danach die Beleg-PDF herunterladen muss. Manchmal kommt es vor, dass der Beleg noch nicht erstellt ist und somit der PDF Download fehlschlägt. Würde get_invoice_pdf() in diesem Fall false zurückgeben und nicht das Script mit exit() stoppen, könnte man z.B.: mit einer while Schleife solange get_invoice_pdf() abfragen, bis die Rechnung von Lexoffice erstellt wurde.

@siach ich konnte das so noch nicht reproduzieren.
Die PDF werden sequentiell erstellt.

Siehe API Beschreibung

newly created invoices in status open via the API have to trigger the pdf document file rendering separately. This can be done with this endpoint.

Was genau ist denn deine Rückgabe da? Kannst du das reproduzieren?
Das könnten wir ja direkt schon im Client für jedermann abfangen ;)

Return value der Methoden create_invoice() und get_invoice_pdf()

Die beiden Methoden create_invoice() und get_invoice_pdf() liefern bei einem Fehler keinen Rückgabewert mehr, da das Script (lexoffice-php-api.php) in Zeile 78 und 108 mit exit() abgebrochen wird.
Damit ist kein Error Handling mehr möglich.

Hintergrund ist, dass ich Belege via API anlege und danach die Beleg-PDF herunterladen muss. Manchmal kommt es vor, dass der Beleg noch nicht erstellt ist und somit der PDF Download fehlschlägt. Würde get_invoice_pdf() in diesem Fall false zurückgeben und nicht das Script mit exit() stoppen, könnte man z.B.: mit einer while Schleife solange get_invoice_pdf() abfragen, bis die Rechnung von Lexoffice erstellt wurde.

Belege via API auf "Bezahlt" setzen

Es wäre super, wenn man Belege via API als bezahlt markieren könnte. Momentan gibt es ja nur "draft" oder "open".
Die anderen Zustände der voucherStatus Enum (paid, voided) sind leider Read-only.

Der Hintergrund ist, dass ich über einen Zahlungsdienstleister ein Abo-Modell anbiete.
Die Rechnung wird also erst erstellt, wenn schon bezahlt wurde.
Mein Workflow auf dem Server ist wie folgt und voll automatisiert:

  • Abo wird abgeschlossen
  • Beleg via lexoffice-php-api anlegen
  • PDF von jenem Beleg via lexoffice-php-api downloaden
  • Email mit Beleg-PDF als Anhang verschicken.
  • VERY NICE TO HAVE: Beleg via API als "paid" markieren. Es würde auch reichen, wenn man den Beleg schon beim Erstellen anstatt mit "finalize" auf open irgendwie auf paid setzen könnte.

Momentan nur muss ich noch jede Rechnung von Hand als bezahlt markieren, was bei 150+ Rechnungen pro Monat leider nicht wenig aufwand bedeuted. Mit der oben genannten Funktion könnte der Workflow zu 100% automatisiert werden.

create example.php

move /tests/overview.php to /example.php with some changes for better understanding

Fehler bei Rechnungserstellung

Moin,

immer, wenn ich eine Rechnung erstellen möchte, dann bekomme ich einen Fehler, jedoch kann ich diesen nicht über $e->get_error() auslesen, da die Rechnung in der IPN von Paypal / Mollie erstellt wird, sprich die Seite nur von einem WebHook aufgerufen wird.

Ich finde den Fehler irgendwie einfach nicht.

Hier meine Paypal-IPN: https://paste.robin-it.group/xipawivejo.php

Mit freundlichen Grüßen,
Robin & @eliaskyt

Add method for getting (a single) delivery note

Working recently with your API client (wich is great btw) I noticed that there is no method for getting a single delivery note. I added the method by extending the class but it would be nice to have this integrated into your client:

public function get_deliverynote($uuid) {
        return $this->api_call('GET', 'delivery-notes', $uuid);
}

Support Voucher Endpoint

  • create_voucher($data)
  • get_voucher($uuid)
  • get_voucher_files($uuid, $filename_prefix)
  • upload_voucher($uuid, $file)

ssl_verify is deprecated

Hi,

since the update to php 8.2 I get the message

Creation of dynamic property lexoffice_client::$ssl_verify is deprecated in lexoffice-php-api.php on line 31

#69724 - Get more then 10K vouchers is not possible

At the moment it is not possible to request more than 10K items due lexoffice internal restrictions
The lexoffice-API will throw an HTTP 500, so lets abort it until lexoffice has integrated a solution for this limitation

Datei Upload

Es wäre absolut klasse wenn der lexoffice-php-client die Möglichkeit des Dateiuploads bieten würde.
Mangels Erfahrung mit Curl in php und der API von lexoffice scheitere ich aktuell leider daran.
Die API von lexoffice bietet die Möglichkeit und der Client würde aus meiner Sicht somit noch sehr viel interessanter werden da sowohl die Eingangs-, als auch Ausgangsbelege automatisch erfasst werden können.

Noch genialer wäre es, wenn die Belegdaten gleich mit hochgeladen werden könnten, so dass ein nochmaliges Anfassen in der Belegerfassung in Lexoffice überflüssig wäre. Ich denke aber, dass die API aktuelle diese Funktion nicht anbietet.

Vielen Dank an die überaus fleißigen Entwickler hier, der lexoffice-php-client ist echt mega hilfreich!!!

Gruß Arne

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.