Для настройки подключения к БД следует открыть файл конфигурации службы Bars.WebStore.Service.config и заполнить данные в строках подключения к БД "WebStoreDbConnectionString" и "SkiBars2DbConnectionString".
Настройка подключения обязательна при первом запуске службы, в противном случае дальнейшие настройки будут не возможны.
С 01.01.2024 года тип для службы платежей изменен с 8 на 98
Дальнейшие настройки возможны как в файле конфигурации, так и через web-интерфейс.
Администраторский раздел (расположен по адресу http://<адрес:порт_службы>/Admin ( http://localhost:9010/Admin ). Настройки могут быть сохранены временно путем нажатия кнопки
«сохранить» в соответствующих разделах или записаны в конфигурационный файл нажатием кнопки «записать настройки».
Логин и пароль по умолчанию – admin.
На русском языке указаны наименования разделов и параметров в
Администраторском разделе, на английском языке указаны наименования разделов и параметров в конфигурационном файле.
- Строка подключения Веб-продажи (WebStoreDbConnectionString) – строка подключения к БД службы.
"WebStoreDbConnectionString": "Data Source=localhost\\MSSQLSERVER_2014; Initial Catalog=BarsWebStore; Integrated Security=SSPI" ,
Или
"WebStoreDbConnectionString": "Data Source=localhost\\MSSQLSERVER_2014; Initial Catalog= BarsWebStore; User ID=userName; Password=password",
- Строка подключения (Барс) SkiBars2DbConnectionString – строка подключения к основной БД
"SkiBars2DbConnectionString": "Data Source=localhost\\MSSQLSERVER_2014; Initial Catalog=Bars;Integrated Security=SSPI" ,
Или
"SkiBars2DbConnectionString": "Data Source=localhost; Initial Catalog= Bars; User ID=userName; Password=password",
- Время в течении, которого будет проверяться оплата заказа (мин) NotPayedOrderTimeout – время, в течение которого созданный, но еще не оплаченный заказ будет учитываться при подсчете количества заказов клиента (используется для ограничения
количества заказов на одного клиента).
- Максимальное количество заказов на одну учетную запись
клиента MaxGoodsPerEmail – максимальное количество билетов/ абонементов, которые могут быть проданы на одного клиента.
- Шаблон CORS AccessControlAllowOrigin – задает значение кросс-доменных политик, т.е. с каких доменов клиент посредством виджета и браузера может обратиться к службе;
«*» – для снятия ограничений.
**- Секретный ключ от рекапчи Captcha_PrivateKey ** – т.к. в некоторых сценариях используется капча, то на сайте рекапчи нужно зарегистрировать сайт, в который интегрируется виджет. Будет выдано два ключа – приватный и публичный. Приватный необходимо задать здесь (Captcha_PrivateKey). Публичный отдается пользователю службы
(для целей тестирования можно зарегистрировать любой домен, т.к. для обращений через localhost рекапча не проверяет домен).
- Базовый адрес службы WebApiBaseAddress – базовый адрес службы.
- Базовый адрес тестовой копии службы WebApiTestBaseAddress – базовый адрес службы. По сути это копия службы, как правило, на другом порте. Обычно служит для целей тестирования кросс-доменных политик.
- Базовый адрес soap-интерфейса службы SoapServiceBaseAddress – адрес службы, по которому с ней можно общаться по soap-протоколу (на данный момент не работает).
- Время, в течении которого будут завершены фоновые операции (мс)ShutdownTimeout – время, которое отводится фоновым операциям на завершение своей работы.
- Использовать тестовую конфигурацию UseTestConfiguration – указывает, использовать ли копию службы с адресом, указанным в параметре WebApiTestBaseAddress.
- Время, отводимое на оплату брони (мин) BookingReservationTimeout – время, в течении которого будет осуществлено бронирование определенных позиций в заказе, а также время, которое отводится на оплату заказа при наличии в нем позиций, для которых требуется бронирование.
- Запрет использования виджета за пределами сервера AllowUseOfWidgetOnlyByLocalhost – в некоторых сценариях виджет может давать больше привилегий, чем сайт пользующийся публичным api, в таких случаях целесообразно ограничить доступ к виджету только с той машины, на которой запущена служба.
- Адрес конечной точки сервиса бронирования PlaceReservationServiceEndpointAddress – операции по резервированию мест полагаются на работу службы резервирования, настройка указывает адрес конечной точки подключения к этой службе.
- Сайты (Sites) – содержит информацию об узлах, с которых происходит обращение к данной службе.
- ID – идентификатор сайта, задается здесь и выдается пользователю сервиса для указания в качестве одного из параметров запроса в публичном api или в настройках виджета при его внедрении на веб-сайт.
- Тип (Type) – тип сайта, следует установить значение 1 для виджета и 2 для публичного api.
- Секретный ключ (PrivateKey) – необходим для подписывания запроса (используется только для публичного API).
- Описание (Description) – свободное описание для сайта, в работе службы не используется.
Без настройки взаимодействия с платежными шлюзами сайт и Widget не откроется.
Эквайринг (Acquiring) – блок который содержит параметры необходимые для взаимодействия с платежными шлюзами
Фискализировать оплату - процесс регистрации операций по оплате и распечатки фискальных чеков. Настройку следует учитывать при выборе эквайринга для работы. Подробнее о эквайрингах работающих с системой Барс можно прочитать в разделе Служба платежей.
- Использовать операцию "Hold" (UseHold) – указывает на необходимость использования двухэтапного списания средств – сначала блокировка, а затем списание отдельной командой (на некоторых тестовых серверах функция не доступна).
- Мерчанты (Merchants) – блок, который содержит список платежных шлюзов, с помощью которых можно оплачивать заказы;
Каждый элемент списка имеет Общие параметры, а также индивидуальный набор полей в зависимости от типа добавляемого эквайринга:
Фиктивный (тестовый) эквайринг
Для тестов можно использовать фиктивный эквайринг
Профили (ProfilesSection) – содержит информацию о точках обслуживания, которые определяют набор услуг.
- Идентификатор профиля по-умолчанию DefaultProfileID – идентификатор профиля который будет использоваться по умолчанию в том числе для операций в которых используется неявным образом.
**- Идентификатор вида карты CardMediaTypeId ** – определяет тип карты, которая будет выдана клиенту при продаже билета. Идентификатор может быть получен из справочника видов карт.
- Профили (Profiles) – содержат перечень профилей и их настройки:
ID – идентификатор профиля, задается здесь и выдается пользователю сервиса для указания в качестве одного из параметров запроса в публичном API или в настройках
виджета при его внедрении на веб-сайт.
ID кассы (CashDescId) – определяет номер кассы, которая содержит требуемый перечень услуг и через которую проводится операция продажи. Идентификатор может быть
получен из справочника видов карт.
СМС-уведомления (SmsNotifications) – содержит параметры для управления процессом отправки клиенту уведомлений посредством СМС-сообщений. На данный момент функционал по отправке СМС-сообщений реализован через сервис OneAPI, большую часть значений для этого блока настроек можно получить в личном кабинете этого сервиса.
- Использовать смс уведомления UseSms – указывает, использовать ли СМС-уведомления.
- Адрес операции отправки смс сообщения SendUri – адрес функции по отправке СМС-сообщения.
- Ключ виртуального приложения из личного кабинета OneAPI AppKey – ключ виртуального приложения, можно получить в личном кабинете сервиса.
- Пароль виртуального приложения из личного кабинета OneAPI AppSecret – пароль виртуального приложения, можно получить в личном кабинете сервиса.
- Номер телефона отправителя смс SenderPhoneNumber – номер с которого отправляется СМС-сообщение
- Шаблон сообщения смс для операции оплаты MessageTemplate – строка с текстом сообщения, отправляемого клиенту после оплаты и продажи заказа в системе Барс. Содержит
подстановочные ключевые слова, на место которых будет вставлено одна их характеристик заказа или позиции в заказе. Подстановочные слова обрамляются двумя фигурными скобками {{слово}}. Для каждой позиции в заказе можно задать повторяющийся текст, с параметрами этой позиции. Каждое значение такой строки обрамляется двумя квадратными скобками [[текст]].
Параметры заказа:
Параметры позиции заказа
- Шаблон сообщения смс для операции резервирования ReservationMessageTemplate – строка с текстом сообщения, отправляемого клиенту после резервирования заказа.
Подстановочные ключевые слова те же что и в параметре MessageTemplate.
Виджет (WidgetOptions) – в основном содержит параметры управления виджетом. Также следует учитывать, что часть параметров зависит от других параметров (например, доступ в личный кабинет может быть запрещен, если не используется доступ по паролю, хотя параметр, указывающий на возможность входа, выставлен в разрешающее значение).
- Разрешить регистрацию IsRegistrationEnabled – указывает, включена ли возможность
регистрации (обычно служит для возможности продажи обезличенных билетов).
- Разрешить идентификацию IsIdentificationEnabled – указывает, включена ли возможность идентификации клиента или сведения о клиенте нужно будет вводить при совершении операции оплаты или резервирования.
- Разрешить пополнение баланса IsAddBalanceEnabled – указывает на возможность пополнения баланса.
- Разрешить продажу товаров IsProductPurchaseEnabled – указывает на возможность продажи билетов.
- Разрешить отправку всех заказов на email IsSendAllProductsByEmailEnabled – указывает на возможность отправки всех купленных билетов на электронный ящик клиента.
- Требовать номер счета клиента IsSkiIDRequired – указывает на использование идентификатора пользователя из Барс. Если значение установлено в true, то предполагается, что клиент уже был зарегистрирован на объекте. Либо ему был выдан идентификатор супераккаунта, либо его адрес электронной почты был введен в систему Барс. Как следствие должна быть проведена операция сопоставления клиента в БД Барс и в БД WebStore.
Происходить это будет путем регистрации клиента (публичное апи) или восстановление доступа (виджет). Если значение установлено в false, то сопоставления клиентов не производится, и под каждый купленный билет создается новый супераккаунт в БД Барс. В этом состоянии запрещается доступ к личному кабинету.
- Требовать пароль IsPasswordRequired – указывает на необходимость пользоваться
паролем в виджете (если пароль не используется, доступ в личный кабинет запрещен).
- Тестовый идентификатор клиента WidgetClientID – внешний идентификатор клиента (используется для тестовых целей при выключенном состоянии параметра
IsIdentificationEnabled). Соответствует SiteClientID при использовании из публичного апи.
- Разрешить использование личного кабинета IsCabinetEnabled – указывает на возможность использования личного кабинета. При этом даже если данный параметр разрешает
доступ, то при выставленных в false значениях параметров IsPasswordRequired и IsSkiIDRequired доступ в личный кабинет будет запрещен.
- Время жизни сессии (мин) SessionAliveDuration – время жизни сессии, выдаваемой клиенту при использовании виджета (в минутах).
- Время жизни кода в проверочном письме (мин) VerificationCodeAliveDuration – время жизни кода, выдаваемого для подтверждения подлинности адреса электронной почты.
- Способ восстановления доступа RestoreAccessType – тип восстановления доступа для пользования виджетом (задается либо строкой, либо значением от 1 до 3).
- Разрешить показывать билеты в виджете AllowShowingTickets – указывает на возможность просмотра билетов в виджете (следует использовать крайне осторожно, поскольку посторонний человек может просмотреть эти билеты).
- Включить рекапчу IsRecaptchaEnabled – указывает использовать ли проверку капчей
личность клиента.
Почта (Mail) – блок настроек электронной почты.
- Настройки почты (SendOptions) – реквизиты для отправки почтовых сообщений.
- Использовать учетные данные UseCredentials – указывает нужно ли использовать логин и пароль для доступа к почтовому серверу.
- Имя пользователя Login – логин для доступа к почтовому серверу.
- Пароль Password – пароль для доступа к почтовому серверу.
- Адрес сервера ServerAddress – адрес почтового сервера.
- Порт (Port) – порт почтового сервера.
- Почтовый адрес отправителя SenderEmail – адрес отправителя.
- Использовать SSL (UseSSL) – указывает, следует ли использовать SSL при отправке письма.
- Шаблоны (Templates) – настройки почтовый сообщений.
- Тема проверочного письма VerificationMailSubject – заголовок сообщения для валидации почты клиента.
- Тема письма для восстановления доступа RestoreAccessSubject – заголовок сообщения для восстановления доступа.
- Тема письма с результатами пополнения баланса OperationResultSubjectAddBalance – заголовок сообщения для отправки результатов оплаты заказа на пополнение баланса.
- Тема письма с результатами продажи OperationResultSubjectPurchase – заголовок сообщения для отправки результатов оплаты заказа на покупку билетов.
- Тема письма с результатами резервирования ReservationResultSubject - заголовок сообщения для отправки результатов резервирования заказа.
- Тема письма со всеми заказами SendPurchasesSubject – заголовок сообщения для отправки всех заказов на почту клиента.
- Тема письма с новым паролем NewPasswordSubject – заголовок сообщения для отправки
нового пароля клиента.
Настройки прокси (Proxy) – настройки использования прокси данной службой.
- Использовать прокси UseProxy – указывается, использовать ли прокси.
- Адрес прокси-сервера Address – адрес прокси-сервера.
**- Порт прокси-сервера Port **– порт прокси-сервера.
- Имя пользователя Login – логин для доступа на прокси-сервер.
- Пароль Password – пароль для доступа на прокси сервер.
Настройки фоновых операций (BackgroundOperations) – настройки для фоновых операций
- Включить проверку продажи оплаченных билетов EnableTerminalServiceSync – указывает, включена автоматическая продажа оплаченных, но не проданных билетов в TerminalService.
- Включить проверку оплаты EnableMerchantSync – указывает, включена ли автоматическая
проверка оплаты зарегистрированных заказов.
- Чистить устаревшие коды EnableClearingExpiredCodes – указывает, включена ли
автоматическая чистка устаревших клиентских кодов (сессии, восстановление пароля, проверка подлинности адреса электронной почты).
- Интервал проверки продажи оплаченных билетов (мс) MarkConfirmedOrdersAsSoldInGLK_Delay – задает интервал между выполнением автоматической продажи оплаченных, но не проданных билетов в TerminalService.
- Интервал между операциями проверки оплаты (мс) CheckIfRegisteredOrdersIsPayed_Delay – задает интервал между выполнением автоматической проверки оплаты зарегистрированных заказов.
**- Интервал очистки устаревших кодов (мс)ClearingExpiredCodes_Delay **– задает интервал между выполнением автоматической чистки устаревших клиентских кодов.
- Немедленный запуск проверки продажи оплаченных билетов StartTerminalServiceSyncImmediately – указывает, нужно ли сразу начинать выполнять автоматическую продажу оплаченных, но не проданных билетов в TerminalService.
- Немедленный запуск проверки оплатыStartMerchantSyncImmediately – указывает, нужно ли сразу начинать выполнять автоматическую проверку оплаты зарегистрированных заказов.
- Немедленный запуск очистки устаревших кодовStartClearingExpiredCodesImmediately – указывает, нужно ли сразу начинать выполнять чистка устаревших клиентских кодов.