PHPackages                             lacodix/sevdesk-saloon - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. lacodix/sevdesk-saloon

ActiveLibrary[API Development](/categories/api)

lacodix/sevdesk-saloon
======================

A PHP package for consuming the SevDesk API based on Saloon

v0.15.0(1mo ago)0439↑66.7%1MITPHPPHP ^8.2CI passing

Since Sep 13Pushed 5mo ago1 watchersCompare

[ Source](https://github.com/lacodix/sevdesk-saloon)[ Packagist](https://packagist.org/packages/lacodix/sevdesk-saloon)[ Docs](https://gitlab.pwhost.de/lacodix/sevdesk-saloon)[ GitHub Sponsors](https://github.com/lacodix)[ RSS](/packages/lacodix-sevdesk-saloon/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (10)Versions (19)Used By (0)

sevdesk-saloon
==============

[](#sevdesk-saloon)

[![Latest Version on Packagist](https://camo.githubusercontent.com/64128e3748634bcc5bc3041cd40233ba0d87ebd498e8e1f400a3bdcf19f165ef/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6c61636f6469782f7365766465736b2d73616c6f6f6e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/lacodix/sevdesk-saloon)[![GitHub Tests Action Status](https://camo.githubusercontent.com/273cdc1b67504cdfade4cf3acacc52b4d4d8d265cebbd3e7293971a4828d9f50/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6c61636f6469782f7365766465736b2d73616c6f6f6e2f746573742e79616d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/lacodix/sevdesk-saloon/actions?query=workflow%3Atest+branch%3Amain)[![GitHub Code Style Action Status](https://camo.githubusercontent.com/8f84a91344338662dd9e70738ada8d078a01747292f4ad9cc82beebb794cbe65/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6c61636f6469782f7365766465736b2d73616c6f6f6e2f7374796c652e79616d6c3f6272616e63683d6d61696e266c6162656c3d636f64652532307374796c65267374796c653d666c61742d737175617265)](https://github.com/lacodix/sevdesk-saloon/actions?query=workflow%3Astyle+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/fe18637426411d5dcf11e1869fa32b2f5464ceec2ec9f456f9a3fbea5a9dbe3b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c61636f6469782f7365766465736b2d73616c6f6f6e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/lacodix/sevdesk-saloon)

Documentation
-------------

[](#documentation)

\*\* WORK IN PROGRESS \_ DOCUMENTATION NOT READY \*\*

You can find the entire documentation for this package on [our documentation site](https://www.lacodix.de/docs/sevdesk-saloon).

This package helps you to consume the Sevdesk API with your PHP projects. The package is based on Saloon

Installation
------------

[](#installation)

```
composer require lacodix/sevdesk-saloon
```

Quickstart
----------

[](#quickstart)

Create an API Connector first. You have to provide some configuration data, to get the sevdesk api working. There are several settings that you'd have to set in all requests otherwise, like default tax rates and your api user id.

```
use Lacodix\SevdeskSaloon\SevdeskSaloon;

$sevdeskSaloon = new SevdeskSaloon(
    $api_token, // Your API Token - get it in your Sevdesk account
    [
        'sevUserId'   => 12345678,     // the Sevdesk Uer ID - needed to create invoices
        'taxRate'     => 19,
        'taxText'     => 'MwSt 19%',   // only in version 1.0
        'taxType'     => 'default',    // only in version 1.0
        'taxRule'     => 1,            // only in version 2.0
        'currency'    => 'EUR',
        'invoiceType' => 'RE',
    ]
);
```

Get Your API User Id
--------------------

[](#get-your-api-user-id)

Unfortunately Sevdesk doesn't show up the user ids on the UI. So you have to consume the API without configuration for the first time. You can just run the following code (you need a valid token).

```
    $sevdeskSaloon = new SevdeskSaloon($api_token);
    $sevdeskSaloon->sevUser()->get();
```

this will return an array of all sevUsers in your account. Take the ID and save it in your configuration.

```
[
    [
      "id" => "1234567",
      "objectName" => "SevUser",
      "additionalInformation" => null,
      "create" => ...,
      ...
    ]
]
```

Consuming the Api
-----------------

[](#consuming-the-api)

With the connector you can just consume all existing API resources

```
    $sevdeskSaloon->contact()->get();
    $sevdeskSaloon->contact()->create($contactType, $contactData);

    $sevdeskSaloon->invoice()->get();
    $sevdeskSaloon->invoice()->create($sevContactId, $items, $data);
    $sevdeskSaloon->invoice()->sendViaEmail($invoiceId, $data);
```

Mock API Calls in your tests
----------------------------

[](#mock-api-calls-in-your-tests)

Since this package is based on Saloon, you can just use the MockClient to mock all requests in your tests.

See [Saloon Documentation](https://docs.saloon.dev/the-basics/testing#testing-your-application) for more information.

Contributing
------------

[](#contributing)

Please run the following commands and solve potential problems before committing and think about adding tests for new functionality.

```
composer rector:test
composer insights
composer csfixer:test
composer phpstan:test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Credits
-------

[](#credits)

- [lacodix](https://github.com/lacodix)
- [Martin Applemann](https://github.com/exlo89) for [laravel-sevdesk-api](https://github.com/exlo89/laravel-sevdesk-api)
- [Sam Carré](https://github.com/Sammyjo20) for [Saloon](https://github.com/saloonphp/saloon)

With the first usage of Sevdesk API we used the package [laravel-sevdesk-api](https://github.com/exlo89/laravel-sevdesk-api)created by Martin. Nevertheless we had some issues, for example when downloading invoices as PDF, which Martin solved via a direkt print out of the pdf, while we wanted to save the PDF on our side. Finally the testability with mocking the default Guzzle Client is a impertinence, why we decided to make our own package based on Saloon and with no dependency on Laravel, so you can also use it in other composer based PHP Projects. Some few parts are still based on Martins package like the Countries-Enum.

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance80

Actively maintained with recent releases

Popularity16

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~37 days

Recently: every ~140 days

Total

16

Last Release

43d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/123ffce0596acef2904868164413bca95eeeaa4e2ba557b3620f11fce22cfbb7?d=identicon)[lacodix](/maintainers/lacodix)

---

Top Contributors

[![renky](https://avatars.githubusercontent.com/u/6528960?v=4)](https://github.com/renky "renky (6 commits)")

---

Tags

apilaravellacodixSEVDESK

###  Code Quality

Static AnalysisPHPStan, Rector

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/lacodix-sevdesk-saloon/health.svg)

```
[![Health](https://phpackages.com/badges/lacodix-sevdesk-saloon/health.svg)](https://phpackages.com/packages/lacodix-sevdesk-saloon)
```

###  Alternatives

[exlo89/laravel-sevdesk-api

A helpful Sevdesk API client for Laravel.

1116.5k](/packages/exlo89-laravel-sevdesk-api)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
