{"id":36986596,"url":"https://github.com/axp-dev/cinemapark-api","last_synced_at":"2026-01-13T23:04:41.965Z","repository":{"id":62490481,"uuid":"99121578","full_name":"axp-dev/cinemapark-api","owner":"axp-dev","description":"PHP библиотека для интеграции с информационными системами Синема Парк.","archived":false,"fork":false,"pushed_at":"2017-08-04T11:35:48.000Z","size":53,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-05-14T23:52:53.668Z","etag":null,"topics":["api","cinema","cinemapark"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/axp-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-08-02T13:50:48.000Z","updated_at":"2018-04-17T19:50:15.000Z","dependencies_parsed_at":"2022-11-02T11:16:11.143Z","dependency_job_id":null,"html_url":"https://github.com/axp-dev/cinemapark-api","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/axp-dev/cinemapark-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axp-dev%2Fcinemapark-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axp-dev%2Fcinemapark-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axp-dev%2Fcinemapark-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axp-dev%2Fcinemapark-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/axp-dev","download_url":"https://codeload.github.com/axp-dev/cinemapark-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/axp-dev%2Fcinemapark-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28405135,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-13T21:51:37.118Z","status":"ssl_error","status_checked_at":"2026-01-13T21:45:14.585Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","cinema","cinemapark"],"created_at":"2026-01-13T23:04:41.019Z","updated_at":"2026-01-13T23:04:41.953Z","avatar_url":"https://github.com/axp-dev.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cinema Park API\nPHP библиотека для интеграции с информационными системами Синема Парк.\n\n[![Latest Stable Version](https://poser.pugx.org/axp-dev/cinemapark-api/v/stable)](https://packagist.org/packages/axp-dev/cinemapark-api)\n[![Latest Unstable Version](https://poser.pugx.org/axp-dev/cinemapark-api/v/unstable)](https://packagist.org/packages/axp-dev/cinemapark-api)\n[![License](https://poser.pugx.org/axp-dev/cinemapark-api/license)](https://packagist.org/packages/axp-dev/cinemapark-api)\n\n## Оглавление\n1. [Старт](#Старт)\n    + [Composer](#Установка-через-composer)\n    + [Инициализация](#Инициализация)\n2. [Использование](#Использование)\n    + Получение информации по кинотеатрам, фильмам и сеансам\n        + [Получение списка мультиплексов и городов](#Получение-списка-мультиплексов-и-городов)\n        + [Получение списка фильмов](#Получение-списка-фильмов)\n        + [Привязка фильмов к мультиплексам](###Привязка-фильмов-к-мультиплексам)\n        + [Получение расписания фильма](#Получение-расписания-фильма)\n        + [Получение расписания мультиплекса](#Получение-расписания-мультиплекса)\n        + [Получение дополнительной информации по фильму](#Получение-дополнительной-информации-по-фильму)\n        + [Получение списка залов по всем мультиплексам](#Получение-списка-залов-по-всем-мультиплексам)\n        + [Получение списка форматов показа фильмов](#Получение-списка-форматов-показа-фильмов)\n        + [Комплексная выгрузка текущего расписания мультиплекса](#Комплексная-выгрузка-текущего-расписания-мультиплекса)\n    + Организация интернет-бронирования и продаж\n        + [Проверка возможности начать сессию выбора мест для бронирования или покупки мест](#Проверка-возможности-начать-сессию-выбора-мест-для-бронирования-или-покупки-мест)\n        + [Инициализация сессии выбора мест для бронирования или покупки](#Инициализация-сессии-выбора-мест-для-бронирования-или-покупки)\n        + [Получение геометрической схемы зала](#Получение-геометрической-схемы-зала)\n        + [Получение состояния мест](#Получение-состояния-мест)\n        + [Действие с местом в сессии выбора мест](#Действие-с-местом-в-сессии-выбора-мест)\n        + [Отмена или закрытие сессии выбора мест](#Отмена-или-закрытие-сессии-выбора-мест)\n        + [Закрытие сессии выбора мест](#Закрытие-сессии-выбора-мест)\n        + [Открытие сессии выбора мест после фиксации](#Открытие-сессии-выбора-мест-после-фиксации)\n        + [Инициализация сессии оплаты](#Инициализация-сессии-оплаты)\n        + [Фиксация факта оплаты заказа](#Фиксация-факта-оплаты-заказа)\n        + [Фиксация факта неудачи оплаты заказа](#Фиксация-факта-неудачи-оплаты-заказа)\n3. [Вспомогательная информация](#Вспомогательная-информация)\n    + [Код возрастных ограничений](#Код-возрастных-ограничений)\n    + [Состояние сеанса](#Состояние-сеанса)\n    + [Режим открытия сессии выбора мест](#Режим-открытия-сессии-выбора-мест)\n    + [Код доступности инициализации сессии](#Код-доступности-инициализации-сессии)\n    + [Возможность работы с сеансом](#Возможность-работы-с-сеансом)\n    + [Статус сессии выбора мест](#Статус-сессии-выбора-мест)\n    + [Состояние места](#Состояние-места)\n    + [Идентификаторы платёжного агента](#Идентификаторы-платёжного-агента)\n4. [Автор](#Автор)\n5. [Лицензия](#Лицензия)\n\n## Старт\n### Установка через composer\n```\n$ composer require axp-dev/cinemapark-api\n```\n### Инициализация\n```php\n$CinemaPark = new AXP\\CinemaPark\\CinemaPark();\n\n// Получаем информаицю по фильму \"Гадкий я 3\"\n$film = $CinemaPark-\u003egetFilmInfo(3679);\n```\n\n## Использование\n### Получение списка мультиплексов и городов\n```php\npublic function getMultiplexes() : array\n```\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор мультиплекса\nshort_name | string | Короткое название мультиплекса\nfull_name | string | Полное название мультиплекса\ndescription | string | Описание кинотеатра\nphone | string | Телефон кинотеатра\nformats | array | Список форматов показа фильмов\ncity_id | integer | Идентификатор города мультиплекса\ncity_name | string | Наименование города мультиплекса\naddress | string | Адес мультиплекса\nmultiplex_geo | string | Географические координаты мультиплекса\n\n### Получение списка фильмов\nВ список могут попадать фильмы, не значащиеся в расписании мультиплексов (к примеру, поставленные в прокат на будущее, но без конкретного расписания).\n```php\npublic function getFilms() : array\n```\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nhas_subtitles | bool | Если фильм идёт с субтитрами (скорее всего, с оригинальной звуковой дорожкой)\nage_id | integer | Код возрастных ограничений. [Подробнее](#Код-возрастных-ограничений)\nstartdate | string | Дата старта проката в нашей сети (без учёта возможных премьерных показов)\ngenre | string | Текстовое описание жанра фильма\noriginal_title | string | Оригинальное название фильма (для иностранных фильмов)\ntiming | integer | Продолжительность фильма в минутах\nage_limit | integer | Возрастное ограничение. В будущем будет произведён полный переход от age_id к age_limit\ncategory | string | Slug категории \ntitle | string | Русскоязычное название фильма с учётом формата\nfilm_id | integer | Идентификатор фильма\nyoutubeid | string | Список трейлеров с Youtube (через запятую) \n\n### Привязка фильмов к мультиплексам\nВ список могут попадать фильмы, не значащиеся в расписании мультиплексов (к примеру, поставленные в прокат на будущее, но без конкретного расписания).\n```php\npublic function getFilmsMultiplexes() : array\n```\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор фильма\nmultiplex | array | Идентификатор мультиплекса, к которому привязан фильм\n\n### Получение расписания фильма\nВыводится всё известное расписание, в т.ч. и прошедшие сеансы.\n```php\npublic function getRepertoir($id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор фильма\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nformat_id | integer | Идентификатор формата показа, соответствующий выгрузке formats\nhall | integer | Идентификатор зала (уникален для всей сети)\nbase_price | integer | Цена билета на сеанс без учёта скидок (в российских рублях)\nid | integer | Идентификатор сеанса\nstate | bool | Состояние сеанса (открыт, либо фильмокопия не поступила / произошёл срыв сеанса / сеанс отменён). [Подробнее](#Состояние-сеанса)\ndatetime | string | Дата/время сеанса (местное время соответствующего мультиплекса)\nmultiplex | integer | Идентификатор мультиплекса\nglasses_price | integer | Дополнительная стоимость, взимаемая на кассе за 3D-очки\n\n### Получение расписания мультиплекса\n```php\npublic function getMultiplexRepertoir($id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор мультиплекса\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nformat_id | integer | Идентификатор формата показа, соответствующий выгрузке formats\nhall | integer | Идентификатор зала (уникален для всей сети)\nbase_price | integer | Цена билета на сеанс без учёта скидок (в российских рублях)\nid | integer | Идентификатор сеанса\nstate | bool | Состояние сеанса (открыт, либо фильмокопия не поступила / произошёл срыв сеанса / сеанс отменён). [Подробнее](#Состояние-сеанса)\ndatetime | string | Дата/время сеанса (местное время соответствующего мультиплекса)\nmultiplex | integer | Идентификатор мультиплекса\nglasses_price | integer | Дополнительная стоимость, взимаемая на кассе за 3D-очки\n\n### Получение дополнительной информации по фильму\n```php\npublic function getFilmInfo($id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор фильма\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nhit | bool | Присвоен ли фильму статус «Хит»\ndescription | string | Описание фильма\naddinfo | array | Дополнительная информация, тип которой указан в атрибуте «title» (режиссёр, актёры, озвучка)\nyear | integer | Год выпуска фильма\ncountry | string | Страна фильма\n\n### Получение списка залов по всем мультиплексам\n```php\npublic function getHalls() : array\n```\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\ntitle | string | Идентификатор зала внутри мультиплекса\nid | integer | Идентификатор зала внутри мультиплекса\n\n### Получение списка форматов показа фильмов\n```php\npublic function getFormats() : array\n```\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор формата (показываемый в выгрузке repertoir как format_id)\nshort_name | string | Наименование формата\ntitle_suffix | sting | Текстовая строка, которую нужно добавить к названию фильма, чтобы получить «название фильма с учётом формата»\npriority | integer | Очерёдность показа формата в списке форматов\n\n### Комплексная выгрузка текущего расписания мультиплекса\n```php\npublic function getTimeTable($id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nid | integer | Идентификатор мультиплекса\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nhall | integer | Идентификатор зала (уникален для всей сети)\nhall_title | string | Маркетинговое/коммерческое наименование зала\ndatetime | string | Дата/время сеанса (местное время соответствующего мультиплекса)\nbase_price | integer | Цена билета на сеанс без учёта скидок (в российских рублях)\nage_limit | integer | Возрастное ограничение на фильм\ntitle | string | Название фильма с учётом формата\nhall_website_id | integer | Идентификатор зала на сайте СИНЕМА ПАРК\nhas_subtitles | bool | Наличие субтитров на сеансе\n\n### Проверка возможности начать сессию выбора мест для бронирования или покупки мест\n```php\npublic function checkBSession($multiplex_id, $repertoir_id, $mode) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\nmode | integer | Режим открытия сессии выбора мест. [Подробнее](#Режим-открытия-сессии-выбора-мест)\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | integer | Можно ли начать сессию выбора мест. 0 - Нельзя, 1- Можно.\nmode_available | integer/array | Доступность режимов открытия сессии выбора мест. 0 - Нельзя, 1- Можно.\nb_session_availability | integer | Код доступности инициализации сессии. [Подробнее](#Код-доступности-инициализации-сессии)\nrepertoir_status | integer | Возможность работы с сеансом. [Подробнее](#Возможность-работы-с-сеансом)\n\n### Инициализация сессии выбора мест для бронирования или покупки\n```php\npublic function initBSession($multiplex_id, $repertoir_id, $mode) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\nmode | integer | Режим открытия сессии выбора мест. [Подробнее](#Режим-открытия-сессии-выбора-мест)\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | integer | Можно ли начать сессию выбора мест. 0 - Нельзя, 1- Можно.\nb_session_id | string | Идентификатор сессии выбора мест, использующийся в дальнейшем при выборе мест и отмене/фиксации сессии\n\n### Получение геометрической схемы зала\nСхему зала можно кешировать, рассчитывая на то, что в данном конкретном сеансе она не изменится.\n```php\npublic function seatsLayout($multiplex_id, $repertoir_id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nid | integer | ID места. Используется для выбора или для отмены выбора места\nnumber | integer | Номер зрительского кресла (расположен на спинке кресла)\nrow | integer | Ряд зрительских кресел\nxpos | integer | X-координата кресла на схеме зала\nypos | integer | Y-координата кресла на схеме зала\nblock_No | integer | Номер блока для групповых мест (диванов). Присутствует, если место является частью группового.\n\n### Получение состояния мест\n```php\npublic function seatStates($multiplex_id, $repertoir_id, $b_session_id, $timestamp_tz = 0) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\nb_session_id | string | Идентификатор сессии выбора мест\ntimestamp_tz | integer | Дата/время в формате Unix Timestamp\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nsql_date | array | Время на стороне нашей системы, соответствующее выводимым данным\nb_session_data | array | Данные сессии выбора мест (при наличии)\nseat_states | array | Данные по месту (при наличии)\n\n##### Данные в `b_session_data`\nПоле | Тип | Описание\n-----|-----|---------\nts_start_tz | integer | Время начала сессии в формате Unix Timestamp\nstatus | integer | Текущий статус сессии выбора мест. [Подробнее](#Статус-сессии-выбора-мест)\n\n##### Данные в `seat_states`\nПоле | Тип | Описание\n-----|-----|---------\nis_mine | bool | Принадлежит ли место текущей сессии выбора мест\nseat_id | integer | ID места, соответствующее выгрузке `seatsLayout()`.\nstate | integer | Состояние места. [Подробнее](#Состояние-места)\n\n### Действие с местом в сессии выбора мест\nВыбор места или снятие выбора\n```php\npublic function seatAction($multiplex_id, $repertoir_id, $b_session_id, $action_type, $seat_id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\nb_session_id | string | Идентификатор сессии выбора мест\naction_type | integer | Тип запроса. 0 - Снятие выбора, 1 - Выбор места\nseat_id | integer | Идентификатор места\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | bool | Удалось или нет произвести действие с местом\nstatustext | string | Текстовое описание проблемы, возникшей при попытке произвести действие с местом. В зависимости от проблемы может выводиться либо примерное описание проблемы (к примеру, «Сеанс отменён»), либо информация о внутренних системных ошибках с соответствующими номерами ошибок.\n\n### Отмена или закрытие сессии выбора мест\nИспользуется, когда пользователь хочет отказаться от бронирования или покупки на стадии выбора мест\n```php\npublic function cancelBSession($multiplex_id, $repertoir_id, $b_session_id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\nb_session_id | string | Идентификатор сессии выбора мест\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | bool | Удалось или нет произвести закрытие сессии выбора мест\nstatustext | string | Текстовое описание проблемы, возникшей при попытке произвести действие с местом. В зависимости от проблемы может выводиться либо примерное описание проблемы (к примеру, «Сеанс отменён»), либо информация о внутренних системных ошибках с соответствующими номерами ошибок.\n\n### Закрытие сессии выбора мест\nФиксация выбора мест\n```php\npublic function commitBSession($multiplex_id, $repertoir_id, $b_session_id, $mode, $email, $phone, $provider_id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\nb_session_id | string | Идентификатор сессии выбора мест\nmode | integer | Режим открытия сессии выбора мест. [Подробнее](#Режим-открытия-сессии-выбора-мест)\nemail | string | Адрес электронной почты для получения уведомлений об изменении состояния заказа\nphone | integer | Номер телефона (10 цифр) для получения sms-уведомлений об изменении состояния заказа\nprovider_id | integer | Идентификатор платёжного агента. [Подробнее](#Идентификаторы-платёжного-агента)\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | bool | Удалось или нет закрыть сессию выбора мест\nstatustext | string | Текстовое описание проблемы, возникшей при попытке произвести действие с местом. В зависимости от проблемы может выводиться либо примерное описание проблемы (к примеру, «Сеанс отменён»), либо информация о внутренних системных ошибках с соответствующими номерами ошибок.\norder_id | integer | Номер заказа. В случае бронирования он соответствует номеру брони, в случае продажи – будущему номеру продажи\n\n### Открытие сессии выбора мест после фиксации\nДля брони – редактирование существующей брони, для продажи – возврат в режим выбора мест до осуществления оплаты\nЕсли существующая бронь была переведена в режим редактирования и после этого не произошло завершение сессии с фиксацией выбора мест через `commitBSession()`, то бронь будет отменена по тайм-ауту.\n```php\npublic function editBooking($multiplex_id, $repertoir_id, $codeword) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\nrepertoir_id | integer | Идентификатор сеанса (уникален в пределах мультиплекса)\ncodeword | string | Кодовое слово заказа. Вводится пользователем и передаётся в нашу систему в момент фиксации выбора мест. Максимум 16 символов\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | bool | Удалось или нет перевести бронь в режим редактирования\nstatustext | string | Текстовое описание проблемы, возникшей при попытке произвести действие с местом. В зависимости от проблемы может выводиться либо примерное описание проблемы (к примеру, «Сеанс отменён»), либо информация о внутренних системных ошибках с соответствующими номерами ошибок.\nb_session_id | string | Идентификатор сессии выбора мест, который впоследствии используется для выбора мест и последующей отмены или завершения сессии с фиксацией выбора мест\n\n### Инициализация сессии оплаты\nВызывается перед направлением пользователя на страницу оплаты (после того, как был зафиксирован выбор мест, сформирована цена заказа и пользователь изъявил желание оплатить заказ)\n```php\npublic function initSSession($multiplex_id, $order_id, $codeword, $provider_id) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\norder_id | integer | Идентификатор заказа в конкретном мультиплексе\ncodeword | string | Кодовое слово заказа. Вводится пользователем и передаётся в нашу систему в момент фиксации выбора мест. Максимум 16 символов\nprovider_id | integer | Идентификатор платёжного агента. [Подробнее](#Идентификаторы-платёжного-агента)\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | bool | Удалось или нет произвести инициализацию сессии оплаты\nstatustext | string | Текстовое описание проблемы, возникшей при попытке инициализировать сессию оплаты. В зависимости от проблемы может выводиться либо примерное описание проблемы (к примеру, «Время на оплату истекло»), либо информация о внутренних системных ошибках с соответствующими номерами ошибок.\norder_number | string | Номер заказа для последующего сообщения клиенту. Формат – MM-NNNNNN\namount | integer | Сумма заказа в российских рублях на момент инициализации сессии. Должна совпадать с суммой оплаты, передаваемой в `commitSSession()`.\ntimestamp_validuntil | integer | Время, до которого необходимо оплатить заказ (UTC)\ntimestamp_validuntil_tz | integer | Это же время в формате timestamp tz\nsecurity_key | string | Цифровая подпись запроса на оплату. Формируется в соответствии с индивидуальными для каждого платёжного агента договорённостями\n\n### Фиксация факта оплаты заказа\n```php\npublic function commitSSession($multiplex_id, $order_id, $provider_id, $amount, $dt_payment, $transaction_id, $payment_type, $payment_info, $security_key) : array\n```\n#### Параметры метода\nАргумент | Тип | Описание\n-----|-----|---------\nmultiplex_id | integer | Идентификатор мультиплекса\norder_id | integer | Идентификатор заказа в конкретном мультиплексе\nprovider_id | integer | Идентификатор платёжного агента. [Подробнее](#Идентификаторы-платёжного-агента)\namount | integer | Сумма оплаты в российских рублях. Должна соответствовать сумме, полученной в результате обращения к `initSSession()`\ndt_payment | string | Дата/время платежа в соответствии с данными платёжной системы, UTC, формат «YYYY-MM-DD HH:MM:SS»\ntransaction_id | mixed | Идентификатор транзакции в платёжной системе (или в вашей системе обработки платежей)\npayment_type | string | Наименование механизма оплаты (к примеру, Card – банковская карта, Qiwi – платёжная система Qiwi и т.д.). Строка, максимум 20 символов.\npayment_info | string | Информация о плательщике, которая может помочь дежурному администратору кинотеатра определить «владельца заказа» в случае, когда клиент не может вспомнить номер заказа и кодовое слово\nsecurity_key | string | Цифровая подпись подтверждения платежа. Формируется по тем же правилам, что в методе `initSSession()`\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nstatus | bool | Оплаты прошла успешно\n\n### Фиксация факта неудачи оплаты заказа\n```php\npublic function registerPaymentFailure($multiplex_id, $order_id, $provider_id, $amount, $dt_payment, $transaction_id, $payment_type, $payment_info, $security_key) : array\n```\n#### Параметры метода\nПараметры полностью идентичны используемым в `commitSSession()`. [Подробнее](#Инициализация-сессии-оплаты)\n\n#### Результат ответа\nПоле | Тип | Описание\n-----|-----|---------\nresult | string | Сообщение от сервиса\n\n## Вспомогательная информация\n### Код возрастных ограничений\nЗначение | Описание \n-----|-----\n1 | без ограничений по возрасту\n2 | до 12 лет в сопровождении родителей\n3 | достигшим 14 лет\n4 | достигшим 16 лет\n5 | достигшим 18 лет\n6 | для детей старше 6 лет\n\n### Состояние сеанса\nЗначение | Описание \n-----|-----\n1 |Сеанс открыт, в нём можно бронировать и покупать билеты\nне 1 | Сеанс не открыт, в нём нельзя бронировать и покупать билеты\n\nВопрос «показывать ли пользователю сеансы, где state != 1» остаётся на ваше усмотрение.\n\n### Режим открытия сессии выбора мест\nЗначение | Описание \n-----|-----\n0 | Проверка режимов бронирования и покупки\n1 | Бронирование\n2 | Покупка\n\n### Код доступности инициализации сессии\nЗначение | Описание\n-----|-----\n0 | Ошибка получения статуса\n1 | Можно инициализировать сессию\n2 | Превышено общее количество активных сессий\n3 | Превышено количество активных сессий в мультиплексе\n4 | Превышено количество активных сессий в сеансе\n5 | Превышено количество активных сессий по IP-адресу\n6 | Превышено общее количество сессий по IP-адресу\n7 | Превышено количество бронирований по IP-адресу\n8 | Система недоступна, ведутся технические работы\n\nДля IP, внесённых в «белый список», всегда должно возвращаться 1.\n\n### Возможность работы с сеансом\nЗначение | Описание\n-----|-----\n0 | Различные нарушения целостности базы данных\n1 | Нет соединения с базой данных\n2 | Отсутствует сеанс\n3 | Сеанс не открыт\n4 | В зале нет ни одного свободного места, бронь и продажи закрыты\n5 | Всё OK, сеанс открыт – можно бронировать и продавать\n6 | Слишком мало времени до сеанса, продажа запрещена\n7 | Слишком мало времени до сеанса, бронирование запрещено\n8 | Сеанс прошёл\n9 | В зале осталось мало свободных мест — разрешена только продажа\n10 | В данном сеансе разрешено только бронирование\n\n### Статус сессии выбора мест\nЗначение | Описание\n-----|-----\n1 | Идёт выбор мест\n2 | Выбор мест отменён (пользователь отказался от бронирования/покупки на стадии выбора мест)\n3 | Таймаут выбора (сессия закрыта по тайм-ауту, пользователь не отказался от выбора мест, но и не подтвердил его)\n4 | Места забронированы\n5 | Бронь снята (после подтверждения брони пользователь отказался от неё)\n6 | Таймаут оплаты (после фиксации выбора мест оплата не поступила в установленное время)\n7 | Покупка совершена, места оплачены\n\n### Состояние места\nЗначение | Описание\n-----|-----\n0 | Место свободно\n1 | Место блокировано (в настоящий момент выбрано для бронирования или продажи)\n2 | Место забронировано\n3 | Место продано (билет выдан на руки клиенту)\n\n### Идентификаторы платёжного агента\nЗначение | Описание\n-----|-----\n1 | PayOnline\n2 | Рамблер/Афиша\n3 | Киноход\n\n## Автор\n[Alexander Pushkarev](https://github.com/axp-dev), e-mail: [axp-dev@yandex.com](mailto:axp-dev@yandex.com)\n\n## Лицензия\nОсновой Cinema Park API являет открытый исходный код, в соответствии [MIT license](https://opensource.org/licenses/MIT)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxp-dev%2Fcinemapark-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faxp-dev%2Fcinemapark-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faxp-dev%2Fcinemapark-api/lists"}