Using the sevDesk API to extend bookkeeping functionality

Using the sevDesk API to extend bookkeeping functionality

The sevDesk dashboard

sevDesk is an accounting cloud-software (SaaS), which offers a simple and intuitive user interface, but allows to book complex processes as in common accounting software. There is other accounting-SaaS too (and I tested most of the big ones), but sevDesk has the most features AND they have a very well-designed REST API which allows you to do anything (and more!), which can be done by the web-based user interface.

Using the sevDesk-API, you can automate every accounting task.

In this introduction, we are going to create a simple Python tool that returns all unpaid invoices.

Step 1: Gather API-token

To get your API token, go to Settings > User (in German: Einstellungen > Benutzer) and click on your user — you will find the token below the language setting. It’s recommended to create an extra user.

User settings in sevDesk, showing the API token.

Step 2: Create web requests to the API

At this point, we can finally start coding. The API-endpoints are documented here, you can even enter your token and play around with the API.

This is the Python code to get all unpaid invoices:

Step 3: Create your custom logic

Now you have your basic setup and you could start implementing your custom logic, like reminding your customers to pay their invoices.

For the sake of simplicity, my code example doesn’t handle any errors.

Of course, you can use any other programming language for this too. I just use Python for prototyping API-logic, because the interaction with JSON and object-manipulation is great.

Feel free to share your sevDesk-projects with me, I hope to see lots of tools on GitHub.

Further use cases

This was a very simple example, but you can do a lot more with the API, e.g.:

  • Automatically backup all your data or send it to the accountant
  • Generate Elster-import data for the “Zusammenfassende Meldung” (a German tax form not supported by sevDesk)
  • Automate invoicing for more complex reoccurring payments
  • Integrate in your own shop software.
  • Create a customer dashboard, which shows all there invoices.