h4kuna/ares

Provides information about subjects by their identification number from the ARES database (in Czech Republic).

Maintainers

๐Ÿ‘ h4kuna

Package info

github.com/h4kuna/ares

pkg:composer/h4kuna/ares

Statistics

Installs: 418โ€‰418

Dependents: 2

Suggesters: 0

Stars: 50

Open Issues: 0

v3.0.14 2025-12-05 08:01 UTC

Requires

Suggests

Provides

None

Conflicts

None

Replaces

None

MIT 94655a8b374798eebf49698883f1a0108ae5ae36

  • Milan Matฤ›jฤek <milan.matejcek.woop@gmail.com>

README

๐Ÿ‘ Downloads this Month
๐Ÿ‘ Latest Stable Version
๐Ÿ‘ Coverage Status
๐Ÿ‘ Total Downloads
๐Ÿ‘ License

More information about versions is in changelog.

Support development by QR code

Use QR code or sponsor button where is link on my revolut.

Thank you :)

๐Ÿ‘ QR payment

Installation to project

The best way to install h4kuna/ares is using Composer:

composer require h4kuna/ares

# optional and default support
composer require guzzlehttp/guzzle

Download information about customer via his IN.

ARES

Homepage documentation for developers.

Load data by one identification number.

use h4kuna\Ares;
$ares = (new Ares\AresFactory())->create();
try {
 $response = $ares->loadBasic('87744473');
 /* @var $response Ares\Ares\Core\Data */
 var_dump($response);
} catch (Ares\Exception\IdentificationNumberNotFoundException $e) {
 // log identification number, why is bad? Or make nothing.
} catch (Ares\Exception\AdisResponseException $e) {
 // if validation by adis failed, but data from ares returned
 /* @var $response Ares\Ares\Core\Data */
 $response = $e->data;
 $response->adis === null; // true
 var_dump($e->getMessage());
} catch (Ares\Exception\ServerResponseException $e) {
 // no response from server or broken json
}

Load data by many identification numbers. Limit by ARES service is set to 100 items, but library chunk it and check duplicity.

use h4kuna\Ares;
/** @var Ares\Ares $ares */
$numbers = ['one' => '25596641', 'two' => '26713250', 'three' => '27082440', 'four' => '11111111'];

try { 
 foreach ($ares->loadBasicMulti($numbers) as $name => $r) {
 var_dump($name, $r->company);
 }
} catch (Ares\Exception\ServerResponseException $e) {
 // no response from server or broken json
}

Other endpoints

Choose endpoint from class Sources.

  • SERVICE_* - available other endpoints
  • CORE - is main endpoint this is used in method $ares->loadBasic()
  • DIAL - use if you want list of value for example PravniForma
  • SER_NO_* are not exists
use h4kuna\Ares;

/** @var Ares\Ares $ares */
$result = $ares->getAresClient()->useEndpoint(Ares\Ares\Sources::SERVICE_VR, '27082440');
var_dump($result);

Dials

Parameters kodCiselniku and zdrojCiselniku you can find in json file, on this page AresRestApi-verejne_v*.json, like a ciselnikKod: PravniForma, zdroj: res.

use h4kuna\Ares;

/** @var Ares\Ares $ares */
$result = $ares->getAresClient()->searchEndpoint(Ares\Ares\Sources::DIAL, [
	'kodCiselniku' => 'PravniForma',
	'zdrojCiselniku' => 'res',
])->ciselniky[0]->polozkyCiselniku;

foreach ($result as $item) {
	var_dump($item);
}

Data Box (datovรก schรกnka)

Manual

use h4kuna\Ares;
/** @var Ares\Ares $ares */
try {
 $response = $ares->loadDataBox('87744473');
 var_dump($response->ISDS);
} catch (h4kuna\Ares\Exception\ServerResponseException $e) {
 // catch error
}

VIES

Support base check.

use h4kuna\Ares;
/** @var Ares\Ares $ares */

try {
 $response = $ares->checkVatVies($vatNumber);
 var_dump($response->valid); // true / false
} catch (Ares\Exception\ServerResponseException $e) {
 // invalid VAT
}