Configuring SAP SMTP service
SAP ECC permits sending and receiving of messages, including email. NetWeaver ABAP comes with everything needed to set up the configuration. What is needed is an external email infrastructure to have a usable mail configuration in SAP that allows for sending and receiving email:
- External SMTP server. Acts as a SMTP server between SAP and the receiver. This is the email server used to send emails. This can be the official SMTP server of the corporation or any other valid one, like Yahoo.
- Route for incoming emails. As the MX DNS entry for a domain normally points to the SMTP server mentioned above, the SAP SMTP server won’t receive emails automatically. A forwarding rule between the SMTP server and the SAP SMTP server needs to be configured.
Configuration of SMTP in SAP
SAP Note: 455140
The steps are pretty simple. All are to be executed in the SAP system. I used the NPL Gateway Demo system for this.
1. Open the port for SMTP
In case this was not done before, import the profiles
Select the right profile (here: instance profile) and the Extended maintenance option.
To receive emails on an SMTP port, ICM needs to be configured to
- Open the port and to
- Use protocol SMTP
Add an entry for SMTP in the instance profile. Here, the port used is 25000.
Save changes to instance profile.
Then save and activate the changes.
Warning message informs that a ICM restart is needed to activate the changes.
Looking in the profile file on the server:
ICM profile file is changed, change is persisted in the file but ICM does not pick up the new configuration automatically. A restart of ICM is needed.
The Restart option didn’t work for me, a hard exit with a start activated the change. But I am not Basis person.
Confirm the restart of ICM.
Check the SMTP service details. They have to match the new configuration.
Verifying the ICM parameters using SAP MMC.
2. Create system user for receiving emails
Make sure the users in the SAP system have an email address configured.
Here I am using firstname.lastname@example.org
With this configuration, email send to the SAP SMTP server will be picked up and delivered into the user’s inbox.
3. Configure SMTP service
Check that the virtual SMTP server is configured
The logon data has to be configured to use the above created SMTPUSER
Save the changes and activate the service.
Configure the SMTP server and outbound and inbound flow
- SMTP server
Set the default domain
This domain matches the email domain of the users.
View: Nodes view
Set the outgoing SMTP server
Note: This is the SMTP server the SAP system will use to actually send the emails. Emails get send to this SMTP server and from there they are being send to the actual recipient. That is, the server defined has the responsibility to lookup the MX entry of the receiving domain.
Set the address type this node does accept
Note: In the address area, insert the valid format of email addresses. When you insert * the node will accept every email address. To make this node only accept email addresses for a specific user, put <username>@domain.tld
Result in node view
Now the node is configured to accept outgoing emails. What is missing is a job that picks up the emails from the outgoing queue and sends them. Create a job that will send the queued messages
View: Job view
Select SAP&CONNECTALL or SAP&CONNECTINT for sending internet email
To run the job immediately, select “Start immediately”. To schedule a job so it is executed at a defined interval, select “Schedule”
As long as the virtual SMTP server is activated and the system user has the right permission AND a user with the correct email address exists, inbound processing of emails will work.