- Created by Joana Tavares, last modified by PONGTHAM, Piyaporn on Oct 08, 2025
Responsibility area: Ensure Costing Allocations
Table of contents
Scope
ERP
PF2
WP2
Frequency
![]()
References
- FS10N
- GR55
- KE30
- KE21N
- F.01
Forms
Attachments
Previous OP << I perform the FI/COPA reconciliation of net result >> Next OP
1. Objective and Scope
1.1. Objective of this Operation
The goal of this operation is to guarantee that, at the end of each month, the results in FI match with the ones in COPA.
1.2. Scope
This procedure is applied to all companies WW.
2. Definitions
3. Tasks description
3.1. I run the FI CO reconciliation report:
Go to transaction ZCO_FICO_RCON. Update Company code, fiscal year and posting period:
Click on
and check its execution on transaction SM37.
Once it is done, click on ![]()
It will show FI and CO Net Results, their difference, and the possible sources:

A detailed guide is in the link https://docs.google.com/presentation/d/1OxH84TKYZeXuh7KBikd_3XHkRDv-HtLL7ghPjShnJZU/edit#slide=id.p1.
How to eliminate the differences is indicated in 3.6 below.
If necessary, you may do the detailed analysis described in 3.2 to 3.5
3.2. I run the FI report "net result"
Go to transaction FS10N. Update the company code, the year, and check the result for all BS 98* accounts:


Go to transaction GR55, report Z4F1. Update the company code, the period, and check the result in heading L12000:

3.3. I run the CO-PA report "net result"
Go to transaction KE30, report ZZZ-SOLV00. Update the company code, the period, and check the result in the Net Result:

Go to transaction KE30, report ZZZ-SOLV00. Update the company code, the period, and check the result in the Net Result:

3.4. I compare both results
Both amounts must match. If it is not year closing, and the total difference is below 3K local currency, nothing must be done during closing ((Implemented in July /2022 under controller validation reduction - Everyday Close Project)), but must be left to adjust during the rest of the month (before next closing). Else, the actions below must be done during closing.
3.5. I analyse the reason of the discrepancy and take the corresponding corrective action
STEP 1
Display cost centers
Execute report group: Initial Screen
To check if cost centers are balanced, use a cost centers report with transaction GR55 :
Standard SAP reports that can be used in both systems:
- 1SHK (= S_ALR_87013615)
- 1SIP (= S_ALR_87013611)
- S_ALR_87013635
- ZSC1
In PF2 you can use the following reports inside GR55:
- ZFC2
- ZIAB
- ZSC1
STEP 2
Enter
- Controlling area
- Fiscal year
- Period
- Plan version (usually 0)
- Cost center group or value (to check all the CCtrs from a certain company in PF2 please choose "CC-xxxx" and in WP2 please choose "xxxx", being xxxx0company code)
- Cost element group (the standard group is ZRCS-FC) or or value, or leave blank
- Value type = 4 Actual
and Execute
Reports 1SHK, 1SIP and transaction S_ALR_87013635: Selection
Report ZFC2 and ZIAB: Selection
STEP 3
Check that Over/Under-absorption is equal to zero
- Must be balanced after KSU5, KSV5 or KEU5
- Must be balanced after KSUB (Budget Cycle)
Which cost centers must be balanced at the end of the month ?
- In PF2 :
- All organizational cost centers = group of cost centers E_cccc
- All reporting cost centers = group of cost centers cccc
- All cost centers = group of cost centers CC-cccc
- In WP2 : All cost centers excluding technical cost centers (group CCCC-NA & CCCC-UNL)
Column Delta in Report ZIAB
All lines in Column Delta need to be equal to zero.
Reports 1SHK and 1SIP

Report ZFC2 = ZIAB

STEP 1
To check if internal orders or PM orders are settled, use the report S_ALR_87013127
Look for a variant with

STEP 2
Double click on the variant you want or select it and click on

STEP 3
Check the period
and execute

If the list does not display any order, or if the total act. costs is zero, it means that all orders were settled.
STEP 1
To check if WBS orders are settled, use the report Z1K_SOLDE_WBS
Look for a variant with

STEP 2
Double click on the variant you want or select it and click on

STEP 3
Enter the period
and execute

When the report doesn’t display a value in the column ‘solde’ the WBS elements are completely settled in the selected period.
Example of a WBS element that is not balanced

Tasks to be completed when documenting an SAP Transaction, Report or Message code.
1. Title of the page = SAP Transaction code, SAP Report or SAP Message
2. Add the following Labels, respectively:
SAP Transaction => "sap_transaction", Transaction code "xxxx"
SAP Report => "sap_report"
SAP Message => "sap_msg"
3. On the left section, describe the steps. On the right section, insert respective print screens and additional guidelines, if needed (e.g. Main selections of the transaction...)
STEP 1
Use transaction code:
Z1K_RECONCILIATION - Reconciliation of Cost of Goods Sold: Initial Screen
Go to transaction Z1K_RECONCILIATION, and select the Default variant (t’s important to use this variant and not create different ones, because IS is constantly updating it with more details that might be useful):

After choosing the variant and adding the company code, it’s important to press “Enter” so that you have both periods with the same information:

STEP 2
After running the report you’ll have 3 columns:
Amount in FI
Amount in COPA
Tip: for bigger companies, it might be helpful to make a filter in column “difference” excluding the range -1 to 1:


How to analyze and correct COGS differences: click here.
All postings done directly in COPA should be avoided. If possible, all necessary corrections must be done in the original CO object.
Anyway, several times it's necessary to make these postings, and therefore we need to guarantee that the total impact in PL of those postings is 0 (or that they were posted to correct already some discrepancy coming from FI - example: from Z1K_Reconciliation).
Go to KE24 and search for manual postings (record type = Z):

All postings that we find should have a total amount 0:
- In the same value field - transfer of characteristic (profit center, product, customer, etc)
In different value fields - transfer of value field (example below)

Several times we are facing manual postings done without any CO Object. This generates differences FI/COPA, so we need to identify them and correct them.
In order to do it, go to transaction SQ00.
Select Environment- Query Areas, and then select the Standard Area.
Then select the User Group "FI_3S_CTB" and run Query "Z_FI_DOC", selecting the company and the period:

After executing you will have all items posted in the respective company without any CO Object (if any), and that most probably will be generating the FI/COPA differences.

1) Check on CHEF_DUMMY
- How to check:
- KE24 with variant SPS_001 -> just need to add the relevant company codes
- KE30 ZZZ-SOLV00 report -> check P&L lines with CHEF_DUMMY PrCtr
- Goal:
- CHEF_DUMMY PrCtr needs to have balance 0 in all value fields end of the month. Take into account that the original posting and corrections may be done with different posting dates.
- To reduce the number of future cases we should identify the reason for the CHEF_DUMMY PrCtr assignment. Most of the times it is due to missing PrCtr in the material master data (view General Plant Data / Storage 2 OR Costing1), so in this case it's necessary to address the topic to SU MAC (giving the material/plant/missing profit center) so that we can update the material master data.
2) Check on Activity1
- How to check:
- KE24 with variant SPS_002 -> just need to add the relevant company codes
- KE30 ZZZ-SOLV00 report -> check P&L lines with empty Activity1(mkt)
- Goal:
- All headings requiring Activity1 detail must have balance 0 at the end of the month. Take into account that the original posting and corrections may be done with different posting dates. These headings can be found here.
- To reduce the number of future cases you should identify the reason for which Activity1 was not determined. Most of the times it is due to:
- Posting in COPA together with a common CCtr because the posting involves a G/L account defined in the FI PA transfer structure (cost element group XCS-FIPA)
- You should decide either if you want to keep the CCtr or the COPA posting but not both and reclassify the posting.
- If CCtr -> another G/L account should be used
- If CO-PA -> remove the CCtr and include the basic CO-PA axes: material and plant -> PrCtr should be derived from the material
- Soon we'll set a substitution in the system to eliminate these cases.
- Common PrCtr (Cxxx) assigned to the material. Actions:
- Correct the material master data and PrCtr assignment (view General Plant Data / Storage 2 OR Costing1)
- Reclassify the posting:
- Manually KE21N (cancel original CO-PA doc + create manual document taking the original one as reference and update the PrCtr)
3) Check on D4X and E4X
Goal of these Value Fields:
- Used only in Purchases of Materials with Moving Average Price. If the material is managed at Standard Price, the price difference will be rolled-up with Material Ledger.
- Whenever an operation affects the purchase price of the material subsequently to its consumption, the price variance will be allocated proportionally to the existing stock and P&L (using these Values Fields).
Tasks to be completed when documenting an SAP Transaction, Report or Message code.
1. Title of the page = SAP Transaction code, SAP Report or SAP Message
2. Add the following Labels, respectively:
SAP Transaction => "sap_transaction", Transaction code "xxxx"
SAP Report => "sap_report"
SAP Message => "sap_msg"
3. On the left section, describe the steps. On the right section, insert respective print screens and additional guidelines, if needed (e.g. Main selections of the transaction...)
STEP 1
Use transaction code:
S_ALR_87013635 - Check balance of Cost Centers in 2 currencies: Initial Screen
- Enter the analysis parameters, with "0" for the Plan version.
- Enter the cost center group.
- Execute


STEP 2
Only statistical cost centers XXXX-9201 and XXXX-9200 can remain with values at period end. Other cost centers must be balanced.

All Orders in KOC4 must be balanced
STEP 1
Start the transaction using the menu path or transaction code

Order Selection: Initial screen
STEP 2
Set the Controlling Area

STEP 3
You can look for an existing variant by clicking on
Select the variant and
Enter the period

When there is not an existing variant you can make the following selection :
1. Enter the plant code
2. Enter the list of "order type" using the list below
| PI01 | Z002 | Z015 | Z050 | ZDNI |
| PI02 | Z003 | Z020 | Z060 | |
| PI04 | Z006 | Z030 | Z100 | |
| Z001 | ZDNI | Z040 | Z010 |
3. Enter the period

4. Enter the controlling area
5. Enter the company code

Enter the layout "/RCS-CLOT" to filter on non balanced orders

STEP 4
During the closing period, launch processing in background with RFCRCS server group (when the option is available)

STEP 5
- Enter an output device
- Validate the printing parameters
- and enter

STEP 6
Click on
to launch the processing immediately and save 

A message informs that the Job is active

STEP 7
Open the job overview

STEP 8
Execute with your user name

STEP 9
Once the job has the status finished, you can display the spool by selecting the job and clicking on

STEP 10
Select the spool and click on

STEP 11
This report display all unbalanced process order.

STEP 1
To check if WBS orders are settled, use the transaction CJI3 and choose database profile « ZRCS00000001 »

STEP 2
Insert « * » to select all projects
Click
and select the company code and controlling area for “Organization units definition” and “Organization units WBS element”:

STEP 3
Enter the period
and execute

STEP 4
The total of the column "Value in Obj. Crcy" must be equal to zero when wbs elements are settled

Tasks to be completed when documenting an SAP Transaction, Report or Message code.
1. Title of the page = SAP Transaction code, SAP Report or SAP Message
2. Add the following Labels, respectively:
SAP Transaction => "sap_transaction", Transaction code "xxxx"
SAP Report => "sap_report"
SAP Message => "sap_msg"
3. On the left section, describe the steps. On the right section, insert respective print screens and additional guidelines, if needed (e.g. Main selections of the transaction...)
STEP 1
Use transaction code:
ZWFA15P - Reconciliation of Cost of Goods Sold: Initial Screen
Go to transaction ZWFA15P, select the variant of the company code to be analyzed (for example for ZFR3, choose ZFR3_CLOSING) and Validate
and select the corresponding company.
Document Type:
- WA: Goods issue
- WL: Goods issue/delivery
Movement Code:
- 453 : TP returns to own
- 454 : TP own to returns
- 457 : TP Returns to own QI.
- 459 : TP Ret. to own blckd.
- 460 : TP Own blckd to ret.
TP: Transfer to company's own stock

STEP 2
The outcome of this report allow us to compare COGS amount in FI and in COPA and find out where do discrepancies come from :
- The material master record (if the material has a Standard Cost Estimate)
- The invoice whose number appears on this report
- The order

How to analyze and correct COGS differences: click here.
All postings done directly in COPA should be avoided. If possible, all necessary corrections must be done in the original CO object.
Anyway, several times it's necessary to make these postings, and therefore we need to guarantee that the total impact in PL of those postings is 0 (or that they were posted to correct already some discrepancy coming from FI - example: from ZWFA15P).
Go to KE24 and search for manual postings (record type = Z):

All postings that we find should have a total amount 0:
- In the same value field - transfer of characteristic (profit center, product, customer, etc)
In different value fields - transfer of value field (example below)

Several times we are facing manual postings done without any CO Object. This generates differences FI/COPA, so we need to identify them and correct them.
In order to do it, go to transaction SQ00.
Select Environment- Query Areas, and then select the Standard Area.
Then select the Costing Group and run Query "Z_FI_DOC", selecting the company and the period:

After executing you will have all items posted in the respective company without any CO Object (if any), and that most probably will be generating the FI/COPA differences.

3.6. I perform a direct CO-PA posting in PL (KE30), in case of impossibility to correct automatically the FI/COPA discrepancy
Important: Please note that the following amounts must be added to the result of the COPA report KE30 as they concern manual corrections:
- Manual Postings in account 98350050 with cost center XXXX-9200 (XXXX stands for company code);
- Manual Postings in COPA derivation accounts 98154199, 98258199 and 98254199;
- MR11 postings in account 98150363 (documents beginning with 48*).
Manual Corrections via FI (Standard Method)
Some accounts are created to be used in manual accounting in COPA. These accounts are assigned in the field status group “Z033 - Purchase & Change in stock acc. COPA” that is, the profit segment fields need to be filled/used: customer, product, distr. channel, payer, ship-to-party and payer country. These accounts are created in CO with cost element category 1 and are customized in the automatic transfer of structure in COPA for direct posting in FI:
Cost Element | Cost Element Name | COPA Structure | COPA Structure Name |
98100199 | NS COPA REGUL | VVB10 | Net Sales Corr. |
98120020 | VAR. SELLING EXPENSES FREIGHT COST ON SALES COPA | VVC20 | Freight (Prov) |
98120120 | VARIABLE SELLING EXPENSES -COMMISSIONS ASCE. CC | VVC10 | Sales Commission |
98120210 | VARIABLE SELLING EXP - INSURANCES ON SALES COPA | VVC20 | Freight (Prov) |
98150364 | VC - DIRECT TRADE WITH THIRD PARTIES COPA | VVD00 | VC Variable Cost |
98154199 | CP ADJUSTEMENTS - COPA | VVD45 | VB cc variances |
98254199 | CNP ADJUSTEMENTS - COPA | VVE45 | FC cc variances |
98258199 | CNP DEPRECIATION - COPA | VVF45 | Dep cc variances |
98279199 | CNP DIVERS ADJUSTEMENTS - COPA | VVE65 | FC others |
98333199 | FAC ADJUSTEMENTS - COPA | VVI25 | G&A adm expenses |
98361199 | R&D ADJUSTEMENTS - COPA | VVJ01 | R&D gross cost |
Posting Rules:
- Manual documents with document type AD
- Reversed on the following period if the flow is not complete
- Items of the document: enter the most elements (plant, material, sales order) as possible allowed by the account to have the most accurate allocation of these corrections when analyzed. Check file Possible_Variances.xlsx tab “Example COPA Info Search” to see an example on how to retrieve the COPA data to be used in the posting.
- Posting on “direct COPA” P&L accounts (more often cost valuation differences):If dedicated to a specific flow, report the elements of sales flow (material, plant, customer, sales domain) in the PA object; If more generic, some generic values (material, customer) may be used but the sales domain (sales organization, distribution channel, division) should be carefully chosen in order to allocate this cost to the right BU.
These generic values allow the corrections to be taken in account in Premier Pilotage.
Generally, division XH “non allocated”, 999930 for non EU customer or 999931 for EU customer, 77269 for generic material
Types of FI-COPA Adjustments:
Accounting stock corrections – Temporary Corrections Reversed in the following month. |
|---|
Deliveries not billed:
|
| Stock variation adjustment account: 98350050 “FINISHED PRODUCT STOCK VARIATION-COST OF SALES ADJ” + Cost center CCCC-9200 (statistical cost center for cost of goods sold) |
| Stock adjustment account: 37000109 “FINISHED PRODUCTS-ADJUSTMENT” |
| Debit / credit position depending on the correction |
Correction of COPA cost of sales – Permanent Corrections not Reversed in the following month. |
|---|
Posting using a FI document:
|
| Credit/Debit depends on the type of correction (COPA increase or decrease) |
| COPA segment parameters should be entered following those of the original flow |
Posting Example (IECRA Transfer):
The customer code has been set as mandatory to guarantee the consistency of the analyses made in Premier Pilotage (BOXI). To allow generic postings, the following was defined for the sake of consistency and to avoid discrepancies between RCS PPE and Magnitude:
- “Dummy” customer codes : 999930 ( outside EU) and 999931 ( within EU ).
- Generic “dummy material code” = 77269
- division XH (unallocated )
- Combined with an “unallocated” Distribution Channel which is linked to one IECRA (see the list in file RCS unallocated Distribution Channels.xlsx)
- corresponding commercial product 90032925



Important:
There are value fields in COPA that must not be used in cycles, because they are reserved for automatic accounts of logistical flows (see table on the right).
VVA01 | Qty invoice |
VVA02 | Qty as is |
VVA03 | Qty in % |
VVA04 | Qty unit base |
VVB00 | B00 Net Sales |
VVB20 | B20 Add Net Sales Internal |
VVB30 | B30 Sales Industrial Invoice |
VVB41 | B41 Sales Adm&Com SD |
VVB50 | B50 Sales R&D Invoice |
VVB55 | B55 Sales Management Fees |
VVC00 | C00 Rebates |
VVC05 | C05 Cash Discount Customer SD |
VVC30 | C30 Foreign Import |
VVD00 | D00 VC Variable Cost |
VVD01 | D01 Variable Cost 1 |
VVC40 | C40 Tax/Sale SD Cond |
VVD05 | D05 VC Process Order Variance |
VVD47 | D47 CP Ec/T030 |
VVD52 | D52 CP Rev. CCR T030 |
VVD55 | D55 VC Free 1 |
VVD90 | D90 CP Integrated |
VVE00 | E00 FC Fixed Costs |
VVE01 | E01 FC Fixed Costs 1 |
VVE05 | E05 FC Process Order Variance |
VVE47 | E47 CNP Ec/T030 |
VVD52 | D52 CNP Rev. CCR T030 |
VVD90 | D90 CNP Integrated |
VVF00 | F00 DEP Depreciation |
VVF05 | F05 DEP Process Order Variance |
VVF90 | F90 AMO Integrated |
VVG25 | G25 Bon&m/stock T030 |
Tasks to be completed when documenting an SAP Transaction, Report or Message code.
1. Title of the page = SAP Transaction code, SAP Report or SAP Message
2. Add the following Labels, respectively:
SAP Transaction => "sap_transaction", Transaction code "xxxx"
SAP Report => "sap_report"
SAP Message => "sap_msg"
3. On the left section, describe the steps. On the right section, insert respective print screens and additional guidelines, if needed (e.g. Main selections of the transaction...)
STEP 1
Use transaction code:
KE21N - Manual Posting in COPA: Initial Screen
By rule, we should not post a document directly in COPA without making an analysis first, because posting only in COPA will cause FI/COPA differences. Everytime it's really necessary to post in COPA, and it's not coming from a reclassification (topic mentioned above), we need also to make sure to fill all necessary information in the 1st tab, namely the PC, material and plant.
In case you know the specific document to correct, go to KE24 and find the respective document:

Each line is 1 document. In order to see the amounts it's necessary to add the necessary value fields (by column):

You can select layout "ALLVLFIELDS" which includes already all value fields and relevant information, but note that if you do it the transaction will take some time to run, as it will display lots of columns. On the other hand, if you already know which are the value fields or additional details that you are searching for, it's better not to use this layout, and manually add the necessary columns.
STEP 2
Go to KE21N and set Record Type Z and your document as reference (if available; if not, please fill the much details as possible):

Change what you want to change in the first 2 tabs:
![]()
Go to the 3rd tab and fill the CE and Order/WBS/etc (which you can also find in the original document, but it's not filled automatically when you use the reference doc) - Very Important to have the correct data in BW:
![]()
3.7. I properly check the result of the posting
After correcting all differences, re-check the results in FI and in COPA to guarantee that the postings were correctly made, and that the difference doesn't exist anymore.
Also it's necessary to remark that, after the closure, all differences not corrected properly must be analyzed and corrected in the origin:
- New materials should be costed before being used (delivery, production, billing)
- New orders or WBS elements should have a settlement rule
- New cost centers should be included in the assessment cycles
- Blocked invoices in VFX3 should be processed everyday
- Avoid returns with stock movements in different periods of the corresponding credit memos.
For WP2 it might be useful to use the file below to see in detail the existing differences: