Status

  Approved

Owner
Stakeholders
Jira Request ID

ERP-60 - Getting issue details... STATUS

Jira Development ID

ERP-1015 - Getting issue details... STATUS

High- Level Specification

ParameterValue
Application SystemGTS 
Business Process Reference12.02.01.02. Classify Products via Product/Worklist

Functional Overview

The enhancement is required in GTS system as part of the Customs & Compliance Classification products where for any new replicated packaged material from S/4 to GTS, these should inherit the same classification from its "template" product, or known as unpackaged product as per the New Product Introduction process. Once the products master data are replicated from S/4HANA to GTS and the classification codes are created/maintained, the next step is to start classifying those products. There will be a manual classification performed by the user (role: GTS Trade Classification Master Data Maintainer) for the Customs unpackaged products using standard Fiori App will be used 'Classify Products  - Customs Tariff Numbers' and 'Classify Products - Commodity Codes' and for Compliance unpackaged products, another user (role: ECCN classified) will manually classify using a custom Fiori UI5 (as part of ERP-1857).

Once the manual classification is performed for the unpackaged products, as part of this development the requirement is to create a background program that at the time of transfer of finish goods products (known as packaged products) from S/4 to GTS to auto-classify them in GTS using as reference the classification from its corresponding unpackaged. 

Scope and Objectives

The scope of this integration process is to automatize and simplify the existing autoclassification process in GTS when comes to product customs classification.

New products are classified by applying the HTS codes, which are used by customs authorities around the world to identify the duty and rate taxes for specific types of products, as well as to know which products need license to be exported.

The benefits of this enhancement are:

  1. Improving the accuracy of the classification

  2. Decreasing the team’s workload and increasing the operational efficiency

  3. Avoiding repetitive work and standardizing the process to avoid various interpretations.

  4. Allowing traceability of the classification performed, namely by identifying the template product.


Process Flow Diagram

Entire Signavio Classify Products via Product/Worklist process:

This flow captures the auto-classification for customs products along with error handling part (both of them being part of this enhancement). The manual classification if the program fails is part of the role 'GTS Trade Classification Master Data Maintainer'.

This part captures the same auto-classification program for compliance products (part of this enhancement). The manual classification is handled by a different role than the one above, which is 'ECCN classifier'.


Step

Description

Comment

1.Perform transfer of Master Data to GTSAll unpackaged and packaged products are being replicated from S/4 to GTS.
2.Perform Autoclassification for the packaged productsEnhancement related
3.Maintain Product Classification On both Customs and Compliance if the background program fails, the users as per the mentioned roles (GTS Trade Classification Master Data Maintainer/ECCN classifier) will do it manually.


Assumptions

  1. Master Data System (non SAP)-S/4HANA communication set up accordingly. Master data System being the leading system for handling products (creation/changes/maintenance). Without products in GTS at first place, this enhancement cannot run. 
  2. S/4HANA-GTS communication set up accordingly. Once Master data system sends the master data details to S/4HANA, GTS is being fed by S/4HANA.

Interface settings are essential to have in place and work accordingly.

Dependencies

New Product Introduction process must work properly and create the unpacked and packaged products before being replicate to down systems (S/4HANA - GTS).

Security, Integrity and Controls

This enhancement will be executed in the background during the interface processing from S/4HANA to GTS client as part of the product master synchronization.

Manual classification would be performed by the GTS Trade Classification Master Data Maintainer as part of process Maintain Product Classification outside this build requirement. 

To detail the security requirements for processing this enhancement, 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 enhancements, etc.


Configuration Requirements

System and Integration:

  • Logical system groups: For materials to transfer from feeder system to GTS, S/4 must be assigned to logical system groups within GTS.
  • Feeder system data: The feeder system must be properly configured to send the necessary data, such as product descriptions, units of measure, and weights, which will be copied into GTS.
  • Master data integrity: Ensure the master data in both the feeder system and GTS is accurate and up-to-date, including material master data, customer master data, and country master data.
  • Communication interfaces: Established communication interfaces, such as RFC connections, are necessary for data to flow between systems. 


Classification:

  • Classification catalogs: Maintain and update your classification in GTS, which include the relevant import/export control classification numbers for different countries.
  • Numbering schemes: Define the numbering schemes for commodity codes or customs tariff numbers within the system.


 Custom attributes:

1) Define Product Characteristics from the feeder system →  define the attribute technical name.

2) Assign Field attributes to the product characteristics from the feeder system → assign field length to the attributes defined at step 1.

3) Define Attributes of Product Characteristics with Length 01 → define possible values for the attribute.


Below is the list of relevant tables for this functionality:

  • /SAPSLL/PRGEN - Product attributes in GTS
  • /SAPSLL/TCOATR - Definition of characteristics from feeder system
  • /SAPSLL/TCOATC - Generic settings for general attributes maintenance
  • /SAPSLL/TCOATA - Control of general attribute maintenance - assignment of attributes

Language Requirements

N/A

Special Requirements

N/A


Design Rationale

Functional Requirements

  • Master data system will be the source system to create products; all will then be replicated to the down streams such as S/4 and S/4 to GTS. 
  • GTS will be the source system to classify all products.

During the interface synchronization transfer of products from S/4 to GTS following will take place:

    • Unpackaged products-> At this stage the classification is being performed manually performed by the users on both Customs and Compliance stages. For Customs User (role: GTS Trade Classification Master Data Maintainer) will classify them using standard Fiori App 'Classify Products  - Customs Tariff Numbers' and 'Classify Products - Commodity Codes' while for Compliance User (role: ECCN classified) will manually classify using a custom Fiori UI5 (as part of ERP-1857). Once this stage is done, the background program will pick the classification code and assign it to the packaged products. There will always be a 1:N relationship between unpackaged and packaged. Also, to be noted, the user has no need to perform the classification for the packaged products unless only the background program (for the packaged products) fails and manual intervention is required by using the mentioned Fiori app earlier. This stage of manual classification of unpackaged products is a prerequisite for the enhancement to work on the next step.

    • Packaged products (replacing the existing RPA BOT with this new enhancement) -> will be linked to the unpackaged products (basic material) and within an automatized enhancement at the time of packaged products arrival in GTS, it will search for the template product (unpacked product) in order to copy the classification from. This includes an approach at any GBU level and must run in background mode.

For existing products, there will be an "Assess Materials stage" conducted by Global Trade Team that by every time a new tariff schedule gets changed will evaluate if any classified product gets impacted by this change and update the classification accordingly for the unpackaged product. Once the unpacked product is manually updated, the autoclassification custom program will run to perform the classification for the linked packaged of the unpacked product.

Proposed Technology to Use

SE37→ FM → EXIT_SAPLSLL_LEG_PRR3_004 : Customer Exit can be used. The user exit should follow standard authorization.

Import → Parameter Name: IS_MATERIAL_TABLES →Associated type: SLLR3_MATERIAL_OBJ_S (this FM will be validated considering the overall solution captured under "processing logic - agreed with Dhiraj J. Dec 2025).

See Processing GTS Logic section for more details.

Data Source Considerations

N/A

TableField NameComments/Calculation/Field Manipulation











Data Validation Considerations

N/A

TableField NameComments/Calculation/Field Manipulation













Custom Tables

N/A

Master Data

N/A

FieldDescriptionData Type/LengthValidation rule/ Value Help









Configuration Table

N/A

FieldDescriptionData Type/LengthValidation rule/ Value Help








Selection Screen Enhancement

N/A

Field NameDescription

Select:

Data Type/LengthDefault Value/ Validation rule/ Value HelpSelection Logic













Processing Logic

The trigger of this logic will be whenever a new packaged product will be replicated from S/4 to GTS. Standard interface.

As per the New Process Introduction (NPI) procedure, the S/4 material types relevant for these products will be knows as:

  • Unpackaged product type = ZBAS → will have to be mapped as custom attribute under additional characteristics master data in GTS as ATTR*- technically the FM specified+ configuration in GTS will enhance it.
  • Packaged product type = ZDIR → will have to be mapped as custom attribute under additional characteristics master data in GTS as ATTR*- technically the FM specified + configuration in GTS will enhance it

All the (re)packaged products will have to be classified automatically in reference to its unpackaged products at the time of the product transfer to GTS.


Overview process (S/4-GTS)

  • Basic material will be the link between unpacked and packaged product in S/4 (MARA-WRKST- reference field where the unpackaged material number will be stored for a packaged material). This link is going to refer once both products are being transferred to GTS via customer exit as attribute (TBC by tech team). 
  • First, the unpacked product is going to be replicated to GTS - at this stage the trade classification export is going to perform a manual classification in GTS.
  • Then, the packed product is going to be replicated to GTS too - at this stage at the time of transfer a tech approach is going to use the input parameter (WRKST) in order to check the basic material link between the unpacked and packed products but also to refer to the GTS classification table in order to copy the classification from the template (unpacked) product and replicate it automatically to the packaged product.


GTS logic:

    • /SAPSLL/PNTPR → This table can be used to find the GTS product number from an ECC material number.
    • /SAPSLL/PRGEN → This table can be use to identify the material type if unpackaged (ZBAR) or packaged (ZDIR).
    • /SAPSLL/PRCLS → This table stores the product classification codes, linking products to their classifications.
    • /SAPSLL/CTSNR → This table contains the numbering scheme information, such as the Harmonized System (HS) codes

Logic 1 (find the unpackaged already classified products)

    • From /SAPSLL/PNTPR filter by the PRVSY field not equal blank; then take the GUID_PR of the PRVSY entry and pass it to GUID_PR of /SAPSLL/PRGEN. Filter by the ATTR05A* (custom attribute) = ZBAR (unpackaged). With the results, pass the GUID_PR to /SAPSLL/PRCLS. Take the GUID_CTSNR from the execution and pass it to the /SAPSLL/CTSNR table and extract the CCNGN field (classification code) for all the existing STCTS (numbering scheme), and then pass the classification codes to the packaged product (ZDIR) - see Logic 2. If CCNGN is missing all, then stop. The packaged product won't get classified and manual intervention is required by the user in GTS (as captured in the Process Flow diagram section).

Logic 2 (assign the classification from unpackaged to packaged products)

With the list of products identified as classified from logic 1, check now the assignment of unpackaged to the packaged to correctly put the classification codes to the packaged ones. Within Master data of GTS products, the S/4 MARA-WRKST should get as an attribute the reference number into GTS (example given above ATTR05A custom attribute). However, the condition in order to link the products in GTS, should be met as follows:

    • Whenever unpackaged product in GTS is classified (logic1) and whenever MARA-WRKST has value (meaning the packaged product has an unpackaged product linked to it) in GTS assign the identified classification code if WRKST has an entry in MARA (S4).


ATTR05A* = tbc if under this attribute or another (depending to the list of attributes existing at the time of this enhancement in GTS master data).



Volumetrics

Roughly estimation:

  • Initial volume:  70k- 80k with the expectation that the auto-classification won't be running in a bulk.
  • Expected frequency: daily with less number of records compared with initial volume.


Performance Considerations

Since the custom program is executed during interface between S/4 and GTS there is no significant performance consideration.



Error Handling

 If the program cannot copy the classification from the unpackaged product to the product because for e.g at the time when the program runs the unpackaged was not classified by the user, then the program won't be finding the classification details and will stop. Eventually the user in GTS will have to classify manually for the packaged product for exceptional cases by using Classification Fiori tiles (it can check by the numbering scheme and legal regulation or even date, what is the list of materials unclassified). A notification must be send to the user in such cases.

Since the program covers the classification for both compliance and customs that can be shared by the same material(s), the following rule will distinguish whether to go to GTS Customs stream or GTS Compliance for notifying with the unclassified products.

  • Unclassified products = CCNGN blank in /SAPSLL/PRCLS (table explained in the processing logic) - extract the products unclassified (GUID_PR) along with its numbering scheme (STCTS) from /SAPSLL/PRCLS.
  • Pass the STCTS of the unclassified products in order to retrieve the numbering scheme type (CTSTY) into /SAPSLL/TCONS; where for Compliance = 002 , for Customs is the rest = e.g 101, 102, etc.
    • If it lies under type 002, check further the GBU linked to the impacted product(s) (from list of GUID_PR unclassified with numbering scheme type 002, pass the GUID_PR to /SAPSLL/PRGEN where the GBU will be stored per product).



Testing

How to Test

Test Conditions and Expected Results

IDConditionExpected Result
1Unpackaged Product gets replicated to GTS (MDS-S4-GTS - interface step)Exists in the Fiori App "Manage Products" and can be identify by the internal number.
2Packaged Product gets replicated to GTS (MDS-S4-GTS - interface step)Exists in the Fiori App "Manage Products" and can be identify by the internal number.
3Unpackaged Product gets manually classified in GTS (manual intervention)

Classify Product Fiori App can cover the product-classification assignment

4Packaged Product gets automatically classified in GTS by the background custom program (enhancement applies)

The custom program will copy the classification from the unpackaged ZBAR to the packaged ZDIR material.

5Packaged Product does not gets automatically classified in GTS by the custom background program (no WKRST condition found)

Classify Product Fiori App can cover the product-classification assignment in a manual step executed by the user (covered in the Process Flow diagram)

6Resale Product gets automatically classified in GTS by the background custom program (enhancement applies)

The custom program will copy the classification from the unpackaged ZBAR to the packaged ZDIR material.

7Resale Product does not gets automatically classified in GTS by the custom background program (no WKRST condition found)

Classify Product Fiori App can cover the product-classification assignment in a manual step executed by the user (covered in the Process Flow diagram)

8Rebrand Product gets automatically classified in GTS by the background custom program (enhancement applies)

The custom program will copy the classification from the unpackaged ZBAR to the packaged ZDIR material.

9Rebrand Product does not gets automatically classified in GTS by the custom background program (no WKRST condition found)

Classify Product Fiori App can cover the product-classification assignment in a manual step executed by the user (covered in the Process Flow diagram)


Test Considerations/Dependencies



Other Information


Development Details

Package

Package NameParent Package




Enhancement Implementation

Enhancement TypeStandard Definition NameCustom Implementation NameDesign Rationale Reference









Other Development Objects

Object TypeObject NamePurpose/High Level LogicDesign Rationale Reference








Appendix

Custom Authorization Group Naming Convention

This table is based on the Syensqo development standards document. It provides the naming conventions for authorization groups to associated with custom reports and tables to comply with security requirements.

ABAP

ZFIZMMZPSZCOZSDZBCZFIZCA
TABLESZFITZMMTZPSTZCOTZSDTZBCTZFITZCAT

See also


No files shared here yet.

Change log

Version Published Changed By Comment
CURRENT (v. 26) Apr 30, 2026 13:34 TATARU-ext, Eugenia Custom table required for the notification error handling, and processing logic adapted considering additional attributes implementation and migration of data from S/4 to GTS. The key remains same, just data changed.
v. 27 Apr 30, 2026 13:32 TATARU-ext, Eugenia
v. 26 Mar 19, 2026 08:29 TATARU-ext, Eugenia
v. 25 Mar 18, 2026 16:59 TATARU-ext, Eugenia Error Handling - including the part for compliance classification too. And readding latest updates on the L4 by picturing once more the screenshots.
v. 24 Feb 16, 2026 17:48 NARAHARI-ext, Bhargavi
v. 23 Feb 11, 2026 17:02 TATARU-ext, Eugenia
v. 22 Feb 11, 2026 17:00 TATARU-ext, Eugenia
v. 21 Feb 09, 2026 15:47 TATARU-ext, Eugenia
v. 20 Feb 06, 2026 07:32 TORRES-ext, Benedict
v. 19 Feb 06, 2026 07:26 TORRES-ext, Benedict

Go to Page History

1 Comment

  1. Security review has been carried out, approved.