PHPackages                             aanndryyyy/e-financials-php-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. [HTTP &amp; Networking](/categories/http)
4. /
5. aanndryyyy/e-financials-php-client

ActiveLibrary[HTTP &amp; Networking](/categories/http)

aanndryyyy/e-financials-php-client
==================================

PHP client for the e-Arveldaja / e-Financials REST API

v0.1.1(today)04↑2900%GPL-2.0-or-laterPHPPHP ^8.2.0CI passing

Since Apr 3Pushed today1 watchersCompare

[ Source](https://github.com/aanndryyyy/e-financials-php-client)[ Packagist](https://packagist.org/packages/aanndryyyy/e-financials-php-client)[ Docs](https://github.com/aanndryyyy/e-financials-php-client)[ RSS](/packages/aanndryyyy-e-financials-php-client/feed)WikiDiscussions main Synced today

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

e-Financials (e-Arveldaja) PHP API Client
=========================================

[](#e-financials-e-arveldaja-php-api-client)

PHP client for the [e-Arveldaja / e-Financials REST API](https://abiinfo.rik.ee/node/304/).

API docs: [OpenAPI HTML](https://demo-rmp-api.rik.ee/api.html) · [openapi.yaml](https://demo-rmp-api.rik.ee/openapi.yaml)

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

[](#installation)

```
composer require aanndryyyy/e-financials-php-client guzzlehttp/guzzle
```

This package is PSR-18 based. Provide any PSR-18 HTTP client; Guzzle is the usual choice and is used for discovery when installed.

Related
-------

[](#related)

Using WooCommerce? [e-financials-woocommerce-integration](https://github.com/aanndryyyy/e-financials-woocommerce-integration) builds on this client to sync WooCommerce orders into e-Financials.

Authentication
--------------

[](#authentication)

Generate an API key in e-Arveldaja under **Seadistused → Üldised seadistused**. Each request is signed with:

- `X-AUTH-QUERYTIME` — UTC timestamp (`Y-m-d\TH:i:s`)
- `X-AUTH-KEY` — `{apiKeyPublic}:{BASE64(HMAC-SHA-384("{apiKeyId}:{queryTime}:{path}", apiKeyPassword))}`

Example
-------

[](#example)

```
