| Status | |
|---|---|
| Owner | RUIZ SOMOZA-ext, Carolina |
| Stakeholders | |
| Jira Request ID | |
| Jira Development ID |
| Implementing System | S/4 HANA |
|---|---|
| Invoked by/Invokes | Link to any Integration Process spec which is related to this System Interface, e.g. because it is invoking this interface, or because this interface is sending data to it. |
| Business Process Reference |
This Functional Specification describes the outgoing Reservation Interface between SAP S/4HANA and 3PLs (via CPI) using SAP standard OData API_RESERVATION_DOCUMENT.
This interface will send the Reservation document information to the 3PL for their processing.
This interface covers the transmission of Reservation documents created in S/4 HANA to the 3PLs (via CPI).

Step | Description | Comment |
|---|---|---|
1 | Reservation document is created or updated in S/4 HANA | |
2 | S/4 raises an internal event. | |
3 | System checks the 3PL assignment table | To determine if the interface is active and retrieve the 3PL assigned |
4 | Relevant event is published to SAP Event Mesh | If previous steps are successful |
5 | CPI consumes the event and retrieves full reservation doc information | CPI will also get the 3PL partner from the 3PL assignment table for routing purposes |
6 | S/4 updates Monitoring Table | Using System date and time |
7 | 3PL consumes, post the document and send an Ack back | |
8 | S/4 updates Monitoring Table | with the Ack information received |
Describe any assumptions that have been made in the process of completing this design. What functionality is expected of configuration or other developments that pass information to this development and/ or retrieve the information processed by it (performance, triggers, exceptions, etc.)
ERP-865 - 3PL Warehouse interface - Inbound acknowledgements - System Interface FS in Progress For tracing the transmission in the monitoring table
ERP-845 - 3PL Configuration Application FS in Progress 3PL assignment and activation table
To detail the security requirements for processing this object, any data integrity issues associated with the object and the teams that will be responsible for processing the object, i.e. authorization/roles required to who can execute the interface, encryption requirement, etc.
Specify the configuration requirements for this object. Like in case of substitution/ routine specify the configuration needed
Specify any special requirements or considerations that may impact the interface based on specific locations, regulatory compliance or system limitations. Clearly outline requirements e.g. localization rules for countries like China
If the interface interacts with third-party systems such as Icertis, describe any additional integration, security or authentication considerations that must be taken into account.
Design Rationale
APIs to be consumed:
API_RESERVATION_DOCUMENT - (OData service) Retrieve Reservation Document
Retrieve Items with Header using RKPF-RSNUM (Reservation number) and RESB table for items
Example
GET <host>/sap/opu/odata4/sap/api_reservation_document/srvd_a2x/sap/apireservationdocument/0001/ReservationDocument('{{Reservation}}')/_ReservationDocumentItem
1) Every time a new event is raised from a Reservation document, it should be published for transmission if the following criteria is met:
2) If previous step is successful, an entry should be logged into the monitoring table to trace the correct transmission to the 3PL. This table is detailed in ERP-865 - 3PL Warehouse interface - Inbound acknowledgements - System Interface FS in Progress .
DOC_TYPE=RESERVATION
DOC_ID= RKPF-RSNUM
DATE_SENT = System date
TIME_SENT = System time
Delta or Full Load Requirements
Please describe change tracking requirements, i.e. transferring only delta, or always full load
Monitoring will be handled by ERP-865 - 3PL Warehouse interface - Inbound acknowledgements - System Interface FS in Progress and ERP-844 - 3PL Warehouse Interface - Monitoring dashboard FS in Progress
Specify multi language requirements
Capture the requirements for the user interface (UI) associated with the interface. It should provide a clear description of how users will interact with the interface and how information will be presented to ensure usability and accuracy.
Please describe delivery requirements driven by message sequencing, i.e. specific order, impact of disruption of sequence, are duplicates allowed, etc.
Provide volumetrics details: Initial load volumes, Number of Records, Expected Frequency, Expected Long term Growth)
Specify if there are any specific performance factors that need to be taken into consideration during development i.e. interface must be able to handle 100 posting per-hour, etc.
Error handling should be done at AIF level, if there is an error sending the data to the 3PL, the interface should be retriggered.
Please provide some guidance and/or test data to help the developer unit test the interface. Please include both positive and negative testing (to validate error situations handling)
The developer will need to test repeatedly, so where appropriate provide instructions to reverse the actions performed so the test may be run again, or explain how to create new input data to the test. In particular, the developer will need logons for test users representing the various roles within the approval process.
| ID | Condition | Expected Results |
|---|---|---|
List any considerations essential for application test planning (e.g., test this before ABC along with DEF separate from GHI). If the development encompasses a user interface, explain how to test it. List any insights as to how this component could be tested the most efficiently.
| Package Name | Parent Package |
|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|
Insert links and references to other documents which are relevant when trying to understand this decision and its implications. Other decisions are often impacted, so it's good to list them here with links. Attachments are also possible but dangerous as they are static documents and not updated by their authors.
