ОПИСАНИЕ ДАННЫХ ЗАКАЗА
отправляемого через систему уведомлений на URL в формате JSON
версия от 13.06.2024
Система уведомлений отправляет данные методом POST. На указанном адресе система пользователя должна принимать передаваемые платформой данные, и в случае успеха, присылать в ответ код 200 ОК.
Иначе, в течение суток сервер BIL24 будет периодически повторять отправку уведомления.
Типы полей:
число int - целое значение в диапазоне от -2 147 483 648 до 2 147 483 647
число Uint - целое беззнаковое значение в диапазоне от 0 до 2 147 483 647
число long - целое значение в диапазоне от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807
число Ulong - целое беззнаковое значение в диапазоне от 0 до 9 223 372 036 854 775 807
число cur - вещественное значение, содержащее до 4 знаков после точки, например 134.7445
boolean - литерал принимающий значения true или false
строка - строковое значение неограниченной длины
Состав полей уведомления:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id уведомления |
| created | строка | Обязательное | дата и время создания уведомления в формате ISO-8601 в часовом поясе UTC+00:00 |
| type | строка | Обязательное | тип триггера, например, order.paid (заказ оплачен) |
| data | объект | Обязательное | данные заказа и входящих в него билетов |
Данные заказа для триггера "Заказ оплачен" (order.paid):
data:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id заказа |
| date | строка | Обязательное | дата/время создания заказа в формате ISO-8601 в часовом поясе UTC+00:00 |
| user | объект | Обязательное | данные пользователя, создавшего заказ |
| agent | объект | Обязательное | данные агента, продавшего билеты |
| frontend | объект | Обязательное | интерфейс (канал продаж), через который были проданы билеты |
| currency | строка | Обязательное | код валюты в стандарте ISO 4217 |
| paymentMethod | объект | Обязательное | способ оплаты |
| longReservation | boolean | Обязательное | true - использовалось долговременное бронирование |
| expiration | строка | Обязательное | дата/время исчтечеия заказа в формате ISO-8601 в часовом поясе UTC+00:00 |
| processing | строка | Необязательное | дата/время обработки заказа в формате ISO-8601 в часовом поясе UTC+00:00 |
| ticketList | массив | Обязательное | список билетов заказа |
| seatList | массив | Обязательное | список мест в случае когда нет билетов, когда заказ имеет статус отменен |
| gatewayOrderList | массив | Обязательное | список идентификаторов заказа в ВБС |
| sum | число cur | Обязательное | номинальная стоимость заказа, без учета скидки и сервисного сбора |
| filteredSum | число cur | Обязательное | стоимость filtered* |
| discount | число cur | Обязательное | размер скидки |
| filteredDiscount | число cur | Обязательное | размер скидки filtered* |
| charge | число cur | Обязательное | размер сервисного сбора |
| filteredCharge | число cur | Обязательное | размер сервисного сбора filtered* |
| totalSum | число cur | Обязательное | итоговая стоимость заказа |
| filteredTotalSum | число cur | Обязательное | итоговая стоимость filtered* |
| ticketQuantity | число int | Обязательное | количество билетов в заказе |
| filteredTicketQuantity | число int | Обязательное | количество билетов в заказе filtered* |
| status | строка | Обязательное | статус заказа, например, PAID - заказ оплачен |
| acquiring | объект | Обязательное | эквайринг, используемый при оплате заказа |
| paymentBankId | строка | Обязательное | id банковской транзакции |
| paymentBankStatus | строка | Обязательное | статус банковской транзакции |
| paymentBankMessage | строка | Обязательное | комментарий к транзакции |
| paymentRRN | строка | Необязательное | Уникальный идентификатор банковской транзакции, который назначается обслуживающим банком |
| paymentTerminalId | строка | Необязательное | Идентификатор терминала, через который осуществлялась оплата |
| paymentCardPAN | строка | Необязательное | Маскированный номер карты, которая использовалась для оплаты |
| paymentCardBank | строка | Необязательное | Наименование банка-эмитента |
| строка | Необязательное | email для отправки билетов | |
| emailSent | boolean | Необязательное | true - если заказ успешно отправлен на email |
| phone | строка | Необязательное | номер телефона покупателя |
| fullName | строка | Необязательное | полное имя покупателя |
*значения полей filtered могут отличаться от значений полей без filtered только для организатора, в случае если в заказ
входят билеты на события других организаторов.
user:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязатеьное | id пользователя |
| строка | Необязатеьное | адрес email пользователя |
agent:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id агента |
| name | строка | Обязательное | наименование агента |
frontend:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id интерфейса |
| name | строка | Обязательное | наименование интерфейса |
| type | объект | Обязательное | тип интерфейса |
type:
| Поле | Тип | Обязательность | Описание |
| id | число Uint | Обязательное | id типа интерфейса |
| name | строка | Обязательное | наименование типа интерфейса |
paymentMethod:
| Поле | Тип | Обязательность | Описание |
| id | число Uint | Обязательное | id способа оплаты |
| name | строка | Обязательное | наименование способа оплаты |
ticketList:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id билета |
| seatId | число Ulong | Обязательное | id места |
| orderId | число Ulong | Обязательное | id заказа |
| seatLocation | объект | Необязательное | координаты мест (сектор, ряд, место), только для мест с размещением |
| category | строка | Обязательное | название ценовой категории |
| tariff | строка | Необязательное | название тарифа |
| price | число cur | Обязательное | номинальная цена билета |
| discount | число cur | Обязательное | размер скидки в денежных единицах (валюте) |
| charge | число cur | Обязательное | сервисный сбор в денежных единицах (валюте) |
| totalPrice | число cur | Обязательное | итоговая стоимость билета с учетом скидки и сервисного сбора |
| discountReason | строка | Необязательное | причина скидки |
| barcode | строка | Обязательное | штрихкод билета |
| barcodeFormat | объект | Обязательное | формат штрихкода |
| actionEvent | объект | Обязательное | сеанс, на который приобретен билет |
| holderStatus | строка | Обязательное | Статус использования билетов |
| refundDate | строка | Необязательное | дата и время возврата в формате ISO-8601 в часовом поясе UTC+00:00 |
| refundPrice | число cur | Необязательное | сумма возврата |
seatLocation:
| Поле | Тип | Обязательность | Описание |
| sector | строка | Обязательное | наименование сектора |
| row | строка | Обязательное | обозначение ряда |
| number | строка | Обязательное | номер места |
barcodeFormat:
| Поле | Тип | Обязательность | Описание |
| id | число Uint | Обязательно | id формата штрихкода |
| name | строка | Обязательно | наименование формата штрихкода |
actionEvent:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id сеанса |
| cityId | число Ulong | Обязательное | id города |
| cityName | строка | Обязательное | название города |
| venueId | число Ulong | Обязательное | id места проведения |
| venueName | строка | Обязательное | название места проведения |
| actionId | число Ulong | Обязательное | id представления |
| actionName | строка | Обязательное | название представления |
| actionLegalOwner | строка | Обязательное | устроитель представления |
| actionLegalOwnerInn | строка | Обязательное | ИНН устроителя представления |
| actionKind | объект | Обязательное | вид представления |
| showTime | строка | Обязательное | местное (по месту проведения) дата и время начала сеанса в формате ISO-8601 без часового пояса |
| eTickets | boolean | Обязательное | true - если электронный билет |
| gateway | объект | Обязательное | подключение к Внешней Билетной Системе (ВБС) |
actionKind:
| Поле | Тип | Обязательность | Описание |
| id | число Uint | Обязательное | id вида представления |
| name | строка | Обязательное | наименование вида представления |
gateway:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id подключения к Внешней Билетной Системе (ВБС) |
| systemId | число Uint | Обязательное | id шлюза в ВБС |
| name | строка | Обязательное | название подключения |
| systemName | строка | Обязательное | название шлюза |
| organizerId | Ulong | Необязательное | id организатора - владельца подключения |
| organizerName | строка | Необязательное | наименование организатора |
gatewayOrderList:
| Поле | Тип | Обязательность | Описание |
| gateway | объект | Обязательное | подключение к Внешней Билетной Системе (ВБС) |
| orderId | строка | Обязательное | идентификатор заказа в ВБС |
acquiring:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id подключенного интернет-эквайринга |
| systemId | число Uint | Обязательное | id платежного провайдера (банка) |
| name | строка | Обязательное | наименование интернет-эквайринга |
| systemName | строка | Обязательное | наименование платежного провайдера (банка) |
| agentId | число Ulong | Обязательное | id агента, к которому подключен интернет-эквайринг |
| agentName | строка | Обязательное | наименование агента |
Данные заказа для триггера "Заказ отменен" (order.cancelled):
Структура полей отмененных заказов совпадает со структурой полей оплаченных заказов за исключением:
- отсутствует массив с билетами (ticketList)
- присутствует массив seatList
seatList:
| Поле | Тип | Обязательность | Описание |
| id | число Ulong | Обязательное | id билета |
| seatId | число Ulong | Обязательное | id места |
| orderId | число Ulong | Обязательное | id заказа |
| seatLocation | объект | Необязательное | координаты мест (сектор, ряд, место), только для мест с размещением |
| category | строка | Обязательное | название ценовой категории |
| tariff | строка | Необязательное | название тарифа |
| price | число cur | Обязательное | номинальная цена билета |
| discount | число cur | Обязательное | размер скидки в денежных единицах (валюте) |
| charge | число cur | Обязательное | сервисный сбор денежных единицах (валюте) |
| totalPrice | число cur | Обязательное | итоговая стоимость билета с учетом скидки и сервисного сбора |
| discountReason | строка | Необязательное | причина скидки |
| barcode | строка | Обязательное | штрихкод билета |
| barcodeFormat | объект | Обязательное | формат штрихкода |
| actionEvent | объект | Обязательное | сеанс, на который приобретен билет |
| holderStatus | строка | Обязательное | Статус использования билетов |