PHPackages                             dkd-dobberkau/easybill-api-client - 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. dkd-dobberkau/easybill-api-client

ActiveLibrary[API Development](/categories/api)

dkd-dobberkau/easybill-api-client
=================================

PHP client for the Easybill REST API

v1.0.0(5mo ago)00MITPHPPHP &gt;=8.2

Since Jan 31Pushed 5mo agoCompare

[ Source](https://github.com/dkd-dobberkau/easybill-api-client-php)[ Packagist](https://packagist.org/packages/dkd-dobberkau/easybill-api-client)[ RSS](/packages/dkd-dobberkau-easybill-api-client/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (5)Versions (2)Used By (0)

Easybill API Client (PHP)
=========================

[](#easybill-api-client-php)

PHP client for the [Easybill REST API](https://www.easybill.de/api/).

Requirements
------------

[](#requirements)

- PHP 8.2+
- Composer

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

[](#installation)

```
composer require dkd-dobberkau/easybill-api-client
```

Usage
-----

[](#usage)

```
use Dkd\EasybillClient\EasybillClient;
use Dkd\EasybillClient\DocumentType;

$client = new EasybillClient(apiKey: 'your-api-key');

// Get all customers
$customers = $client->getCustomers();

// Get invoices for a year
$invoices = $client->getInvoices(year: 2025);

// Get all documents
$documents = $client->getDocuments();

// Get documents of specific type
$offers = $client->getDocuments(documentType: DocumentType::OFFER);

// Get projects
$projects = $client->getProjects();
```

API
---

[](#api)

### EasybillClient

[](#easybillclient)

- `getCustomers(int $limit = 1000)` - Get all customers
- `getCustomer(int $customerId)` - Get single customer
- `getDocuments(?DocumentType $documentType, ?DateTimeImmutable $startDate, ?DateTimeImmutable $endDate, ?int $customerId, ?string $status, int $limit)` - Get documents
- `getInvoices(?int $year, ?DateTimeImmutable $startDate, ?DateTimeImmutable $endDate, ?int $customerId)` - Get invoices
- `getDocument(int $documentId, bool $withItems = true)` - Get single document
- `getDocumentPdf(int $documentId)` - Download document PDF
- `getProjects(?int $customerId, int $limit)` - Get projects

### Document Types

[](#document-types)

```
use Dkd\EasybillClient\DocumentType;

DocumentType::INVOICE
DocumentType::CREDIT
DocumentType::OFFER
DocumentType::ORDER
DocumentType::RECURRING
```

### Exceptions

[](#exceptions)

- `EasybillException` - Base exception
- `EasybillAuthenticationException` - Authentication failed (401/403)
- `EasybillRateLimitException` - Rate limit exceeded (429)
- `EasybillNotFoundException` - Resource not found (404)

### Models

[](#models)

- `EasybillCustomer` - Customer data
- `EasybillDocument` - Invoice/document data
- `EasybillDocumentItem` - Line item in document
- `EasybillProject` - Project data

All models are `readonly` classes with a static `fromArray()` factory method.

License
-------

[](#license)

MIT

###  Health Score

33

—

LowBetter than 72% of packages

Maintenance73

Regular maintenance activity

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity47

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

Unknown

Total

1

Last Release

154d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/29404503?v=4)[olivierdo](/maintainers/olivierdo)[@olivierdo](https://github.com/olivierdo)

---

Top Contributors

[![dkd-dobberkau](https://avatars.githubusercontent.com/u/9196831?v=4)](https://github.com/dkd-dobberkau "dkd-dobberkau (3 commits)")

---

Tags

apiclientinvoicingEasyBill

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/dkd-dobberkau-easybill-api-client/health.svg)

```
[![Health](https://phpackages.com/badges/dkd-dobberkau-easybill-api-client/health.svg)](https://phpackages.com/packages/dkd-dobberkau-easybill-api-client)
```

###  Alternatives

[algolia/algoliasearch-client-php

API powering the features of Algolia.

69735.1M159](/packages/algolia-algoliasearch-client-php)[tempest/framework

The PHP framework that gets out of your way.

2.2k34.4k15](/packages/tempest-framework)[avalara/avataxclient

Client library for Avalara's AvaTax suite of business tax calculation and processing services. Uses the REST v2 API.

528.5M7](/packages/avalara-avataxclient)[theodo-group/llphant

LLPhant is a library to help you build Generative AI applications.

1.7k409.0k6](/packages/theodo-group-llphant)[resend/resend-php

Resend PHP library.

617.2M43](/packages/resend-resend-php)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

273.0k](/packages/eslazarev-wildberries-sdk)

PHPackages © 2026

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