Status

OwnerTATARU-ext, Eugenia 
Stakeholders
Jira Request ID

Jira Development ID

High- Level Specification

ParameterValue
Application System (Source)Descartes FTP Website
Application System ( Target)SAP GTS E4H
Business Process Reference12.02.01.01. Manage Classification Codes

Functional Overview

The functional design of the Integration Process defines both inbound and outbound interfaces. An integration defines a specific physical interaction that will need to occur between the system and an external application in response to some business event. 


Syensqo uses Descartes (3rd party system) which is the market-leading global trade content for GTS that provides the most current regulatory data for Customs Classification Codes (HTS). New classification codes are always provided by Descartes on a regular basis via XML files.

The purpose of this integration specification is to automatize the process by, extracting the list of HTS (commodity & tariff codes) customs classification codes published by the Government from Descartes's website and upload it to GTS. The update should occur when a file is provided by Descartes. Updates can be received on a daily basis, hence the set up of the program will be marked as daily to do the file movement. The files will be taken from the directory path within Descartes website in a zip format. The files are supposed to the stored after successful upload to GTS system - audit purposes.

In terms of errors that can occur via the automatic interface, IT GTS users will get a notification within Fiori Launchpad in order to troubleshoot the problem (manual intervention).

Scope and Objectives

While GTS is the leading system for classification codes and product assignment, this step is the prerequisite before classifying any product and before any export can happen in the system. 

The emails that Descartes is sending to GTS IT team with the new classification codes will be replaced by this new automatization which follows one straight objective: to reduce the workload of man/hour which involves emails, dependency on an user action/availability or knowledge transfer within the team.

With the 3 different instances of GTS system for US, China and Rest of World, the HTS file must be available in all systems for the product-classification codes to happen.

Detail the functional scope and objectives of the Interface. Please also describe the gap that will be addressed by this interface (Compared to SAP Standard)

Process Flow Diagram

Insert the flowchart and fill in the steps

Step

Description

Comment

1

HTS XML codes published by Descartes

export & import processing

2

File interface program to fetch the HTS XML file and place it in the application server


3

Upload to GTS system using the standard transaction /n/SAPSLL/LLNS_UPL102


4

Notification is send to the GTS IT users if successful/failed


5

If upload fails, log the details of the upload and GTS IT users to troubleshoot the error


6

After a successful upload , the program will then archive the file from the directory.


Assumptions

  1. SAP Cloud Platform Integration connectivity is available.
  2. SAP GTS E4H system is available at the time of extraction.

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.)

Dependencies

Descartes must published first the XML content for HTS codes.

Indicate any dependencies or constraints that may impact development, in terms of requirements from internal or external applications or teams, limited access to legacy systems, time constraints or data restrictions. Also, please specify schedule dependencies e.g. interface or batch jobs that must run prior to execution.

Security, Integrity and Controls

  • Connection to Descartes to retrieve files will use SAP Integration Suite Middleware CPI (download zip, unzip, upload).

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.

Configuration Requirements

N/A

Specify the configuration requirements for this object. Like in case of substitution/ routine specify the configuration needed

Special Requirements

Overwriting should be possible. Whenever there is an emergency and cannot wait for the interface program to run, the GTS IT user can login to the FTP server, download the XML file and then upload the file to GTS manually.. However, at the next run of the program this should overwrite the entries stated by the GTS IT user.

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

Existing process is a manual upload of ECCN EARUS XML files on a regularly basis into GTS and it needs to be replaced by this automated solution:

  • The CPI middleware will handle the file from FTP and push it to GTS (S/4 instance).
  • Path to the XML files within Descartes website: [DIR] Files (your files available for download) → [DIR] E4H → Parent directory: Take all the .zip available/found under all subfolders inside E4H, exception makes folder Dual Use and LDR (do not mark this one).

(note: any future country that might show up on E4H directory which is not listed below should be picked up too; if the case, and same applies for the .zip files inside the subfolders).

Parent Directory (Country).Zip format (*I = for initial, U= for updates)
United States/

E4H_HSUSXX_IMP_EN_vXXXXX_I*

E4H_HSUSXX_EXP_EN_vXXXXX_U*

United Kingdom/

E4H_HSGBXX_IMP_EN_vXXXXX_I*

E4H_HSGBXX_IMP_EN_vXXXXX_U*

United Arab Emirates/

E4H_HSAEXX_IMP_EN_vXXXXX_I*

E4H_HSAEXX_IMP_EN_vXXXXX_U*

Thailand/

E4H_HSTSXX_IMP_EN_vXXXXX_I*

E4H_HSTSXX_IMP_EN_vXXXXX_U*

Taiwan/

E4H_HSTWXX_IMP_EN_vXXXXX_I*

E4H_HSTWXX_IMP_EN_vXXXXX_U*

Switzerland

E4H_HSCHXXXX_IMP_EN_vXXXXX_I*

E4H_HSCHXXXX_IMP_EN_vXXXXX_U*

South Africa/

E4H_HSZAXX_IMP_EN_vXXXXX_I*

E4H_HSZAXX_IMP_EN_vXXXXX_U*

Singapore/

E4H_HSSSXX_IMP_EN_vXXXXX_I*

E4H_HSSSXX_IMP_EN_vXXXXX_U*

Saudi Arabia/

E4H_HSSAXX_IMP_EN_vXXXXX_I*

E4H_HSSAXX_IMP_EN_vXXXXX_U*

Peru/

E4H_HSPEXX_IMP_EN_vXXXXX_I*

New Zealand/

E4H_HSNZXX_IMP_EN_vXXXXX_I*

E4H_HSNZXX_IMP_EN_vXXXXX_U*

Morocco/

E4H_HSMAXX_IMP_EN_vXXXXX_I*

E4H_HSMAXX_IMP_EN_vXXXXX_U*

Mexico/

E4H_HSMXXX_IMP_EN_vXXXXX_I*

E4H_HSMXXX_IMP_EN_vXXXXX_U*

Korea/

E4H_HSKRXX_IMP_EN_vXXXXX_I*

E4H_HSKRXX_IMP_EN_vXXXXX_U*

E4H_HSKRXX_IMP_KO_vXXXXX_I*

E4H_HSKRXX_IMP_KO_vXXXXX_U*

Kazakhstan/

E4H_HSKZXX_IMP_EN_vXXXXX_I*

E4H_HSKZXX_IMP_EN_vXXXXX_U*

Japan/

E4H_HSJPXX_IMP_EN_vXXXXX_I*

E4H_HSJPXX_IMP_EN_vXXXXX_U*

Indonesia/

E4H_HSIDXX_IMP_EN_vXXXXX_I*

E4H_HSIDXX_IMP_EN_vXXXXX_U*

India/

E4H_HSINXX_IMP_EN_vXXXXX_I*

E4H_HSINXX_IMP_EN_vXXXXX_U*

Hong Kong/

E4H_HSHKXX_IMP_EN_vXXXXX_I*

E4H_HSHKXX_IMP_EN_vXXXXX_U*

European Union/

E4H_HSEUXX_IMP_EN_vXXXXX_I*

E4H_HSEUXX_IMP_EN_vXXXXX_U*

Egypt/E4H_HSEGXX_IMP_EN_vXXXXX_I*
China/

E4H_HSCNXX_IMP_EN_vXXXXX_I*

E4H_HSCNXX_IMP_EN_vXXXXX_U*

Chile/

E4H_HSCLXX_IMP_EN_vXXXXX_I*

E4H_HSCLXX_IMP_EN_vXXXXX_U*

Canada/

E4H_HSCAXX_IMP_EN_vXXXXX_I*

E4H_HSCAXX_IMP_EN_vXXXXX_U*

Brazil/

E4H_HSBRXX_IMP_EN_vXXXXX_I*

E4H_HSBRXX_IMP_EN_vXXXXX_U*

Australia/

E4H_HSAUXX_IMP_EN_vXXXXX_I*

E4H_HSAUXX_IMP_EN_vXXXXX_U*

Argentina/

E4H_HSARXX_IMP_EN_vXXXXX_I*

E4H_HSARXX_IMP_EN_vXXXXX_U*

  • The parent directory contains all XMLs stored in format .zip. 
  • The program should download the .zip folders, unzip it and upload the XML one by one or multiple files at once in GTS.
  • If error appears during integration process, a notification should be send to the GTS IT users stored under the custom table (see Interface Alert & Monitoring chapter) via Fiori Launchpad standard process.
  • Once files are successfully uploaded, these should be archived inside GTS system.

This template section may be used to specify an integration flow design between two systems.

Data Structure

N/A

Source Structure

The following fields will be used to provide the required information for this interface:

FieldDescription





Target Structure

The following fields will be used to provide the required information for this interface:

FieldDescription




Mapping and Calculation

N/A

Populate the table below to list the target / source data field mapping between the Source system and Target system

Source TableAPI or Portlet NameSource FieldRequired (Y/N)DescriptionTarget FieldAPI or Portlet NameTarget FieldRequired (Y/N)DescriptionRule TypeRule Instruction




































Processing Logic

Processing within Source

Develop a custom interface which will retrieve on a weekly basis the FTP XML EARUS content from Descartes (Source).

The time of the daily setup to be confirmed later.

Describe the processing requirement from Source System


Processing within Middleware

Describe the processing requirement within Middleware Layer


Processing within Target

The files fetched from the data provider will be uploaded to GTS system with standard transaction /n/SAPSLL/LLNS_UPL102.

Describe the processing requirement from Target System

Interface Dependency

N/A

Please describe any dependency to other interfaces, e.g. messages of interface x need to be processed before message processing of interface y can start.

Interface Constraints

N/A

Please describe any limitations on source and targets. i.e. target system can only accept maximum 100mb files, first-in-first-out, etc.

Delivery Requirements

This interface should work like a batch program which runs on the same time every week (TBD the time of the daily run).

Please describe delivery requirements driven by business. i.e. real time, batch, scheduled, synchronous, triggering requirement, push or pull, etc.

Delta or Full Load Requirements

First upload will be considered the initial upload for HTS XML classification codes → full upload.

After that, the rest are considered delta, whenever new codes shows up or changes.

Please describe change tracking requirements, i.e. transferring only delta, or always full load

Interface Alert & Monitoring

A notification via Fiori Launchpad (standard) is send to the GTS IT user if any error occurs during file upload in GTS, but also if upload was successfully executed.

Users listed under DL sco-digops-gts@syensqo.com will be added to a custom maintenance table (SM30):


Data ElementData TypeLength
ClientMANDTCLNT3
User IDSYUNAMECHAR12

Please describe any alert & monitoring requirement for business users and support organization

Interface Reporting

N/A

Please describe any reporting requirement that is expected to be provided in support of this interface

Language Requirements

English

Specify multi language requirements

User Interface Requirements

N/A

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.


Volumetrics

Provide volumetrics details: Initial load volumes, Number of Records, Expected Frequency, Expected Long term Growth)



Performance Consideration

For the XML size, reach out to the owner of the FS to get the details to login to Descartes website and to do the technical check.

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

When a file has errors during upload the file is not archived from the directory. A notification is sent to the GTS IT user to check the error. Worst case, the user must upload manually the XML and do correction manually in GTS.

If no file found the customs program will stop with an error ending the program.

Log requirements (Is there a log that shows the job has run?):

  1. Extract - Not able to access folder → notification via Fiori Launchapd to the GTS IT users
  2. Upload- File error when moving file from FTP site to Application server →  notification via Fiori Launchapd to the GTS IT users
  3. No file available at the time when the custom program is scheduled to run →  End program.

Detail how errors will be handled: Notification, Restart/ Recovery and Re-Processing Procedures



Testing

How to Test

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.

Test Conditions and Expected Results

IDConditionExpected Results
1Sample file from Descartes test folder to be uploadedFile should be fetched and uploaded to GTS system

Test Considerations/Dependencies

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.



Other Information


Development Details

Package

Package NameParent Package




Other Development Objects

Object TypeObject NamePurpose/High Level LogicDesign Rationale Reference









Appendix


See also

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.


Change log