Integrating PeopleSoft with Email Delivery

Use PeopleSoft to send emails through the Email Delivery service.

Configure PeopleSoft to Send Email Through Email Delivery

You can use PeopleSoft to send emails through Email Delivery. Before you use PeopleSoft, you must configure Oracle Cloud Infrastructure Email Delivery in your PeopleSoft application.

Important

These instructions contain sample code for your convenience and should be used as a reference. For client support, you must contact Oracle PeopleSoft customer support.
Note

The following steps require familiarity with PeopleSoft documentation. These steps were tested on an Oracle Linux Server release 7.9 compute instance and PeopleTools version 8.53.06. Please refer to the documentation for your specific PeopleTools version.

To enable PeopleSoft to integrate with Email Delivery:

  1. Make sure Email Delivery is configured to send email. See Getting Started.
    Note

    SMTP credentials are required to configure PeopleSoft to use Email Delivery. Be sure to note the user name and password when you generate the SMTP credentials.

  2. Run the following command to view the certificate chain:
    echo | openssl s_client -showcerts -starttls smtp -crlf -connect <SMTP-endpoint>:587
    Example output:
    [root@ociuvddatg01 ~]# echo | openssl s_client -showcerts -starttls smtp -crlf -connect smtp.email.us-ashburn-1.oci.oraclecloud.com:587
              CONNECTED(00000003)
              depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root G2
              verify return:1
              depth=1 C = US, O = DigiCert Inc, CN = DigiCert Global CA G2
              verify return:1
              depth=0 C = US, ST = California, L = Redwood City, O = Oracle Corporation, OU = Oracle OCI-PROD ASHBURN, CN = smtp.email.us-ashburn-1.oci.oraclecloud.com
              verify return:1
               ---
             Certificate chain
     0 s:/C=US/ST=California/L=Redwood City/O=Oracle Corporation/OU=Oracle OCI-PROD ASHBURN/CN=smtp.email.us-ashburn-1.oci.oraclecloud.com
       i:/C=US/O=DigiCert Inc/CN=DigiCert Global CA G2
     1 s:/C=US/O=DigiCert Inc/CN=DigiCert Global CA G2
       i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
     2 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
       i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
    ---
    Server certificate
    -----BEGIN CERTIFICATE-----
    ......
    -----END CERTIFICATE-----
    ......
  3. Extract the certificate that signed your domain. In this example, this is the last certificate (2 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2). Copy and paste the certificate into a separate DigiCert.pem file, including the BEGIN CERTFICATE and END CERTIFICATE fields.
    For example:
    -----BEGIN CERTIFICATE-----
    s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
    i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root G2
    -----END CERTIFICATE-----
  4. Add the certificates to the PeopleSoft application.

    Log into the Pure Internet Architecture (PIA) as user "PS" and import the certificates into the target environment. See Installing Application Server-Based Digital Certificates and refer to the Adding CA Authorities and Installing Root Certificates section.

  5. Encrypt the SMTP password in the config file.

    You can encrypt the SMTP password using the PIA or the PSCipher utility.

    Using the PIA

    1. Open the navigation menu on the PeopleSoft dashboard. Go to PeopleTools, and then select Integration Broker.
    2. Select Configuration, and then click Gateways. Select the default LOCAL gateway.
    3. Click Gateway Setup Properties. The default user ID is administrator and the default password is the password selected during setup.
    4. Click the Advanced Properties Page link.
    5. Click Password Encryption at the bottom of the page. This is where you will encrypt your password.

    Using PSCipher

    The PSCipher utility can be found under $PS_CFG_HOME/webserv/<DOMAIN>/piabin where <DOMAIN> is your web server domain.

    Run the following command:

    ./PSCipher.sh <password>
    Note

    The password can have special characters so you will need to enclose the password in single quotes. For example: ./PSCipher.sh '#rpassword$){'

  6. Update the SMTP settings on the PeopleSoft Application server. For more information, see SMTP Settings in the PeopleSoft documentation.

    Establish an ssh connection to the PeopleSoft Application server machine (as username "opc") and do the following:

    1. Switch user to psadm2 (for example, sudo su - psadm2).
      Note

      psadm2 is the PeopleTools domain user who creates and configures the Application Server domain.
       
    2. Navigate to the Appserver configuration directory.

      Run the following command:

      $ cd $PS_CFG_HOME/appserv/APPDOM
      
    3. Back up the original psappsrv.cfg file.
    4. Add the following information to the psappsrv.cfg file:
      SMTPServer=<SMTP connection endpoint>
      SMTPUserName=<username from SMTP credentials>
      SMTPUserPassword=<encrypted SMTP password>
      SMTPPort=587
      SMTPUseSSL=N
      SMTPSSLPort=587
      SMTPTLSEnable=true
      SMTPTLSRequired=true
      
      Note

      Do not include a space between the "=" and the values because the space could be counted in the value for the password, causing an authentication failure.

  7. Add the primary email address for the PeopleSoft application user who is trying to send notification from within the application. In this example, the user is "PS".

    Log in as "PS" and do the following:

    1. Open the navigation menu on the PeopleSoft dashboard. Go to PeopleTools, and then select Security.
    2. Select User Profiles, and then click user Profiles. Find the profile for "PS".
    3. On the General tab, click Edit Email Addresses.
    4. Enter the approved sender email address as the primary email address.
  8. Log out of the PeopleSoft application.
  9. Reboot the application server using the PSADMIN utility. See Using the Application Server Administration Menu.
  10. Test the email notification delivery.

    Log into the PIA as "PS", and select Notify anywhere in the console. For example, you can do the following:

    1. Go to Peopletools, and then select Web Profile.
    2. Select Web Profile Configuration.
    3. Click Search, and then click PROD in the search results.
    4. Click Notify, enter the notification details, and then click OK.

    Confirm receipt of the test email.

To debug SMTP errors (optional):

  1. You can add the following parameter to help with SMTP debugging: SMTPTrace=1

    LogFence should be set to 5 to use this parameter. The system writes the log information to SMTP<DDMM>.log in %PS_SERVDIR%/LOGS by default, or the custom value set for Log Directory.

    For example:

    $PS_CFG_HOME\APPSERV\domain\LOGS\SMTP6_27.log
  2. After you set this parameter, you will need to reboot the Application server. Once this parameter is set, you can monitor the SMTP log.
  3. Type ls and find the SMTP file for the date you sent the email.
  4. Run the following command:
    tail -f <smtp log file and date>

    For example,

    tail -f SMTP9_17.log

    Search for any errors in the output.

Troubleshooting

535 authentication required error occurs when sending email

To troubleshoot this issue, complete the following steps:

  1. Use the following method to re-encrypt the SMTP user password, and enter it in the PeopleSoft application server or process scheduler configuration file's SMTP settings.
    1. Open any Integration Broker node by navigating to PeopleTools, Integration Broker, Integration Setup, and then click Nodes.
    2. Click on the Connectors tab. Ensure it is using the HTTPTARGET Connector.
    3. Expand the encryption section and encrypt the SMTP user password again.
    4. Enter the new encrypted password in the SMTPUserPassword settings.
  2. Verify that the optional parameters below are set in the SMTP settings section of the configuration file even if they are not being used.
    SMTPUseSSL1=N
    SMTPSSLPort1=587
    SMTPTLSEnable1=true
    SMTPTLSRequired1=true
    SMTPClientCertAlias1=