Advanced Configuration of the PayPal Gateway Plugin

All mandatory configurations can be managed during installation (see Payment gateway plugin deployment). Once the PayPal Gateway plugin is installed, you can use this guide to change existing or set advanced options. Configuration of the PayPal Payment Gateway Plugin can be found in <payment_home>/ysoft/paypal-configuration.properties file. For more information about property files, see Advanced Configuration of YSoft SafeQ Payment System#Overview.

Configuration Options

Key

Description

paypal.paymentSystemUrl

The URL pointing to the PS REST API used for Payment Gateway integrations.
default: https://localhost:8443/payment-system/api/v1/paymentgateway/deposit

paypal.channel

Whether the PayPal Integration UI should require HTTPS or HTTP connections.
default: https

paypal.paymentExpirationDays

The number of days after which the retrying of PayPal payments stop. 30 is the number of days after which PayPal itself expires its payments.
default: 30

paypal.completedDepositCleanupHours

The number of hours after which completed deposits are removed from the database.
default: 1

paypal.depositCleanupDays

Number of days after which deposits are removed from the database.
default: 60

paypal.retryPendingDepositsCron

How often pending deposits should be retried.
default: 0 0/10 * * * ?

paypal.expirePendingDepositsCron

How often pending deposits should be checked for expiration.
default: 0 0 0 * * ?

paypal.cleanupDepositsCron

How often deposits should be cleaned up.
default: 0 0 * * * ?

paypal.depositItemName

The text that appears as the item name in PayPal.
default: Deposit

paypal.useHttpProxy

If set to true, PayPal will be contacted through a proxy (note that Payment System will always be contacted directly).
default: false

paypal.httpProxyHost

Proxy host.
default: localhost

paypal.httpProxyPort

Proxy port.
default: 3128

paypal.httpProxyUserName

Proxy authentication username.

paypal.httpProxyPassword

Proxy authentication password.

paypal.database.vendor

Database vendor (e.g. ,H2, MSSQL, PostgreSQL, ...).
default: H2

paypal.database.url

Database connection string.
default: jdbc:h2:mem:paypal-integration;DB_CLOSE_DELAY=-1;MVCC=true

paypal.database.username

Database username.
default: sa

paypal.database.password

Database password.
(required)

paypal.returnUrlPrefix

The string that URLs sent to PayPal get prefixed with. For example, if this property is set to 'https://example.com', then the confirmation URL sent to PayPal will look like this 'https://example.com/deposit/123/payment-confirmed-by-paypal'. This is done to allow the integration module to sit behind a proxy with a public name without URL rewriting.
(required)

paypal.clientId

PayPal's "username". (PayPal API app Client ID)
(required)

paypal.clientSecret

PayPal's "password". (PayPal API app Secret)
(required)

paypal.serviceEndpoint

PayPal's service URL (e.g., https://api.paypal.com).
(required)

paypal.paymentSystemUsername

Payment System's username. (the user has to have the appropriate rights set up in Payment System)
(required)

paypal.paymentSystemPassword

Payment System's password.
(required)