This article describes the integrating Dispatcher Paragon Payment System with PayEx (http://payex.com/).

Installing PayEx Integration

  • Download all required jar files: payex-payment-provider, spring-ws-core, spring-xml, spring-oxm,liquibase and copy them into the YPS_HOME\ysoft\payment-provider directory
  • Configure Dispatcher Paragon Payment System – add paymentSystem.type=external-payment-system to YPS_HOME\ysoft\environment-configuration.properties
  • Create payex-configuration.properties in the YPS_HOME\ysoft\payment-provider directory
  • Create the DB user and schema (the use of existing schema is possible, but using a separate schema is recommended)
  • Configure PayEx integration according to the description below:
#url to the payex service
payex.urlPrefix=https://external.payex.com
#payex account number of merchant
payex.account.accountNumber=
#encryption key of the merchant
payex.account.encryptionKey=
#transaction currency code; e.g. SEK, NOK
payex.currencyCode=SEK
#transaction vat value
payex.vat=
#A reference that links this agreement to something the merchant takes money for. Used for agreement creation
payex.agreement.merchantRef=
#A short description about this agreement. This will show up on the client admin page so that the client gets info about the agreement. It will also show on the web page where the client verifies the agreement.
payex.agreement.description=
#One single transaction can never be greater than this amount. Give yourself some leeway here so you do not have to make new agreements if you decide to raise your price.
payex.agreement.maxAmount=
payex.reservation.productNumber=1
payex.reservation.description=SafeQ print services
# ====================================
# Connection pool
# ====================================
# Database vendor describes the database engine being used
# Supported values are PostgreSQL, MSSQL, H2
database.vendor=PostgreSQL
# Database url - connection string to the Payex plugin database (dependent on the database engine)
database.url=jdbc:postgresql://127.0.0.1:5432/PAYEX
# Database username - username of user used to connect to Payex plugin database
database.username=sa
# Database password - password of user used to connect to Payex plugin database
database.password=

Click here to see full list of configurable options...

#url to the payex service
payex.urlPrefix=https://external.payex.com
#payex account number of merchant
#payex.account.accountNumber
#encryption key of the merchant
#payex.account.encryptionKey
#transaction currency code; e.g. SEK, NOK
#payex.currencyCode=SEK
#transaction vat value
#payex.vat
#A reference that links this agreement to something the merchant takes money for. Used for agreement creation
#payex.agreement.merchantRef
#A short description about this agreement.
This will show up on the client admin page so that the client gets info
about the agreement. It will also show on the web page where the client
verifies the agreement.
#payex.agreement.description
#One single transaction can never be greater than this amount. Give yourself some leeway here so you do not have to make new agreements if you decide to raise your price.
#payex.agreement.maxAmount
payex.reservation.productNumber=1
payex.reservation.description=SafeQ print services
reservationExpirationCron=0 0 0 * * *
expirationIntervalDays=60
# ====================================
# Connection pool
# ====================================
# Database vendor describes the database engine being used
# Supported values are PostgreSQL, MSSQL, H2
database.vendor=H2
# Database url - connection string to the Payex plugin database (dependent on the database engine)
database.url=jdbc:h2:mem:payex;DB_CLOSE_DELAY=-1;MVCC=true
# Database username - username of user used to connect to Payex plugin database
database.username=sa
# Database password - password of user used to connect to Payex plugin database
database.password=
# Initial number of connections in the pool
database.initialConnectionPoolSize=1
# Maximum number of open prepared statements per connection. 0 for no limit
database.maxOpenPreparedStatements=20
# The maximum number of active connections that can be allocated at the same time. -1 for no limit
database.maxActiveConnections=60
# The minimum number of connections that can remain idle, without extra ones being created. 0 to create none.
database.minimumIdleConnections=0
# The maximum number of connections that can remain idle, without extra ones being released. -1 for no limit.
database.maximumIdleConnections=-1
# The number of milliseconds to sleep between runs of the idle connection cleanup thread.
database.timeBetweenEvictionRunsMillis=60000
# The minimum amount of time a connection may sit idle in the pool before it is eligible for eviction.
database.minEvictableIdleTimeMillis=60000
# The SQL query that will be used to validate connections from this pool before returning them to the caller. If specified, this query MUST be an SQL SELECT statement that returns at least one row.
# default value is valid for MSSQL, PostgreSQL, H2, MySQL, SQLite
# for Oracle override this property by "SELECT 1 FROM DUAL"
database.validationQuery=SELECT 1

Configuration in the Dispatcher Paragon Payment System Administration

Configure the display name and URL to the PayEx icon in the Dispatcher Paragon Payment System administration.