# Сущность [Вернуться к содержанию](readme.md#toc) --- Сущностями являются все классы, которые необходимы для взаимодействия с API. Они находятся в директори `src/Entities` и расширяют абстрактный класс `AtolOnline\Entities\Entity`. Каждая сущность содержит в себе только те данные, которые необходимы согласно схемы АТОЛ Онлайн API. Ниже перечислены возможности сущностей. ## Приведение к строке JSON ```php echo $entity; $json_string = (string)$entity; ``` ## Приведение к массиву ```php // результат идентичен $json_array1 = $entity->jsonSerialize(); $json_array2 = $entity->toArray(); ``` ## Чтение из массива ```php $var = new \AtolOnline\Entities\Client('Иванов Иван'); echo $var['name']; // 'Иванов Иван' $var['name'] = 'Петров Пётр'; // BadMethodCallException ``` ## Fluent-сеттеры Реализованы на уровне конкретных классов сущностей, но у некоторых могут полностью отсуствовать. ```php $entity->setFoo($value)->setBar('bar')->... ``` Сеттеры валидируют и фильтруют данные согласно схеме АТОЛ Онлайн API, а в случае ошибочных значений -- выбрасывают исключения. --- Читай также: [Коллекция сущностей](collection.md) [Вернуться к содержанию](readme.md#toc)