Table of Contents
Enterprise Structure
Localize Global company code 0001 setting
Tcode : O035
SAP supplied sample company code is 0001. This is country independent. So if the implementation is for USA this is localize for country US installation. This is than copied to the new organization units. This will copy below settings for country installation:
- Chart of accounts
- Account determination
- Tax procedures
- Payment Methods
Path : SPRO – Enterprise Structure • Localize Sample Organizational Units
Transaction code: O035
This will make settings of company code 0001 as US in this case
Define Group Company
Tcode : OX15
Company: A Company represents a group company. The definition of company is optional.
SAP supplied standard company is G00000
A company can have one or more company codes beneath it. Independent Financial Statements can be prepared for these company codes.
All company codes with the same Company must use the same operative Chart of Accounts and Fiscal Year variant
Key Fields
- Country: Specify the country where the company is operating
- Currency : This is local currency of the company. All transactions for the Company are recorded in this currency only
SPRO Path : Enterprise Structure – Definition – Financial Accounting -Define Company
Transaction code : OX15
Table: T880
Data:
Company | Name | Country | Currency |
MK1000 | MK Group of Companies | USA | USD |
Define Company code
Organization unit or Legal entity for which independent financial statements can be prepared
Company code can be created from scratch or from copying an existing company code
Company code 0001 is already defined in clients 000 and 001 for the country DE (Germany).
All country-specific information (parameters) that is typical for this country (including payment methods, tax calculation procedures, and chart of accounts) is preset for this company code.
If, for example, you want to create a company code for the United States to meet its legal requirements, you must first run the country installation program (Transaction code :O035) in client 001 so that all the country-specific parameters are set to US
Table for Company code data: T001
Transaction Code : OX02
SPRO Path : SPRO – Enterprise Structure – Definition – Financial Accounting – Edit
Company Code Data
Create company code from scratch
Transaction code: OX02
Data
Co. Code | Country | Currency |
MK14 | USA | USD |
Currency: Local currency of the company code
Create company code by Copying Company code from an Existing company code
Transaction code: EC01
Use this option when the SAP standard company code 0001 has been localized. Copy from company code 0001
Create company code MK11 by copying from company code 0001
Assign Company code to Group Company
SPRO Path : SPRO – Enterprise Structure – Assignment – Financial Accounting – Assign Company Code To Company
Transaction code: OX16
Data: MK14 to MK1000
Define Credit Control Area
- Credit Control Area: A method of controlling credit provided to customers
- Credit control area is created below client
- One Credit control area can have one or more company codes assigned to it
- One Company code can be assigned to only one Credit Control Area
- Credit limits are assigned both in Customer Master and Credit Control Area. At the time of credit check lower of the two is considered
- Credit Update Group: Can leave blank. Only AR balance consider while calculating Credit limit for a customer.
- All Company code: If selected posting from any company code can be made to this Credit Control Area
Transaction code: OB45
Path: SPRO – Enterprise Structure – Definition – Financial Accounting – Define Credit Control Area
Data
Credit Control Area | Co. Codes | Limit | Currency |
MK14 | MK14 | 50000 | USD |
Assign Company code to Credit Control area
Transaction code: OB38
Path: Enterprise Structure – Assignment – Financial Accounting – Assign Company Code To Credit Control Area
Define Segments
- Segment is another account assignment object
- A Segment can be a Product, Department or a Geographical location. Segment Reporting requires reporting Profit and Loss as per segments. According to IAS, a business segment is a component of an entity that provides a single product or service or a group of related products and services and that is subject to risks and returns that are different from those of other business segments
- Segment reporting is required as per GAAP, IFRS, IAS
- Can create BS and P/L account for each segment
- Steps:
- Define segment.
- Derive segment by assigning to Profit center in the master data. Alternatively use BADI FAL_DERIVE_SEGMENT to derive segment.
- Enable Segment field in Additional Account assignment
- Define Segment scenarios in New GL
SPRO Path : SPRO- Enterprise Structure – Definition – Financial Accounting – Define Segment.
Segments | Description |
Seg A | Television Systems |
Seg B | Refrigerators Systems |
Define Functional area
Functional areas in an organization are used to meet the cost of sales accounting requirements because they enable you to classify the expenses by functions such as administration, sales, marketing, and production. This is Cost of Sales Accounting
Functional area is assigned to GL Accounts in transaction FS00 or for mass update transaction#OB_GLACC11
Path: Enterprise Structure – Definition – Financial Accounting – Define Functional Area
Transactional code: FM_Function
Define Business Area
Business Area Determination
Three Rules for Business Area determination: —
- Business area assignment by Plant/Item division
- Business area assignment by Sales Area
- Business area assignment by Sales organization/Distribution Channel, Item Division
Following are few important transactions, in close relation with Business Area:
OX03 Create Business Area
OMJ7 assign Business Area to Plant / Valuation Area and Division
OVF2 Org Unit: Sales Area – Business Area Determination rule
OVF0 Org Unit: Business Area Determination rule
OVF1 Sales Area – Business Area Determination rule Slsorg/DstCh
Global Settings: Company Code
Maintain Fiscal Year Variant
- Fiscal Year means accounting year. An accounting year is a period of 12 months
- The fiscal Year may be a calendar year ( Jan to December).
- Fiscal Year variant can be non-Calendar year. A non-calendar year fiscal year variant contains 12 months starting from any month and ending in next year, one month before the start month. For e.g. period 1 is April and end on 31st March. Also it can begin from 15th April and end 14th April
- Yearend closing may require adjustment accounting entries which could be required to be posted in month after last period. To allow for these posting SAP allows for 4 special periods. Thus a Fiscal Year variant can have maximum of 16 periods with 4 special periods. The special postings are a part of the last posting period
Table of a Non-Calendar Fiscal Year
Cal Yr. | Cal Month | Fiscal Yr. | Posting Pd. | Start Dt. | End Dt. | Yr. Shift |
2014 | 4 | 2014 | 1 | 1 Apr | 0 | |
2014 | 5 | 2014 | 2 | 1 May | 0 | |
2014 | 6 | 2014 | 3 | 1 Jun | 0 | |
2014 | 7 | 2014 | 4 | 1 Jul | 0 | |
2014 | 8 | 2014 | 5 | 1 Aug | 0 | |
2014 | 9 | 2014 | 6 | 1 Sept | 0 | |
2014 | 10 | 2014 | 7 | 1 Oct | 0 | |
2014 | 11 | 2014 | 8 | 1 Nov | 0 | |
2014 | 12 | 2014 | 9 | 1 Dec | 0 | |
2015 | 1 | 2014 | 10 | 1 Jan | -1 | |
2015 | 2 | 2014 | 11 | 1 Feb | -1 | |
2015 | 3 | 2014 | 12 | 1 Mar | -1 |
SPRO Path: Financial Accounting (New) – Financial Accounting Global Settings (New) – Ledgers -Fiscal Year And Posting Periods – Maintain Fiscal Year Variant
Transaction code: OB29
- Specify Year dependent / Year Independent FYV
- Specify Number of posting periods and no. of special periods
- Specify calendar month for each posting period
- Specify end date of each period
- Specify Year Shift ( , -1, +1)
- Fiscal Year Variant K4 : It has calendar Fiscal year. Posting periods are equal to calendar months
FYV V3 = Non Calendar Year = Posting periods not equal to Calendar Months
Assign Company code to Fiscal Year Variant
SPRO Path : Financial Accounting (New) – Financial Accounting Global Settings (New) – Ledgers – Fiscal Year And Posting Periods – Assign Company Code To A Fiscal Year Variant
Transaction Code: OB37
Define Variant for Open Posting Periods
The benefit of defining variants to open periods is to avoid the problem of posting accounting transactions to the wrong period. This is achieved by opening current periods and closing all other periods. At the end of the current period, the period is closed and the next period is opened.
In SAP ERP, opening and closing periods are differentiated by account types. This allows you to determine which accounts are posted to a specific posting period. For example, posting can be permitted for accounts payable but not to accounts receivable.
As part of customizing opening and closing periods, the following items are defined:
- Define variants for open posting periods
- Assign variants to company codes
- Specify open and close posting periods
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting Global Settings
(New) – Ledgers – Fiscal Year And Posting Periods – Posting Periods – Define Variants For Open Posting Periods
Transaction Code : OBBO
Assign Posting Period Variant to Company Code
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting
Global Settings (New) – Ledgers – Fiscal Year And Posting Periods – Posting
Periods – Assign Variants To Company Code
Transaction Code : OBBP
Open and Close Posting period
- Copy SAP Standard Variant 0001
- Period 1: For posting to regular posting period
- Period 2: For posting to Special Periods. Periods 13 to 16 represent the special periods of four months for posting year-end adjustments to a closed fiscal year.
- For each interval specify
- Lower limit of interval
- Upper limit of interval
- Fiscal Year
IMG Path : SPRO – Accounting (New) – Financial Accounting Global Settings (New) – Ledgers –
Fiscal Year And Posting Periods – Posting Periods – Open And Close Posting Periods
Transaction code: OB52
Variant : Enter posting period variant like MK14 here
Column ‘A’: Enter the account type like A, D, K, S. + in first row is required to open the posting period variant
From Account: Lower limit of accounts. Can be left blank
To Accounts: Upper limit of accounts. Enter zzzzzzzzzz to include both numeric and non-numeric account number
From Period 1 : Enter the period to be opened
Year : Enter the year for From period which has to be opened
To Period 1 : Enter the period in relation to From period which have to be opened. For e.g if 12 is entered here and 1 in From period all period from 1-12 are open
Year : This is year corresponding to period specified in last step. So in above case period 1-12 are open from year 2019 to 2019
From Period 2 : From period for special periods. Enter 13 here
Year : Year corresponding to from special period
To Period 2 : Denotes end of special period. Enter 16 here
Year : Correspond to special period ‘To Period’.
Define Field Status Variant
Field status variants hold the Field Status Groups in SAP R/3. A Field Status Group defines the screen layout for a general ledger account entry. Based on your specification, the Field Status Groups determine which fields accept input during document entry (FB60, FB50, FB65…), as well as whether a field should be suppressed, required, and optional.
Define Field Status variant
Field status variant is made up of Field status group. In standard SAP Field status variant -0001 there are 42 FSG. These Field status group are assigned to GL account in FS00 to control their fields during document entry (FB60, FB70, F-02, and FB50)
Each Field status group is further made up of sub groups like General data, additional account assignment, Payment transactions etc.
Each of these sub groups have fields under them. These fields can be selected for states of Required/Optional/ Suppressed
IMG Path : SPRO- Financial Accounting (New) – Financial Accounting Global Settings (New) – Ledgers – Fields – Define Field Status Variants
Transaction Code : OBC4
Assign Company code to Field Status Variant
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting Global Settings (New) – Ledgers – Fields Assign Company Code To Field Status Variants
Transaction Code : OBC5
Create Chart of Accounts
- Chart of Accounts contains the list of general ledger (G/L) accounts used by a company code for posting daily financial activities. Three types of COA
- SAP comes is delivered with country specific Chart of Accounts, Like CAUS for USA, CAGB for UK etc. COA INT is international COA and can be used for any country
- Operative: Used to record day to day financial transactions. Each company code must be assigned one Operative COA. One Operative COA can be assigned to many company codes
- Country: Maintained in addition to Operative COA. Link is established by entering GL account from country COA in alternative field in Operative COA
- Group: Contains the corporate G/L accounts applicable to all company codes in the group. It’s purely for consolidation reporting for the group. Link is established by entering Group GL account in the field Group GL in Operative COA. It is optional to maintain Group Chart of accounts
Create Chart of Accounts
We will create Chart of accounts MKUS for US company codes code MK14. However for US company codes MK11, MK12 we will use SAP supplied standard Chart of accounts for USA, which is CAUS.
For consolidation we will use SAP supplied standard chart of accounts CONS.
- Operative Chart of accounts for company code MK11, MK12, MK13 will be CAUS
- Country chart of accounts for MK13 will be MKSG
- Consolidation Chart of accounts for all company codes will be CAUS
IMG Path : SPRO – Financial Accounting (New) – General Ledger Accounting (New) –
Master Data – G/L Accounts – Preparations – Edit Chart Of Accounts List
Transaction code: OB13
Assign Company code to Chart of Accounts
Transaction code: OB62
Define Account Group
- Accounts are classified into appropriate account groups by grouping accounts with similar tasks together in the same general ledger. For example, all G/L accounts related to revenue are grouped together under Revenue Group and assigned the same number range
- Account Group control General Ledger account number
- Fields displayed for a GL Account in FS00 (GL Master Data)
IMG Path : SPRO – Financial Accounting (New) – General Ledger Accounting
(New) – Master Data – G/L Accounts – Preparations – Define Account Group
Transaction Code : OBD4
Define Retained Earnings Account
Normally, the net profit or net loss figure is carried forward to retained earnings on the balance sheet.
Retained earnings account defined here needs to be created in FS00. At the end of fiscal year balance in Profit and Loss is c/f to RE accounts
IMG Path : SPRO – Financial Accounting (New) – General Ledger
Accounting (New) – Master Data – G/L Accounts – Preparations – Define
Retained Earnings Account
Transaction code: OB53
Global Settings:
Documents
Define Document Type
Every posting in the SAP system generates a document, and the document remains open until it is cleared and archived. For example, when an invoice is posted in the system, the system generates a document and assigns a document number. The invoice remains in the system as an open item. When payment is received for the invoice, the amount received is entered into the system and cleared with the outstanding invoice. A document is uniquely identified using:
- Document number: This is a unique number that is assigned to a document automatically by the system during document posting or manually by the user during data input.
- Company code: This is your company’s identification code.
- Fiscal year: This is your company’s accounting year code. This is usually a 12-month period.
A document has two main components. Header and Line Items. Header is made up of below fields
- Document Date: This is the original document / vendor invoice date
- Posting date: Date on which document is accounted in the GL account
- Document Type: This determine the type of accounts (S, K, D,A) to which the document can be posted. It also control the field status of the document during entry
- Company code: Legal entity to which the transaction belongs
- Currency/ Exchange rate: If the document currency is different from company code currency system uses the exchange rate configured in the system. If we want a different rate to be used specify the rate in this field
- Translation date: If system has to use an exchange which is different from the document date enter the date in this field
- Period: This is derived from posting date. Documents can be posted only in open posting periods. Typically period is the month in which a document is posted. However a document can be posted in period 14 (special period) with a posting date of Dec 10, 2018 (Fiscal year = Calendar Year)
- Reference: Generally external document number is entered here. Can be made mandatory in document type configuration
Following entries are made automatically by the SAP at the time of document posting
- Tax amount on sale / purchase of customer / vendor invoice based on tax rate entered
- Payables and receivable between company codes in case of intercompany transactions
- Gain / loss due to exchange rate difference
- Cash discount paid / received during vendor payments (F110)
Define Document Type
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting Global Settings (New) – Document – Document Types – Define Document Types
Transaction code: OBA7
This is a two-character key which distinguishes the business transaction to be posted, such as vendor invoice, customer invoice, vendor invoice payment, and so on.
- Defined at client level
- Control type of Account that can be posted with the document type
- S: GL Accounts
- K: Vendor Accounts
- D: Customer Accounts
- A: Assets Accounts
- M: Materials
- Control the number range that can be used by this document type
- Can make Reference and Text field mandatory for this document type
- If exchange rate type is specified, uses the exchange rate as per the exchange rate type specified here in case no exchange rate is entered during document entry
- Negative posting’s permitted: If this field is selected document type can be used for negative reversal postings.
- Trading Partner: If this field is selected trading partner has to be entered manually in document. Generally trading partner is transferred from customer / vendor master records automatically
- Reference / Doc header text: If selected, the field is made mandatory in the document
Define Document Number Range
- Document Number Ranges are company code dependent so need to be created for each company code
- Document number range can be internal or external
- Year Independent: Valid for all year till year 9999. Enter year 9999 in FBN1
- Year Dependent: Valid for specific year. Enter the specific year in FBN1
- Create separate number range for special document types like recurring documents. SAP recommends using the number range interval X1 for recurring entry documents and X2 for sample documents in order not to interfere with SAP’s standard settings
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting Global Settings (New) – Document – Document Number Ranges – Documents In Entry View – Define Document Number Ranges
Transaction code: FBN1
To copy number range from company code use transaction: OBH1
To copy number range from another fiscal year use transaction: OBH2
Define what fields can be changed in a Document header
Specify the fields which can be changed in a document for account types (S, A, D, K)
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting Global Settings
(New) – Document – Rules For Changing Documents – Document Change Rules
Transaction code: OB32
Define what fields can be changed at line item level
Specify the fields which can be changed in a document for account types (S, A, D, K)
IMG Path : SPRO – Financial Accounting (New) – Financial Accounting Global Settings (New) – Document – Rules For Changing Documents – Document Change Rules, Line Item
Transaction code: OB32
Define Posting Keys
Transaction code: OB41
PK controls the processing of line items in a document. It controls the following:
- DR / CR entry
- Account Type (D, K, S, A, M)
- Field status of the document entry screen
It is recommend to use the SAP provided posting keys
Change Message type displayed during document processing
IMG Path: SPRO – Financial Accounting (New) – Financial Accounting Global Settings – Document – Default Values – Change Message Control For Document Processing
Transaction code OBA5
Select Area F5, F5A for document processing
FI Accounting Area: FF
Tolerances
For example, an outstanding invoice amount is $5000 and the amount paid to clear the outstanding invoice is $4950, leaving you with a difference of $50. If the acceptable limit for your tolerance groups is $45, the system will reject the posting because the difference is above the acceptable limit. On the other hand, if the payment difference is $45 or less, the system will accept your posting and post the difference to a specified predefined account.
Three tolerances are represented in SAP ERP.
- Tolerance groups for G/L accounts
- Tolerance groups for employees
- Tolerances for customers/vendors
Tolerance groups for G/L accounts
Define the limits within which credit and debit differences in local currencies are considered acceptable. The differences are posted automatically during G/L account clearing.
Define Tolerance Group for GL account tolerances: OBA0
Tolerance Group for Employees
Transaction Code:OBA4
Define what an employee is permitted to post to the system.
- Amount per Document: This is the maximum amount per document an employee is authorized to post.
- Amount per Open Item Account Item: This is the maximum amount per open item that the employee can enter in the line item in a vendor/customer account.
- Cash Discount per Line Item: This is the maximum cash percentage discount per line item that the employee can grant.
- Permitted Payment Differences : During payment difference posting, the system will check the amount against the percentage and automatically use whichever is less.
Tolerance Group for Vendors
Transaction Code: OBA3
Driving entries to Cash discount account, Over / Under Payment account during payment to Vendors. These vendor tolerances are assigned to vendor master. When payment are made to the vendor. Differences between invoices and payment received if within the limit defined here, than posted automatically to GL accounts defined earlier. Null tolerance group is assigned automatically to all vendors master. Non Null Tolerance Group has to be assigned in the vendor master
Enter Company Code Global parameters
Transaction Code: OBY6
IMG Path : Financial Accounting (New) – Financial Accounting Global Settings (New) – Global Parameters For Company Code – Enter Global Parameters
- Country COA: Enter if different from Operative COA
- External Company code: Selected in case of ALE entries coming from a different SAP system.
- Global company code: In conjunction with external company code enter the external system Sending/ Receiving ID
- Workflow variant : Use transaction OBWA to create workflow variant BSUS and assign to company code BS11
- Negative Postings : select. Allowed as to not inflate the trial balance
- Activate Cash Management : Select to activate cash management and liquidity forecast
- No Forex Rate Diff. when Clearing in LC: Use this box to control how foreign currency open items are cleared in local currency. When you select this checkbox, the system clears the foreign currency open items using the prevailing exchange rate when those open items were created.
- Tax Base is Net Value : If selected discount deducted from Invoice value and tax is calculated on this net amount
Define Controlling area
Transaction code: OKKP
IMG Path : SPRO – Enterprise Structure – Definition – Controlling – Maintain Controlling Area
- Like a company code, it is a self-contained cost accounting entity useful for internal reporting.
- You can have one or more controlling areas in a single client. You assign one or
- more controlling areas to an operating concern.
- An operating Concern can have one or more controlling areas
- One or more company codes can be assigned to a Controlling Area
- All Company codes assigned to a Controlling Area must use the same Chart of Accounts
- Controlling Area ensure that primary expenses from FI are posted to cost objects (Cost center, Internal Order, WBS) in CO. Similarly revenue from FI are posted to CO-PA and Profit Center accounting in Controlling
Controlling area field explained
- Currency Type
- 10 – Local / Company code currency
- 20 – Controlling area currency. This can be any currency
- 30 – Group currency. This is the Client level currency Type
- Cocd->CO Area: Multiple company codes can be assigned to a controlling area. All company codes must use the same Fiscal Year Variant
- Chart of Accounts : Ensure all company codes assigned to the controlling area use same operative Chart of accounts. Can have different country chart of accounts
Assign Controlling Area to Company code
Activate Controlling Area Components
Transaction code : OKKP
Select and activate below components in the controlling area.
Validation in Accounting document
- Validations are custom rules to check that FI data entered is correct
- Validations are defined at company code level
- Validations can be set at Document header level, Line item level and whole document level.
- Only one validation per company code can be defined at a call up point. However each validation can have multiple steps
- Transaction code: OB28
- Transaction code to maintain validation sets: GS02
Call up Points | Behavior | Tables |
001- Header Level | Only header fields can be accessed | BKPF |
002- Line-item level | Header and single item fields can be accessed | BKPF and BSEG |
003- Complete Document level | Access to all header and line item fields | BKPF and BSEG |
Each validation step consists of these 3 mains points
Example: Let us create a Validation that posting to GL Accounts #400300, 400200, 400100
Require an entry in field Trading Partner. If no Trading Partner, system give an error message “Please Provide Trading Partner”
We created a SET for GL Account # 400300, 400200, 400100. This way we don’t have to specify the GL accounts in the validations. We can just enter the SET in the validation
Create SET transaction Code : GS01
In the field Table enter : BSEG-HKONT
Create Validation
Transaction Code : OB28
IMG Path : SPRO – Financial Accounting – Financial accounting global settings – Document – Document Header – Validations in Accounting Document
Click new entries and enter the below details:
Select row, double click and create the validation as below:
Click Validation button and enter below details
Select Folder and click button STEP.
Click Prerequisite (Funnel). Enter the conditions, which if True, Validations gets triggered
Prerequisite is “ When Company code is MK14 and GL account is in SET (GLACCOUNT), validation should be triggered
Now Click Check. Here enter the condition which Validation should check. We want it to verify that GL account in the SET have Trading Partner during document entry
Now click the last step Message. Here enter the Message number which should be displayed by the validation
Click Save button to Save the Validation
Now to Transport the Validation from SAP Development system to SAP Quality system, select the validation. Click Validation button -> Click Transport and save the Validation.
Test the Validation Created
Enter Vendor Invoice. Transaction Code FB60
Substitution
What is the substitution
The substitution function can be used to substitute a value to some fields which is included in line item table BSEG or header table BKPF. And the substitutions are valid for both the manual entry of documents and the automatic created entry of documents (for example, payment program).
You can define a substitution via call points (0001 is for substitution in document header level; 0002 is for substitution in document line item level; 0003 is a substitution for a complete document).
The following example explain how to define a substitution by using constant value.
Example: substitute a constant value “XXXX” into BSEG-SGTXT (Text) field in company code 1000.
Transaction code: OBBH
IMG Path : SPRO – Financial Accounting – Financial accounting global settings – Document – Document Header – Substitutions in Accounting Document
Create an entry in call point 2, then double click this entry.
Press Substitution button, enter the substitution name in substitution field, press enter, then the ‘TEXT’ is listed under node ‘line items’ in the left Substitutions area as follow:
Press step button, then tick the field into which you want to substitute a value(for this example is BSEG- SGTXT).
Press enter, then select the radio button of “Constant value” if you want to substitute a value into a field, or select the radio button of “EXIT” if you want to substitute a value by a User Exit.
Press “Prerequisite” in the left side under ‘TEXT’ for defining when this substitution works. For this example define a substitution which work when company code = ‘1000’ and user name is EHPUSER478
Enter the perquisite as shown below. User name field can be found in Structure Syst. Double click it. Now double click SYST-UNAME to enter it in perquisite screen. Select the operator =. Click the constant button and enter constant value EHPUSER478. Now click structure BKPF. Select field BKPF-BUKRS. Enter the company code’1000’ in the constant.
Press ‘Substitution’ in the left side under substitution ‘TEXT’’, define a constant value as “ZZZZ” in text field (BSEG-SGTXT), then save it:
Activate this substitution in Tcode OBBH with value ‘1’ (‘0’ means Inactive; ‘1’ means Active; ‘2’ means Batch input processing)
Using User Exit to define substitution logic
You can also define substitution logic in user exit. Copy Program RGGBS000 to ZGGBS002 and change the relevant entry in table#T80D to ZGGBS002. Write substitution logic in program ZGGBS002. Now assign it to application area GBLS in transaction code GCX2. Further assign the user exit to substitution step in transaction OBBH
User Exit in program ZGGBS002
Assign application area in transaction code GCX2
Assign user exit to substitution rule in OBBH
Testing the substitution :
Post an FI document in transaction F-02 and verify whether Text field is populated with ‘ZZZZ’
Define user exit in program: ZGGBS002.
Assign program to application area GBLS in transaction code GCX2
Assign user exit to substitution in OBBH
Program to regenerate substitution program if not working correctly | SE38-RGUGBR02 |
Global Settings: Tax
Tax Configuration
Companies pay taxes on incoming / outgoing Invoices. These taxes are in the nature of Purchase tax, Sales Tax, Withholding Tax. SAP system helps in automatic calculation of tax liabilities and generation of tax reports
Different Types of tax liabilities are as below:
- Input Tax: Tax paid to vendor on purchase of goods
- Output Tax: Tax claimed from customer on goods sold
- Withholding tax: Tax deducted from salaries paid to employees and payments made to contractors. This is charged at the time of payment
Key steps in Tax configuration can be classified into three categories as below:
Basic Settings
- Calculations
- Postings
Tax configuration steps under Basic settings
- Check Calculation procedure
- Assign country to calculation procedure
- Check and change settings for calculation procedure
- Specify Tax jurisdiction code structure
- Define Tax jurisdiction
Basic Settings – Check Calculation Procedure
Path: SPRO- Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Basic Setting -> Check calculation Procedure
Tcode: OBYZ
Calculation procedures containing the necessary specifications for the calculation and posting of taxes on sales/purchases have already been defined in the standard SAP system for certain countries. Every calculation procedure groups several tax types together into a condition type (for example, output tax or input tax) in the calculation procedure, and determines calculation rules for it.
Tax Procedure:
For US company code MK11 we will use the SAP standard Tax calculation procedure TAXUSJ ( Sales Tax with jurisdiction). So no changes required here
Assign Country to Calculation Procedure
Path: Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Basic Setting -> Assign Country to Calculation Procedure
Tcode : OBBG
Check and Change Settings for Tax Processing
Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Basic Setting -> Check and Change Settings for Tax Processing
Tcode : OBCN
- MW1/VS1: Account Key to which GL account is attached
- Tax Type : Output tax, input tax, additional taxes, or “not tax-relevant” can be specified as the tax type
- Not deductible : If selected tax amounts are marked as not deductible
- Posting Indicator : Here you specify whether the tax amount is posted separately or distributed to expense or revenue items.
WE will not change SAP standard settings here
Specify Structure for Tax Jurisdiction Code
Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Basic Setting -> Specify Structure for Tax Jurisdiction Code
Tcode : OBCO
In this activity, you determine the structure of the tax jurisdiction code. This code is used for calculating taxes which are defined below the federal level (for example, US taxes, Canadian taxes). The tax jurisdiction code can be subdivided into a maximum of four levels (for example, state/county/city/district).
Fields | Purpose |
Schema | This key creates reference to a country |
Name | Name of the Tax Jurisdiction Code Structure |
Lg | Length of the Nth Part of the Tax Jurisdiction Code |
Lg | Length of the Nth Part of the Tax Jurisdiction Code |
Lg | Length of the Nth Part of the Tax Jurisdiction Code |
Lg | Length of the Nth Part of the Tax Jurisdiction Code |
Tx In | Determine taxes line-by-line |
Define Tax Jurisdictions
Path: Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Basic Setting -> Define Tax Jurisdictions
Tcode : OBCP
In this activity, you specify the tax jurisdiction code per tax calculation procedure. The tax jurisdiction code consists of up to four parts depending on the tax jurisdiction code structure for the relevant calculation procedure: the State code, the County code, the City code, and a local code component
Fields | Purpose |
Jurisdiction. Code | The tax jurisdiction is used for determining the tax rates in the USA. It defines to which tax authorities you must pay your taxes. It is always the city to which the goods are supplied |
Name | Name of the Tax Jurisdiction Code Structure |
DiN | Indicator with the effect that the sales tax is not contained in the base amount for discount calculation. |
TxN | Indicator that causes the base amount for the calculation of sales tax to be reduced by the discount share. |
Calculation
Key configuration task under calculation
- Define Tax codes for Sales / Purchase
- Assign company code to document date
- Specify Base amount
- Foreign currency translation
Define Tax Codes for Sales and Purchases
Transaction Code: FTXP
You have to define a separate tax on sales/purchases code for each country in which one of your company codes is located. Each tax code contains one or more tax rates for the different tax types. If you have to report tax-exempt or non-taxable sales to the tax authorities, you need to define a tax rate with the value 0
Levels:
Properties:
- Tax code , for a country and tax procedure
- Type of tax , whether the defined tax code is an output tax or input tax
Assign Company Code to Document Date
Path: Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Calculation -> Assign Company code to Document date for tax determination
Tcode : OBCK
The posting date is generally used for determination. If you want to determine the tax percentage rates using the document date, then you can set this here.
Postings
Key configuration task under calculation
- Define Tax Accounts
- Define Accounts for Exchange Rate Difference Postings
- Assign Tax codes for Non Taxable Transactions
Define Tax Accounts
Path: Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Posting -> Define Tax Accounts
Tcode : OB40
In this activity we have to assign GL account number for each and every transaction Key/ Account key that has been assigned at check calculation procedure. System automatically post tax amount to these GL accounts
Assign Tax code for Non-Taxable Transaction
Path: Financial Accounting -> Financial accounting global setting -> Tax on sales/purchases – > Posting- Assign Tax code for Non Taxable transaction
Tcode: OBCL
In this activity you define an incoming and outgoing tax code for each company code, to be used for posting non-taxable transactions to tax-relevant accounts. Transactions posted like this are, for example; goods issue delivery, goods receipt purchase order etc.
SAP General Ledger Accounting
General Ledger
General Ledger master record is stored at 2 places
- Chart of Accounts Level
- Company Code level
At Chart of Accounts Level following data is maintained:
- GL Account number
- GL Account type
- GL Account Group
At Company Code level, following data is maintained
- Account Currency
- Valuation Group
- Tax category
- Alternative Account
- Tolerance group
- Field Status group
- Post automatically only
GL Account Group
- Maintained at Chart of Account level
- It is a mandatory field
- The account group determines the fields for the entry screens when you create or change a master record in the company code. The account group also determines in which number interval the account number must be.
- Indicator Balance Sheet Account or P/L account
- Indicates that the G/L account is managed as a balance sheet account or P/L account
- Group Account Number
- The usage of the group account number offers the advantage that by specifying a number; a group of accounts can be assigned immediately to the balance sheet or P+L item.
- Account Currency
- If a currency other than the company code currency is specified, users can only post items in that currency to this account. If the company code currency is specified, users can post items in any currency to this account.
- Only Manage Balances in Local Currency
- Typically used for Balance sheet open item clearing accounts. Posting can be made to the account only in company code / local currency. This facilitates clearing of Invoices and GRN. Example below
DEM | USD | |
Invoice | 1000 | 600 |
GRN | 600 |
- At time of clearing exchange rate between DEM and USD is .65. If indicator is set clearing is without exchange rate differences. If not set an exchange rate difference of 50 USD will be posted at the time of clearing
- Exchange Rate difference Key
- This applies to a balance sheet GL account which holds foreign currency balances. At month end foreign currency balances have to be revaluated and differences posted to exchange rate difference account. This is a Profit and loss account. There could be just one account to which any exchange rate difference is posted or multiple accounts depending on key specified in this field
- Tax Category
Determine whether the following apply to the GL Account
Tax Account | Account used exclusively for tax posting |
Tax Relevant | GL accounts which will always have a tax posting. We can also specify the tax codes that will be used |
Tax Not Relevant | No entry made in this field. |
- Posting without Tax Allowed
- If not selected posting to the GL account not possible unless a tax code is specified at line item level during document entry
- If selected posting can be made to the GL Account with any tax codes specifications
- Reconciliation Account for account Type
- An entry in this field characterizes the G/L account as a reconciliation account. The reconciliation account ensures the integration of a sub ledger account into the general ledger.
- Alternative Account Number
- The account number from your legacy system
- The account number from a country chart of accounts
- Account Managed in External System
- Relevant in case of distributed scenario. ALE
- Tolerance Group
- Specify the GL account tolerance group for treatment of Open items during clearing
- Open Item Management
- Selected where an account is managed as open item account
- Open Item accounts are Balance sheet account
- Open Item accounts will have Open line items and Cleared line items.
- For e.g. let’s take a vendor account. When vendor invoice is posted to it, it is unpaid and thus it shows as open line item. When Payment is made to vendor for this invoice, SAP Payment program identifies this invoice and clears it against the payment document. So in vendor account we see Open Invoice. These are unpaid invoices. Cleared Invoices. These are paid invoices
- Open Item Management typically is used for below types of accounts
- Clearing accounts
- Bank clearing account
- Payroll clearing account
- Cash discount clearing account
- GR/IR clearing account
- Line Item display
- Enable line item display for GL account. Enable in case of Open Item Managed accounts
- Sort Key
- Specify what information should be entered in the Allocation field in the GL Account line item display. For e.g PO number, Assignment number
- Field Status Group
- Specify Field status of the GL Account
Create GL Account Centrally
Transaction code : FS00
Create GL Accounts
Transaction code: FSPO
This is another transaction code used to create GL accounts. This create GL data at chart of accounts level only. To create data both at chart of accounts and company code level use transaction FS00
Display the list of GL accounts created in Chart of Accounts
Transaction Code: F.10
Permit Negative Posting
A negative posting correct an incorrect posting without influencing the trail balance, for e.g. when a document is reversed, it’s negative amount is posted on the same side of the transaction.
Transaction code: S_ALR_87004651
Define reason for Reversal
While reversing a FI document a reason for reversal has to be selected. Define reason for reversal of FI document here.
Transaction Code: S_ALR_87004660
Neg Posting: If selected documents with this reason code will be reversed with negative posting
Alt Posting Date: If selected reversal document can be posted on a date other than the system date
Open Item Clearing
Open items are unfinished transactions such as vendor / customer invoices which have not been paid. These are cleared partially / fully against the payment document.
The Open items can clear in document currency or in foreign currency. If cleared in foreign currency system follows below steps for conversion
- Translate document currency to company code currency
- Translate company code currency to Clearing / foreign currency
Exchange rate difference in the translation are automatically posted to GL accounts defined in Transaction code OBXZ
For Open item clearing to take place below are the prerequisite requirements:
- GL account is Open Item managed in FS00
- Item that can be cleared cannot be special GL transaction like down payments, Guarantee etc.
Methods of clearing Open Items:
- Regular posting:
- Payment Program: F110
- Reversing a FI document: FBRA
Configuration for Open Item Clearing
Standard posting keys for Open Item Clearing. We will not change any settings here
Transaction code: OBXH
Define GL Accounts for gain / loss realized during open item clearing
IMG Path: SPRO – Financial Accounting (New) – General Ledger Accounting (New) – Business Transactions – Open Item Clearing – Define Accounts For Exchange Rate Differences
Transaction code: OB09
G/L Account 160001: This is trade payable account / vendor reconciliation account for which open items are considered for clearing
Exchange rate difference realized, Loss 230000, Gain 280000: These are the GL accounts to which exchange rate realized is posted. For e.g. payment is made to a foreign currency invoice of a vendor. Exchange rate on payment date is different from one date when Invoice posted in SAP system. This difference which could be loss or gain is posted to these GL accounts. These arise at the time of payments during automatic payment run in transaction F110
Valuation block GL accounts loss/ gain and Balance sheet adjustment accounts: These are posted with exchange rate difference during month end foreign currency translation valuation in transaction code #FAGL_FC_VAL . For e.g. if there is an exchange loss, Val Loss 1, GL account#230100 is debited with loss amount and Bal sheet adj 1, GL#161099 is credited with this amount. In the beginning of next month these entries are reversed. These are reversed as the loss is not realized yet. It was calculated only for month end P/L and Balance sheet reporting purpose
Automatic clearing of Open Line items
Program clears the open items by grouping them together if their total balance equal zero in local and foreign currency.
Configuration settings for automatic clearing is done in transaction code# OB74
To enable automatic grouping SAP comes pre delivered with standard criteria of Account type (KOART) and Account number (KONT and KONT2). It also provides the additional criteria like Assignment (ZUONR), business area (GSBER), and Trading Partner (VBUND)
Run Vendor/Customer Invoice automatic clearing in Transaction code : F.13
Define Tolerance group for GL Accounts
For clearing GL Accounts in transaction code F-44 tolerance amount has to be specified. Documents can be cleared only if clearing difference is within the tolerance specified here.
Transaction Code: OBA0
IMG Path : Financial Accounting (New) – General Ledger Accounting (New) –
Business Transactions – Open Item Clearing – Clearing differences – Define
Tolerance Groups For G/L Accounts
- Each company code must have at least one tolerance group
- Blank tolerance group applies to all users, not assigned to specific tolerance group
- Specific tolerance group has to be assigned to employee in transaction code # OB57
- System consider lower of the debit amount and percentage during clearing of GL line items
- As we have defined tolerance group at employee level and also at GL account level, SAP consider lower of these at the time of clearing
Create Account for clearing differences
Difference arising during clearing of GL accounts line item will be automatically posted to account set up in transaction#OBXZ
IMG Path: Financial Accounting (New) – General Ledger Accounting (New) – Business Transactions -Open Item Clearing – Clearing differences – Create Accounts for Clearing
Differences
Transaction Code: OBXZ
End User Transactions
Change Chart of Accounts data of GL Accounts
Transaction code: OB_GLACC11
Here we will update functional area and account group for GL accounts
Enter the account group and functional area in the rows where it has to be changed or added. Further can select multiple rows and enter the functional area to be entered for these rows in new values as shown in image above. Use carry out mass change button to update these values. When you save, Account Group and functional area updated for these GL accounts
Change Company code data of GL Accounts
Transaction code : OB_GLACC12
Copy Chart of accounts from Company code
Transaction code: OBY2
This transaction code can be used to copy Chart of accounts from a company code. We will use this to copy chart of accounts data from company code MK11 to MK12
Activate Open Item Management for existing GL Accounts
Tcode : FAGL_ACTIVATE_OP
Enter “Company Code” and “G/L Account” (in our case 345030), which is to be activating as Open Item Management and “Switch on” date should be before the first line items was posted with respect to above GL. In this case my first document posted on 22.11.2014 ,that means switch on date should be earlier than 22.11.2014, for which I have taken 01.11.2014 in above screen shot. “Document Type” and “Account for transfer posting” is not required. Don’t Forget to check “Test Run” and “Perform Reporting“.
Confirming that the Account is set for Open Item Management
TCode : FBL3N
All the line items are now open Item Managed and now you can perform the clearing operation with this GL.
TCode : FS00
Here you can see that the GL is checked for Open Item Management
Prepare Cross company code transactions
Several company codes are involved in a cross-company code transaction. In a cross-company code transaction, the system posts a separate document with its own document number in each of the company codes. Individual documents are linked by a common cross-company code number. The system generates line items automatically (receivables and payables arising between company codes) in order to balance the debits and credits in each document.
At times one company code makes purchases on behalf of another company code or makes payment on behalf of another company code. This needs entries to be passed in both company codes. If cross company code settings are done, entry in one company code would generate the entry in the other company code also.
Transaction code: FS00
GL Acct | Company code | BS | Acct Gr | CURR | Open Item Mngt | Line Item Dis | Field Status Group |
164005 | MK11 | X | MK11 Asset | USD | X | X | G001 |
164006 | 0008 | X | MK11 Asset | USD | X | X | G001 |
Define cross company code settings for company code MK11 and 0008
Transaction code : OBYA
IMG Path : Financial Accounting –> General Ledger Accounting–> Business transactions–> Prepare cross-company code transactions
Verify Doc type SA allows cross company postings
Transaction code: OBA7
IMG Path : SPRO – Financial Accounting( new) -> Financial Accounting Global Settings (New) -> Document –> Document Types -> Define Document types for Entry View
Prepare Cross company code for manual payments
Transaction code: OB60
IMG Path : Financial Accounting –>Accounts Receivables and Payables –> Business transactions–> Outgoing payments –> Manual Outgoing payments–>Prepare Cross Company code for manual payments
Prepare Cross company code for Automatic Payments
IMG Path : Financial Accounting–> Accounts Receivables and Payables–> Business transactions –> Outgoing payments–> Automatic Outgoing payments –>Payment method/Bank Selection for Payment Program–> setup all company codes for payment transactions
Transaction code: FBZP
Select tab all company code
Post a Cross company transaction
Transaction code: FB60
Via Menu : Accounting -> Financial Accounting-> Accounts Payables -> Document Entry -> Invoice
Display Cross company code document
Transaction code: FBU3
Other Cross Company transactions i.e. Change/Display Reverse Cross Company document
- FBU2 – Change Cross Company code document
- FBU8 – Reverse Cross company code transaction
Foreign Currency Valuation in SAP
FASB 52: is issued by US accounting standard board. It provides guidance on financial reporting of companies operating in foreign countries
- Functional Currency: Currency of the economic environment in which the entity operates. In case of SAP functional currency is generally company code / local currency of the entity (In this case company Code). All assets, liabilities and operations of foreign entity should be measured in functional currency
- Group Currency: This is the currency of the parent company.
- Foreign Currency transactions: These are transactions in a currency other than the functional currency of the company code
- Unrealized foreign currency gain/ loss: Receivables/ Payables in foreign currency have to be reported in-group currency at exchange rate on month end. Difference between group currency and company code currency exchange rate on transaction date and month end is posted as profit/ gain from foreign currency revaluation. This is than reversed at the beginning of the next month
- Realized Gain / Loss: These are gain or loss due to exchange rate difference when actual payment made to vendor or cash received from customers.
Now let us configure and test foreign currency valuation in SAP
Configure Parallel currencies
Transaction code: OB22
1st Local Currency
Srce curr. : Translation is taking transaction currency as base. We can also select translation using first local currency as base
Exchange Rate Type: M. this exchange rate type will be used for currency translation at the time of monthly valuation and also when posting FI documents in a currency other than company code currency
Enter Exchange Rate for Exchange Rate type ‘M’
Tcode: OB08
System will use the latest exchange rate
Define New Exchange Rate Type
Path: SAP Net weaver – General Settings – Currencies – Check Exchange Rate Type
Indicator that in the case of a missing exchange rate entry in the system for the required translation from one currency into another, the inverted exchange rate relationship may also be used
Specify Exchange Rate Type to be used by Vendor Invoice
Tcode: OBA7
We can specify the exchange rate type to be used by a specific document type ( KR) in transaction code OBA7
Let us change it to ‘M’
Specify whether Direct Quote or Indirect quote is to be used
Path: SAP NetWeaver – General Settings – Currencies – Define Standard quotation for exchange rate
Define Translation ratios between currencies
Path: SAP NetWeaver – General Settings – Currencies
Always use SAP default
Valuation Method Setup
Path: SPRO- Financial Accounting (New) – General Ledger Accounting (New) – Periodic Processing – Valuate – Define Valuation Methods
Tcode: OB59
Here define Valuation method for Open Items
Valuation Procedure:
- Lowest Value Principle: If selected valuation is done only if the exchange rate difference results in exchange rate loss. Valuation posted only if giving negative result
- Always evaluate: Exchange rate difference always posted whether gain or loss
- Revalue Only: The opposite of the first one, valuation is only posted when positive
Define Valuation Area
Path: SPRO- Financial Accounting (New) – General Ledger Accounting (New) – Periodic Processing – Valuate- Define Valuation Areas
Define valuation area for closing operations
Assign Valuation method defined in last step to the valuation area
Assign Valuation Area (RM/RU) to accounting principles
Path: SPRO- Financial Accounting (New) – General Ledger Accounting (New) – Periodic Processing- Assign valuation area to accounting principles
Account Determination for Open Item Exchange rate differences
Path: SPRO- Financial Accounting (New) – General Ledger Accounting (New) – Periodic Processing – Valuate- Foreign Currency Valuation – Automatic Posting for foreign currency valuation
Tcode: OBA1
Select transaction ‘KDF’
Here we have Customer / Vendor reconciliation accounts. For these automatic postings at time of foreign currency, revaluation must be specified
Vendor Master: XK03
Account Determination Open Item : OBA1
Additional Settings to display valuation differences in FBL1N/ FBL5N
Tcode: OB_9
These fields must also be defined as special fields in the line item display (table T021S – see note 984305 for more details
Month End Foreign Currency Valuation Run
Tcode: FAGL_FC_VAL
Post a foreign transaction vendor Invoice FB60
Company Code: 0136
Functional / Co. code currency: MXN
So if document posted in USD => Foreign currency transaction
Exchange Rate used and validation:
Table TCURR
Transaction code: OB08
Update Exchange rate in OB08
Let us update exchange rate from USD to MXN to 18.0
Tcode: OB08
Run month end foreign currency valuation
Tcode: FAGL_FC_VAL
This revaluation was in company code currency (10): MXN
Invoice value in MXN @ 19.07 = 190,747
Invoice value in MXN @ 10 = 180,000
Difference 10,747 posted through FI#4700158132 and reversed through FI4700158133
Revaluation in-group currency (30): USD
As the group currency (USD) is same as transaction currency (USD), no revaluation postings are made
Example 2
Post to company code 0136 (Functional/ Co. Code currency MXN, Group/ Reporting currency USD) in EURO
Exchange rate: OB08
As the direct rate is not available system went to next step and used indirect rate
Let us update it to 20 in transaction code OB08
ME Foreign Currency Valuation
10000 EUR revalued @ 20 and difference posted and then reversed
Validate GL Accounts Posted
Tcode: OBA1
Unrealized loss posted to 760715 (BS) and to balance it debit side posted to 170826 (BC acct). This is reversed in the next period.