Workshop Edocumet Compliance
Workshop Edocumet Compliance
PUBLIC
• Introduction and Baseline • SAP BTP Integration • Q&A
• Framework • Peppol
• Introduction
• Process Manager • Programming Model
Reconciliation
Automation Source Data
Process Management Conversions Technical Integration
technical
• Status Management • Semantics • PKI Infrastructure
Integration Storage
• History • Syntax • End-to-end Integrity
• Audit • Compressions • Technical Interoperability
• Actions • Encodings
triggering
Automation Reconciliation
Rendering
• Submission + Resubmission • Technical
• Error Handling • Fiscal Calculations
• High Performance
Process
Management
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13
Source Document Concept
Contract Rebate
Accounting Agreements
periodic
processing
Sales Order / Industry specific PO Self Invoicing
Delivery billing (e.g. IS-U)
Agency (Broker)
Operations
External Sources
Retail Operations
Financial
Subledgers
Real Estate
Billing
Financial Invoices
Process Document Compliance
Processing Proceed with logistics….
Sales /
Logistics UNECE ISO
UN / CEFACT
CII and more… Materials GS1
Financial Units √ √
Standards
Currencies √
B2B
UN EDIFACT
Procurement Countries √
and Logistics
Tax Affectation √
ebXML
Industry
Specific
SAP xCBL 3.0 e.g.: STAR, CID-X,
PID-X, etc..
email
Outgoing Invoice
Invoices
Outgoing DTE
Incoming envelope
Outgoing envelope
(“Summary”) Validation
Incoming Invoice
Incoming envelope
Acceptance & Rejection
Database
email
Invoice acceptance
Information Acceptance & Rejection Vendor Invoice
Management*
Incoming Invoice
Sales Records
Reconciliation
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC *automation for Chile is not configured out-of-the-box 19
Architectural Components
Architectural Component Overview
Nodes
Application Interface
Framework
Data Store
Web Services Runtime
* *
Processes (e.g. “Spain Bundle Processing”) Document (e.g. “Peru Credit Note”)
• How the execution will happen, including actions, • Mostly XML files exchanged in the context of a process.
eventual errors and “variations” during the execution. • Are generated from a “Source Document” concept,
provided from framework level, e.g.: SD/FI Document,
• Processes could be registrations, approval, updates,
FI Document, Shipment, Goods Issue, SII Document,
etc.. etc…
A Sample
Compliance Process
Compliance
Processes for a
Country
1- Search for Overview or Master note for solution in SAP Community Page
api.sap.com
• Signatures
eDocument
Framework
Application
• Source Document Interface
• Process Manager
Framework
• eDocument Interface SAP
• Cockpit
Document
Compliance
WS-Runtime Integration
Process Manager
WS-Runtime
Application Interface Framework • SAP S/4 or ERP Communication to
SAP CPI
eDocument Framework
SAP BTP Integration
• Security Mediation
Web Services Runtime / ICM (ICF)
• Internet Com. management
SAP Business Technology Platform Integration
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 32
eDocument Framework Components
EDOTYPEV – eDoc Types EDOCOUNTRYCH T003EDOCV – eDoc type for FI doc type EDOINTTYPEV - communication EDOCOMPANYACTIV EDOSRCTYPEV - communication
eDoc Types Country ABAP Class Country FI doc eDoc Type Company Code eDoc Interface Type Company Source Type Source eDoc structure Source ABAP class
Type Type (comm) Type
Process status Process step ABAP class ABAP Method Process Process flag Process action action variant
EDOPROCFUNCASGV – Func
Process Function
STATUS FOR TYPES STEP VERSION FLAG POSITION STEPS FOR ACTION
EDOMETASTATUSV - Process Process eDoc status Process step Version Process version flag Position Process Action Action version Seq step
Type variant
Process step Version result Process step Version variant Process step Version variant
EDOMETASTATDETV - eDoc
Type Status STEP VARIANT FLAG CHANGE
STATUS DETERMINATION
eDoc Process cockpit Process step Version result
Process version eDoc Flags
Type Status status
Type
EDOINTVERSIONV – eDoc Int V. EDOPROCSPINTDETV – SAP Document Compliance Interface EDOINTAIFV - EDOINTV – WS-R Link EDOSOASERV – WS-R Log Port
eDoc Interface version process Version Step eDoc variant eDoc Interface eDoc Version AIF namespace AIF Interface eDoc Interface Proxy ref Proxy ref Logical Port
Type Interface
NAMESPACE
version WS
SAP Application Interface Framework
eDoc names
AIF NAMESPACE ERROR HANDLING
namespac
e
AIF
interf
versi
on
fiel
ds
nam
esp
AIF INTERFACE ACTIONS
generic config
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 34
eDocument Process Manager
What is the “Process Manager”
SUNAT_RESP
Process End
• Action Step Variant • Process Processing
Triggering • Check The Step • Set Status
Process • Save to
Status Database
Process
Result
Step Variant
DB Table EDOCOUNTRYTCH
Process Steps can have variants (stored in an input parameter to a process step) – as before.
13
11
STATUS DETERMINATION
STEPS FOR ACTION
Process version eDoc Flags
Process Action Action version Seq step Type
variant
12
6
STATUS
FLAG
Process status
Process flag
10
ACTION 1
PROCESS
Process action action variant
Process
2
STEP
Process step ABAP class ABAP Method 4
STEP VERSION VARIANT
8
STEP VARIANT FLAG CHECK
3
Process step Version variant
STEP VERSION
9
STEP VARIANT FLAG CHANGE
5
STEP VERSION RESULT
Detail
Avoid asking the step status within the process method, but handle different processing with
variants!
Recommended: Sequence
numbers 10, 20, 30, etc. (for the
same key) to leave space for
upcoming changes in-between
Define how depending on the result (parameter) the step status changes:
Detail
Action – UPDATESTATUS
Variant – AT (Impossible to Deliver Notice)
Included Process Step: the process step is included (called from) another process step.
This is done via communicate_process_step() – as before.
Detail
Cockpit
Process audit
AIF
(history)
Security
Compliance
process status Business XML storage
management Data
Technical Mapping
transformation
Communication Compliance
standardization process Business
choreography Process Business
Communication
execution data storage process Transaction
relationships
Technical Local
Automation Standardized
logging specifics Monitoring
▪ Namespace Definition
▪ Interface Development > Define Namespace
▪ /EDO: Global namespace for SAP Document Compliance
▪ /EDXXX: Country-specific namespace
▫ Examples: /EDOIT for Italy, /EDOPE for Peru, /EDSII for Spain SII etc.
▪ Interface Definition
▪ Interface Development > Define Interfaces
– Interface Versions
▪ When a new XML layout is published, we use a new
interface version for the same interface pair
– Structures
▪ SAP Data Structure: Source structure of mapping
▪ Raw Data Structure: Target structure of mapping
▪ Record Type in Raw Structure: Sub-structure in target
structure that contains the content
▫ For response interfaces, the record type must be empty!
– Functions
▪ Check Function Module: To check (or process) data in
destination structure
▫ SAP Document Compliance request interfaces use
EDOC_AIF_GENERIC_CHECK
▫ Not used for response interfaces
– Actions
▪ Callback functions/hook during the interface processing
▫ All SAP Document Compliance interfaces use action GENERIC_ACTION from namespace /EDO
▫ Action calls the SAP Document Compliance Process Manager and updates the SAP Document Compliance status
AIF_PROXY
AIF_XML
▪ Transaction /AIF/ERR
– Monitoring and Error Handling
– Selection by
– Application (AIF)
– Namespace (country-specific)
– Interface (namespace-specific)
– Version
– Generic selection by
– Creation Date and Creation Time
– Message GUID
– Buttons available for quick selection
– Status selection
– Selection by message status
– Default: Application Errors & Technical Errors
– Buttons available for quick selection
Screen Layout
Messages ordered by
Interface GUID
Source Type
Source Key
Message status
In process
Successful
With Error
Available Actions
Restart in case of transmission error
Cancel (deactivated)
SAP BTP
eDocument AIF eDocument WS-Runtime ICM Integration Tax Office
ABAP XML
AIF and SAP Document Compliance implement only simple web services, no need to configure the
complete WS Runtime environment.
Search, discover, experience and consume to right APIs from SAP and select partners for your
digital transformation projects
Riyadh
▪ World-class tier-3 and 4
▪ Strong isolation on
Sao Paolo infrastructure layer
Planned
with completely
Riyadh, Saudi Arabia Q1/2018 Sydney isolated tenants
▪ List of Data Centers
Worth Knowing
▪ Only Tenant Administrators with specific role may maintain key pairs and certificates
▪ Tenant key store divided into 2 parts via naming conventions:
• SAP owned entries: starts with sap_ or hci.
• Customer owned entries: all others
→ Distribute + Save
Import CA Intermediate
Create a PSE and root certificates to
(e.g. Client SLL Generate a Certificate Import CA Signed complete the complete
Standard) Sign Request Export as a *.csr File Certificate chain.
Trusted CA Company
Etc…
Trusted CA may have different requirements and ask you to provide company
specific data.
They may also take some time to analyze your company before issuing a
certificate.
User ID /
Password not for
productive usage
is S* users!.
Not standard
recommendation eu176281928.ssl.ondemand.com /cxf/ItalyReceiveNotification
test.sdi.mycompany.com/cxf/ItalyReceiveNotification
Iflow name
Could be either Company Domain Name or SAP Custom domain SSL Host Name
Optional Tax ID
Request: https://050.040.030.020/cxf/mySampleIFlow
GET / HTTP/1.1 Canonical names Mapping table
Host: Test.sdi.myCompany.com Test Subaccount
Accept: ….(etc).
Integration Tenant
l0002-iflmap….
“PEPPOL is not an e-Procurement platform but instead provides a set of technical specifications that can be implemented in existing eProcurement solutions
and eBusiness exchange services to make them interoperable between disparate systems across Europe.
PEPPOL enables trading partners to exchange standards-based electronic documents over the PEPPOL network (based on a 4-corner model). These documents
include e-Orders, e-Advance Shipping Notes, eInvoices, eCatalogues, Message Level Responses, etc.
PEPPOL Access Points connect users to the PEPPOL network and exchange electronic documents based on the PEPPOL specifications. Buyers and suppliers are
free to choose their preferred single Access Point provider to connect to all PEPPOL participants already on the network. (‘Connect once, connect to all’).”
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 100
PEPPOL – Pan-European Public Procurement On-Line
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 101
Core Peppol Infrastructure components
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 102
Peppol Today
B2G and B2B Countries embracing the ▪ Order only ▪ Message Level
▪ Ordering Response
▪ Compulsory and optional profiles framework definition:
▪ Catalogue only ▪ Invoice
(formats) ▪ Austria, Belgium, Denmark, England, Response
France, Italy, Netherlands, Norway, ▪ Despatch Advice
▪ Reusing well-known ▪ Catalogue
Poland, Sweden, Germany ▪ Punch Out
communication standards (AS2/ Without
AS4) ▪ Australia + New Zealand ▪ Order Response
▪ Singapore Agreement
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 103
Deployment
Suite SD Bill FI
Suite SD Bill FI
Recipient Business
Tax Office Partner
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 104
Country Independent and reference processes (typical in Peppol)
Netherlands
Norway
New Zealand
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 105
Solution Development Intro
+ S/4 HANA + C TPS31 – BTE functions
Source Types: SAP Document Compliance List - SAP Document Compliance - Accounting Document - FI-CA Document - Goods Issue Posting - Goods
+ SAP ERP Receipt Posting - Inbound Delivery - Invoice Verification - IS-U Print Document - Shipment - Sales/Purchase/Daily Ledger - Outbound Delivery - Real
SAP ERP Process Country App ABAP FM estate document - Billing Document without Accounting Data - Billing Document - Billing Document (accounting data in FICA) – Incoming Source File -
+ Industry Solution
Convergent Invoicing Document
SAP DC Framework
EDOTYPEV – eDoc Types EDOCOUNTRYCH T003EDOCV – eDoc type for FI doc type EDOINTTYPEV - communication EDOCOMPANYACTIV EDOSRCTYPEV - communication
eDoc Types Country ABAP Class Country FI doc eDoc Type Company Code eDoc Interface Type Company Source Type Source eDoc structure Source ABAP class
Type Type (comm) Type
Process status Process step ABAP class ABAP Method Process Process flag Process action action variant
EDOPROCFUNCASGV – Func
Process Function
STATUS FOR TYPES STEP VERSION FLAG POSITION STEPS FOR ACTION
EDOMETASTATUSV - Process Process eDoc status Process step Version Process version flag Position Process Action Action version Seq step
Status Type variant
Process step Version result Process step Version variant Process step Version variant
EDOMETASTATDETV - eDoc
Type Status STEP VARIANT FLAG CHANGE
STATUS DETERMINATION
eDoc Process cockpit Process step Version result
Process version eDoc Flags
Type Status status
Type
EDOINTVERSIONV – eDoc Int V. EDOPROCSPINTDETV – SAP Document Compliance Interface EDOINTAIFV - EDOINTV – WS-R Link EDOSOASERV – WS-R Log Port
eDoc Interface version process Version Step eDoc variant eDoc Interface eDoc Version AIF namespace AIF Interface eDoc Interface Proxy ref Proxy ref Logical Port
Type Interface
NAMESPACE AIF INTERFACE AIF NAMESPACE ERROR HANDLING AIF INTERFACE ENGINE AIF INTERFACE ERROR HANDLING AIF INTERFACE ACTIONS
AIF namespace AIF AIF interf version WS eDoc names AIF interf versio Tabl program nam AIF interf versio Proxy / XML namespac AIF versi fiel nam AIF interf versi acti
name Proxy Mapping pace n e esp n XML form e interf on ds esp on on
space structures ace Comm at ace
generic config
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 107
Country Approach: Communication Models
S R
Tax Office or Validation Service Tax Office or Validation Service
© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 108
New Solution Creation in a Nutshell - 4 Steps
Web Link
eDocument AIF
Service eDocument
Solution Interface
Proxy solution
• Country Class • Communication WSDL • Namespace • AIF
• Solution DB Tables • SAP BTP Integration • Interface • Web Service Proxy
• Document Types iFlow • Engine • S/4HANA (trigger)
• ABAP Classes • ABAP Consumer Proxy • Errors
• DB • Configure Proxy • Actions
• Solution
• AIF Communication
• Mapping
• Process Manager
• eDoc Interface
• Cockpit Customization
• Mapping Config.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 109
BADI EDOC_PARTNER_CONNECTOR
BADI EDOC_INTERFACE_CONNECTOR
CL_EDOCUMENT IF_BADI_INTERFACE
IF_EDOC_INTERFACE_CONNECTOR
CL_PROCESS_MANAGER Solution
Database Handler Enhancements Class
Mapping
Database Handler Interface
CL_EDOC_MAP_AIF
CL_SAP Document
IF_SAP Document Compliance_DB
CL_EDOC_MAP Compliance_DB
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 110
Triggering an eDocument Instance
• Supported source objects (e.g. SD Invoices) • Factory class is a generic functionality that
check based on the document type allows to run a custom logic to determine
the need to trigger an eDocument Instance
• This is called the “HOOK” connecting the
source object to the compliance process
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 111
Sample Country or Solution Class
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 112
Mapping Class
Transformation rules
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 113
Sample Source Document Class
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 114
Didactical interaction between eDocument Process and Source Document
Create
Create
Business Actions Finished
eDocument
Document
Country/Solution
Display
MAP
Class
Class
Communicate
Submit
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 115
Document Content Creation at high level
Get Definition Adjust XSD or similar Generate ABAP Proxy Create iFlow
• Process + • Error handling • Fine tune definitions 1. Import enhanced
Documents • Integrity if required XSD for signing
• Could be XML or enhancements • Fill up content from 2. Implement interface
JSON (Base 64 + Zipping) source object
• Usually XSD or
WSDL files.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 116
3 Dimensions in Mapping
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 117
Request Transformation – AIF Integration Between Source Object and WS-
Runtime
U
U
GET_SOURCE_DOCUMENT_DATA
Connectivity +
Confidentiality
Integrity
Authentication
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 119
Background Information
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 120
Enable Call of Process Methods from the
Process Manager Class
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 121
Redefine Method DETERMINE_PREREQ_FOR_PROCESS
Method DETERMINE_PREREQ_FOR_PROCESS:
If the process determination for the country (existing method determine_process) needs other
values (e.g., SAP eDocument type, interface type) as a pre-requisite, provide the determination in
this new method.
Background:
The process needs to be determined earlier at the creation of the process instance (with existing
method prepare_eDocument).
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 122
Process Methods
Import Parameters:
IV_INTERFACE_GUID TYPE EDOC_INTERFACE_GUID
IV_PROCESS_STEP TYPE EDOC_PROCESS_STEP
IV_VARIANT TYPE EDOC_PROC_STEP_VARIANT
IS_DATA TYPE <specific to step>
or subset of these
Returning Parameter:
RV_RESULT TYPE EDOC_PROC_STEP_RESULT
Exception:
CX_EDOCUMENT
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 123
Process Methods for Re-Use
Process Methods (or parts of them) that are likely to be re-used in country-specific process
methods are provided by the SAP Document Compliance Framework:
Class CL_eDocument
Methods process_<step>_global
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 124
Creation of a Process
Creation of a SAP Document Compliance process from other document (e.g., invoice) call method
CREATE_EDocument of CL_EDOCUMENT as before.
• Use variant ‚HOOK‘ of action ‚CREATE‘ and variant ‚HOOK‘ for the ‚CREATE‘ process step
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 125
The Action ‚SUBMIT‘ and alike
• since there will be also a save_to_db() for this step, ensure that document values are most
current (note: trigger implementation work on different instances of the document) by using
existing method load_from_db()
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 126
Attributes Managed by the Process Manager
Process-relevant Attributes of the document (also of DB table SAP Document Compliance) are
managed now by the process manager class CL_EDOC_PROCESS:
MS_PROCESS_ATTR
• PROCESS
• PROCESS_
VERSION
• STATUS
• PROC_STATUS
• LAST_PROCSTEP
• LAST_PROCSTEP_VARIANT
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 127
Integration, Automation and
Enhancements
Automation
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 129
Simple enhancements via BADI → ES_EDOCUMENT
Handy methods to
tweak existing
implementation
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 130
Incoming process at high level
✓ ✓
Triggering Validation Forwarding to Compliance
Compliance • Integrity business process Process
Process • Validity • Correlation / Matching Conclusion
• External event triggers • Posting to business • Notification to
process creation application Business Partner
• Or File based • Update + Finish
Process
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 131
Incoming Integration
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 132
Incoming processing Open Text
VIM
options:
Etc….
• BAPI
BAPI_INCOMINGINVOICE_CREATE1
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 133
Simple enhancements via BADI → ES_EDOC_INCOMING
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 134
Incoming processing
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 135
Steps to for inbound processing
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 136
Automation via iFlow via Push or Pull iFlows
SAP
SAP BTP
Cloud S/4 HANA
CI
Connector
Reading emails is a very
Pulling messages from ABAP is also possible common scenario
S/4 SAP
HANA BTP CI
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 137
Internal triggering – custom option
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 138
Inbound triggering from files and pulling from iFlows
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 139
Runtime Environment
SAP BTP Integration - Runtime
Environment
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 141
SAP BTP Integration - Virtual System Landscape
➢ Factory : Externally available landscape for productive usage. Depending on the related data center, there are different URLs for Europe, the US
and Asia-Pacific.
• Virtual Server Names
Europe : https://hana.ondemand.com
IP Address : 155.56.128.0/17 ( min 155.56.128.1 max 155.56.255.254)
USA : https://us1.hana.ondemand.com
IP Address : 65.221.12.0/24 (min 65.221.12.1, max 65.221.12.254),
206.112.73.0/24 (min 206.112.73.1, max 206.112.73.254)
Asia-Pacific : https://ap1.hana.ondemand.com
IP Address : 210.80.140.0/24
• Virtual Server Names and IP address are same as for factory data center for Europe
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 142
SAP BTP Integration - Cluster Nodes
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 143
SAP Document Compliance Cockpit Monitor
Provides
generic
monitoring for
all SAP
Document
Compliance
based solutions.
The cockpit
covers
execution and
monitoring.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 144
AIF Monitor
Provides access
to technical
interfaces
monitoring.
• Message
Monitoring
• Data Structure
• Errors
• Field level info
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 145
WS Runtime (SRT_TOOLS | SRT_UTIL)
Provides access to
communication level data.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 146
SAP Internet Communication Manager (SMICM)
HTTPS Service:
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 147
SAP BTP Integration Message Monitoring - Overview
• Messages are removed from the system after a determined period of time.
• With additional authorizations and configuration also the step by step payload can be saved.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 148
SAP BTP Integration PI Message Monitoring – Web - Overview
Default tool
▪ Support basic search capabilities
▪ Covers status, logs, artifacts, attachments
and tracing.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 149
SAP BTP Integration PI Message Monitoring – Web – Search Capabilities
1- Select
Predefined or
Custom
2- Flexible range
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 150
SAP BTP Integration PI Message Monitoring | Message Monitoring APIS
• + Error Information
• + Adapter Attributes CustomHeaderProperties
Attachments Properties
Properties
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 151
SAP BTP Integration PI Message Monitoring | Message Monitoring APIS
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 152
SAP BTP Integration PI Message Monitoring | Message Monitoring APIS
…/MessageProcessingLogCustomHeaderProperties?$filter
=%20Name%20eq%20%27customer%27%20and%20Value%20eq%20
% 0120320%27&$expand=Log
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 153
Considerations using persistency
Some eDoc solution implement persistency using SAP BTP Integration Data Stores.
• Memory Model
SAP BTP Integration also supports high performance enterprise messaging (JMS)
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 154
Security
Motivation
I am not a in a technical role why should I be interested in
this complex deeply technical topic?
• Because you are personally representing your
company in front of the national tax authority.
• Because you are legally responsible for the data
presented.
• Because you need to define how security elements are
going to be handled in your company.
• Because you need to understand the purpose of every
step to determine how to proceed and who you trust.
• All in all, are you sharing your bank passwords with
everyone?
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 156
Deep dive into our understanding of end-to-end security
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 157
Security in the realm of SAP Document Compliance
➢ Security mechanisms based on open, standard-based and interoperable solutions for integration in
existing infrastructures
Federation
Document Security XML Sig WS-Security Sig XML Enc PKCS#7 PGP Digest
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 159
Typical Content Encryption Techniques (Cryptography basics)
• Sender encrypts the clear text with a • Sender encrypts the clear text with the public
symmetric key and receiver decrypts the key and receiver decrypts the cipher text with
cipher text with the same symmetric key the corresponding private key
• Problem: secure exchange of the symmetric • Public keys can be made public because it is
key very hard (or nearly impossible to calculate
the private key from the public key)
process (explained later), but the sender “signs” Public keys (max N)
with the single private key, and the receiver must •typically meant to be shared
•used to encrypt content
use a derived public key to verify. •Derived (mathematically) from a private key
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 160
Certificates Key
Making
Certificates which are signed by the private key Intermediate sure
corresponding to the public key of the certificates are authority
validation software is
called self-signed. The self signed certificate in a not corrupt
certificate chain is called root CA.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 161
Understanding trust relationship among companies (chains)
Global Trust
Corporation
Root CRT
(self signed)
signs…
I trust in
certificates signed
by…
Regional Trusted
Inc Intermediate
CRT
signs…
End-user I trust in…
Server
CRT
chain
Keys,
algorithms,
subject,
issuer,
expiration..
Download….
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 163
Main Certificate Components in detail…
I intermediates
E end user
many….
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 165
Web Server Trust relationships - What is a CSR file?
• This public key is initially not signed by any trusted CA (but the
same web server company: “Issued To:” = “Issued By:”) .
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 166
A forest of file types for certificates
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 167
Should I trust in this service provider?
Web
Client
Server
Key-pair.
Only public key is shared.
Only private key holder can
decrypt messages.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 168
Should I allow this client to access my infrastructure?
The certificate chain must be stored on the client side, and presented to be authorized,
This flow is a standard procedure, and how SAP Cloud Platform works, but other
servers might differ, e.g. storing also the Intermediate keys on the server side.
Web
Client
Server
R Present… R
I
E
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 169
Authentication Options
= =
“Live” b64ac05f17e64d037db81a98f51e2688216e292ae9748f979f04dfbac49fd7fc
(not possible!)
A digest or hash is a fixed length string that is generated Sender can share information that is not understandable to
from a source value using a publicly known algorithm. the receiver.
From the digest, it is not possible to know the source If the receiver changes the information, it is noticeable to
string. the sender.
Different source strings always* generate very different → Receiver unlikely to perform any wrongdoing.
digests.
Example use case: receiver signing on senders behalf.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 173
Message exchange example
Hash
f5c86e192753d1faa4a35ac
Request signing Aksjf943nare987a4
55e8087ec4a751c8002aeca + encode rp9ray43n
1655596b380a632ebe
Decode +
Send
OWRqbm5lRUVqcnNre decrypt
GplaXNGYWVsZHMwMj
RuYTBkZg==*
“Pay € 1000 to Peter”
+
Aksjf943nare987a4rp9ray43n
Verify
Signat. **
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 175
SAP Custom Domain Architecture
SAP Cloud Platform Datacenter 050.040.030.020
Trusted CAs root
Load Balancer
certificates
Subaccount
Canonical names
Mapping table Integration Tenant
l0002
WS iFlow
ItalyReceiveNotification
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 176
Domain Name Registrar Company Role
It is a company is accredited by
Internet Corporation for
Assigned Names and Numbers
(ICANN)
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 177
SAP ERP Trust Manager (STRUST)
→ Distribute + Save
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 178
How can I have my S/4HANA (etc…) certificates signed by a Trusted CA?
Import CA Intermediate
Create a PSE and root certificates to
(e.g. Client SLL Generate a Certificate Import CA Signed complete the complete
Standard) Sign Request Export as a *.csr File Certificate chain.
Trusted CA Company
Etc…
Trusted CA may have different requirements and ask you to provide company
specific data.
They may also take some time to analyze your company before issuing a
certificate.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 179
Detail of WS Runtime Configuration (SOAMANGER)
User ID /
Password not for
productive usage
is S* users!.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 180
Getting Transport Certificates–
1. Export to file all the
certificates to your local
machine using a web browser
both for “demo” and
https://arss.demo.firma-
productive Aruba
automatica.it/ArubaSignService/ArubaSignService environments.
https://arss-sap.actalis.it/ArubaSignService/ArubaSignService
2. Then go to the corresponding
SAP BTP Integration Tenants
and import them all.
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 181
Standard SAP Setup for Incoming Architecture
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 182
Incoming URLs
These iFlow URLs will be used during SDI Registration, Subdomain registration and
CNAME Mapping.
SAP BTP Integration Tenant mapping
Web Service
Process
Identification
Not standard
recommendation eu176281928.ssl.ondemand.com /cxf/ItalyReceiveNotification
test.sdi.mycompany.com/cxf/ItalyReceiveNotification
Iflow name
Could be either Company Domain Name or SAP Custom domain SSL Host Name
Optional Tax ID
Request: https://050.040.030.020/cxf/mySampleIFlow
GET / HTTP/1.1 Canonical names Mapping table
Host: Test.sdi.myCompany.com Test Subaccount
Accept: ….(etc).
Integration Tenant
l0002-iflmap….
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 184
SAP Cloud Connector
Firewall
Firewall
SAP ERP
Cloud connector
registration and
mapping table
R Subject to User
R I E I
R E
Mapping
User Role
E
Negotiate Technology and Validation
present a certificate chain Verify Chain Verify Root iFlow Role
Determination
R R R R R
R R
I I I I R R R R iFlow Execution
R
E E E E E
E E
Etc…
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 186
Standard Protocols for Security
There are several standard protocols that support multiple security features
• Usage/Adoption different across regions
• Industries also defined vertical protocols with more transactional focus.
• Standards for reliable messaging not widely adopted.
WS-Security PGP Others…
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 187
Security Configuration in SAP BTP CI
Keystore +
Credentials
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 188
Self-Service Keystore
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 189
SAP BTP Identity provider
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 190
&
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 191
All solutions
• Master Notes
• Documentation
• Implementation
Support
Thank you.
Contact information:
Daniel Bianchin
SAP Globalization Product Management
Daniel.Bianchin@sap.com
Follow us
www.sap.com/contactsap
www.sap.com/germany/contactsap
Die vorliegenden Unterlagen werden von der SAP SE oder einem SAP-Konzernunternehmen bereitgestellt und dienen ausschließlich
zu Informationszwecken. Die SAP SE oder ihre Konzernunternehmen übernehmen keinerlei Haftung oder Gewährleistung für Fehler
oder Unvollständigkeiten in dieser Publikation. Die SAP SE oder ein SAP-Konzernunternehmen steht lediglich für Produkte und
Dienstleistungen nach der Maßgabe ein, die in der Vereinbarung über die jeweiligen Produkte und Dienstleistungen ausdrücklich
geregelt ist. Keine der hierin enthaltenen Informationen ist als zusätzliche Garantie zu interpretieren.
Insbesondere sind die SAP SE oder ihre Konzernunternehmen in keiner Weise verpflichtet, in dieser Publikation oder einer
zugehörigen Präsentation dargestellte Geschäftsabläufe zu verfolgen oder hierin wiedergegebene Funktionen zu entwickeln oder zu
veröffentlichen. Diese Publikation oder eine zugehörige Präsentation, die Strategie und etwaige künftige Entwicklungen, Produkte
und/oder Plattformen der SAP SE oder ihrer Konzernunternehmen können von der SAP SE oder ihren Konzernunternehmen jederzeit
und ohne Angabe von Gründen unangekündigt geändert werden. Die in dieser Publikation enthaltenen Informationen stellen keine
Zusage, kein Versprechen und keine rechtliche Verpflichtung zur Lieferung von Material, Code oder Funktionen dar. Sämtliche
vorausschauenden Aussagen unterliegen unterschiedlichen Risiken und Unsicherheiten, durch die die tatsächlichen Ergebnisse von
den Erwartungen abweichen können. Dem Leser wird empfohlen, diesen vorausschauenden Aussagen kein übertriebenes Vertrauen
zu schenken und sich bei Kaufentscheidungen nicht auf sie zu stützen.
SAP und andere in diesem Dokument erwähnte Produkte und Dienstleistungen von SAP sowie die dazugehörigen Logos sind Marken
oder eingetragene Marken der SAP SE (oder von einem SAP-Konzernunternehmen) in Deutschland und verschiedenen anderen
Ländern weltweit. Alle anderen Namen von Produkten und Dienstleistungen sind Marken der jeweiligen Firmen.
Zusätzliche Informationen zur Marke und Vermerke finden Sie auf der Seite www.sap.com/trademark