Advanced Configuration of YSoft SafeQ Payment System
Overview
The configuration of YSoft SafeQ Payment System can be found in the <payment_home>/ps-conf/environment-configuration.properties file.
Each key-value pair from the tables below represents a separate line in the property file.
Each line starting with a # symbol represents a comment and will be ignored.
The definitions of the cron expressions can be found here.
Values with non-ASCII symbols should be escaped. You can use this online tool for escaping characters.
In order to load the configuration, restart the YSoft SafeQ Payment System service after each change of configuration in the property files.
Always leave the first line of the property file blank or filled with a comment. Otherwise, it might cause problems during the loading of the configuration.
Here is example of property file.
#intentional comment on the first line
key=value
key=0 0 0 * * *
key=some non-ascii characters \u0161\u010D\u0159
General
Proxy Setting
Key | Default Value | Possible Values | Description |
general.proxy.host |
| Proxy host. If not specified, a proxy will not be used. | |
general.proxy.port | number | If a host is specified, this must not be empty. | |
general.proxy.username | string | Proxy login name. | |
general.proxy.password | string | Proxy password. If a login is specified, it must not be empty. |
Payment system
Key | Default Value | Possible Values | Description |
paymentSystem.type | internal-payment-system |
| Indicates where will money be stored:
|
Certificate Watchdog
Key | Default Value | Possible Values | Description |
certificate.watchdog.warnDays | 120 | number | Days to certificate expiration. After this time, the system starts notifying the administrator. |
certificate.watchdog.errorDays | 30 | number | Days to certificate expiration. After this time, the system starts warning the administrator. |
certificate.watchdog.cron | 0 0 0 * * * | cron expression | Interval in m. How often certificates will be checked. (default = every day) |
Payment Machines
Key | Default Value | Possible Values | Description |
spm.statistics.dump.cron | 0 */15 * * * * | Configuration for payment machine statistics logging. Defines how often statistics about payment machine are generated. | |
spm.dumpfile | path to dump file | Path to dump file. | |
spm.timeout.check.cron | 0 * * * * * | cron expression | Defines how often the system try to disconnect timed out payment machines. (default = every minute) |
Performance Statistics
Key | Default Value | Possible Values | Description |
statistics.dump.cron.period | 0 */15 * * * * | cron expression | System performance statistics logging. How often statistics are generated. |
statistics.dump.cron.total | 0 0 0,12 * * * | cron expression | System performance statistics logging. How often total statistics are generated. |
License Portal Setting
Key | Default Value | Possible Values | Description |
com.ysoft.payment.licenseportal.url | lic-act? integrityKey={integrityValue} | URL | Contains the URL of the portal for the online activation of YSoft SafeQ Payment Payment System. |
Notification Support
Key | Default Value | Possible Values | Description |
notification.send-emails.cron | 0 0/5 * * * ? | cron expression | The cron format interval specifies how often emails in YSoft SafeQ Payment System are sent. (default = every five minutes) |
mail.debug | false |
| Debug mode of logs for email sending. |
JavaScript Localization
Key | Default Value | Possible Values | Description |
javascript.localization.bundleName | js_messages | filename | JavaScript has its own localization files. (validation messages, datepicker, select boxes, ...) This property defines the bundle name of the localization file. |
javascript.localization.bundleName-fix | js_messages_fix | filename | This bundle of localization files contains some internationalization fields like a decimal separator or a date pattern for a datepicker. The properties of this file are not sent to the translation process. |
Database Configuration
Main YSoft SafeQ Payment System Database
Key | Default Value | Possible Values | Description |
database.vendor | H2 |
| Database vendor describes the database engine being used. |
database.url | jdbc:h2:mem:clearing;DB_CLOSE_DELAY=-1;MVCC=true | string | Database URL – connection string to the main YSoft SafeQ Payment System database (dependent on the database engine). |
database.username | sa | string | Database username – the username of the user used to connect to the main YSoft SafeQ Payment System database. |
database.password | string | Database password – the password of the user used to connect to the main YSoft SafeQ Payment System database. |
Domain configuration for main YSoft SafeQ Payment System MSSQL database
key | default value | possible values | description |
domain.name | string | Domain name - name of Windows domain used to connect to main YSoft SafeQ Payment System database of vendor MSSQL | |
domain.username | string | Domain username - username of user used to connect to main YSoft SafeQ Payment System database of vendor MSSQL | |
domain.password | string | Domain password - password of user used to connect to main YSoft SafeQ Payment System database of vendor MSSQL |
Connection Pool
Key | Default Value | Possible Values | Description |
database.transactionTimeout | 5 | number | The number of seconds that describes the timeout for all transaction-based operations. Values around 15 seconds should still be optimal. Values larger than 30 seconds are not recommended because of possible database deadlocks. |
database.initialConnectionPoolSize | 1 | number | Initial number of connections in the pool. |
database.maxOpenPreparedStatements | 20 | number | Maximum number of open prepared statements per connection. 0 for no limit. |
database.maxActiveConnections | 60 | number | The maximum number of active connections that can be allocated at the same time. -1 for no limit. |
database.minimumIdleConnections | 0 | number | The minimum number of connections that can remain idle without extra ones being created. 0 to create none. |
database.maximumIdleConnections | -1 | number | The maximum number of connections that can remain idle without extra ones being released. -1 for no limit. |
database.timeBetweenEvictionRunsMillis | 60000 | number | The number of milliseconds to sleep between runs of the idle connection cleanup thread. |
database.minEvictableIdleTimeMillis | 60000 | number | The minimum amount of time a connection may sit idle in the pool before it is eligible for eviction. |
Database Schema
Key | Default Value | Possible Values | Description |
database.changelog | changelog.xml | liquibase changelog filepath | Mainly, it is used for the default initialization of a database structure and default configuration records. This file can also contain updates of database schema and records. This file has to be according to the rules of Liquibase (http://www.liquibase.org/). |
UI/API Configuration
General
Key | Default Value | Possible Values | Description |
web.channel | https |
| The channel clients are required to communicate through with any web UI, including cash desk, custom web and administration web. Note that the REST API is still configured via the restAPI.channel property. |
Cash Desk UI
Key | Default Value | Possible Values | Description |
cashdesk.cacheResources | true |
| Flag indicating whether cash desk resources should be cached. (server side resources – HTML templates, ...) |
cashdesk.applyTheme | false |
| Flag indicating whether to apply a custom cash desk theme, whether to use default cascade styles (css). |
Administration UI
Key | Default Value | Possible Values | Description |
web.cacheResources | true |
| Flag indicating whether administration resources should be cached. (server side resources – HTML templates, ...) |
web.applyTheme | false |
| Flag indicating whether to apply a custom cash desk theme, whether to use default cascade styles (css). |
REST API
Key | Default Value | Possible Values | Description |
restApi.channel | https |
| The channel clients are required to communicate through the REST API |
Authorization/Authentication
User Management
Key | Default Value | Possible Values | Description |
authentication.type | safeq-user-management |
| How to authenticate users. The options are:
|
safeq.authentication.address | tcp://127.0.0.1:5556 | tcp://<IP address/hostname>:<port> | Connection details (host and port) of a YSoft SafeQ Site Server (specifically, the Spooler Controller) that serves as a user management system. If this does not point to 127.0.0.1, please make sure that the YSoft SafeQ configuration property terminalServerListeningAddress doesn't prevent connections from outside the server (as it does by default), and make sure to protect the endpoint with a firewall. |
authentication.watchdog.cron | 0 */2 * * * * | cron expression | How often user management should be checked. (default = 2 minutes) Indicates that user management is reachable. If user management is unreachable, then a new incident is reported. A new incident is reported if the user management is reachable again. |
Sign-on Authentication
Key | Default Value | Possible Values | Description |
sign-on.type | form-sign-on |
| Sets method of signing on.
|
sign-on.sso.cutUsernameDomain | true | true / false | If true, the username from Windows Integrated Authentication will be stripped of its domain (e.g., EXAMPLE\doe will become doe). |
saml.baseUrl | https://localhost:8443 | URL | The base part of the URL where YSoft SafeQ Payment System is accessible. |
saml.keystore.name | The name of the Java keystore file to use for encrypted communication. | ||
saml.keystore.password | The password for the Java keystore file. | ||
saml.keystore.alias | The alias name of the certificate record in the keystore file. |
Payment Gateways
Payment Gateway Availability
Key | Default Value | Possible Values | Description |
payment.gateway.watchdog.cron | 0 */2 * * * * | cron expression | How often to check if the payment gateway is OK. |
Security
Key | Default Value | Possible Values | Description |
truststore.path | <payment_home>/ps-conf/truststore.jks |
| The name of the Java truststore file to use for encrypted communication. See Configuring SSL/TLS for YSoft SafeQ Payment System. |
truststore.password | The password to Java truststore specified in truststore.path. See Configuring SSL/TLS for YSoft SafeQ Payment System. |
Open Deposit Periodic Jobs
Key | Default Value | Possible Values | Description |
pendingDeposits.retry.cron | 0 0/15 * * * * | cron expression | How often pending deposits should be retried. |
pendingDeposits.retry.delayMinutes | 10 | number | How long after the deposit starts should payment system retry pending deposits. |
openDeposits.expiration.cron | 0 0 0 * * * | cron expression | How often open deposits should be cleaned up. |
Remember Me
Key | Default Value | Possible Values | Description |
rememberme.support | remember-me-disabled |
| This property's turn on remember me functionality in the application
|
rememberme.expiration | 2592000 | number |
|
rememberme.cookieName | YPS_REMEMBER_ME | string | The name of the remember-me cookie in a client's browser. |