Generating the Standard Audit File for Tax (SAF-T) Extract

Use the Generic Standard Audit File for Tax (SAF-T) extract to generate audit files for tax compliance as required by the OECD and various European tax authorities.

The solution outputs CSV files containing registration, master file, transaction, and other statutory data needed for tax audits. Each EU country can use the CSV extracts to prepare local audit file formats for submission to their tax authorities.

Setup

Security Privileges

To enable the Generate SAF-T Data Extract process, complete these steps:

  1. Attach the privilege JG_GENERATE_SAFT_DATA_EXTRACT_PRIV to the relevant job role.
  2. Assign the job role to the required users.

Legal Entity Tax Registration Number

Set up the Tax Registration Number (TRN) for your Legal Entity:

  1. Navigate to Manage Tax Registrations.
  2. Select your Legal Entity to define the TRN.
  3. Ensure the TRN is correctly set for the specific Legal Entity Reporting Unit and tax regime.

Contact Person Information for Legal Entities

Maintain contact details for legal entities:

  1. Go to the Legal Structures functional area and select the Manage Legal Entities task.
  2. Search for the required Legal Entity and open it.
  3. Use the Manage Contacts icon to enter the contact’s personal information and address.
  4. Under the Contact Points tab, add telephone, email, fax, and other information.

Tax Registration Number for Third Parties

Customers:

  • SAF-T extracts the TRN defined at the Bill-to Site level for the relevant tax regime.
  • If missing, the process checks for TRN at the customer header level or uses the default value.
  • For foreign customers, ensure you enter both the country and the TRN.

Suppliers:

  • SAF-T extracts the TRN defined at the Address Transaction Tax for the relevant tax regime.
  • If missing, the process checks at the header level or uses the default value.
  • For foreign suppliers, ensure you enter both the country and the TRN.

Account Hierarchies (GL Accounts)

  1. Set up a Natural Account Hierarchy tree that includes a single top-level parent account for SAF-T.
  2. Classify all natural accounts under SAF-T categories and the defined SAF-T top-level parent account.
  3. Use a hybrid hierarchy structure if required and ensure all needed parent accounts exist.
  4. You can upload accounts and hierarchy structures using spreadsheets.

To update the existing hierarchy:

  1. Navigate to Setup and Maintenance > Upload Chart of Accounts.
  2. If a hybrid hierarchy is needed, create a secondary ledger with the required country chart of accounts.
  3. Map your natural accounts to the standard chart of accounts per local tax authority guidelines.

Control Accounts for Third-Party Balances

Set up control accounts to track balances for customers and suppliers:

  1. Navigate to Setup and Maintenance > Financials > Financial Reporting Structures > Manage Chart of Accounts and Value Set Values.
  2. Identify natural accounts used for customer and supplier accounts.
  3. For each account, set the Third-Party Control Account as needed.

If accounting combinations using these control accounts already exist, run the Inherit Segment Value Attributes process.

General Ledger Account IDs for Third Parties

Customers:

  • The General Ledger Account ID is pulled from the Receivables Account at the Bill-to Site or, if missing, from Auto-Accounting rules or the constant value at the business unit.

Suppliers:

  • The General Ledger Account ID is pulled from the Liability Distribution at the Supplier site assignment or from the common options if missing.

Tax Reporting Types and Codes

Use ORA_JG_SAFT_STANDARD_TAX_CODE to assign standard tax codes to tax rates for your legal entity.

To set up:

  1. Go to Setup and Maintenance > Financials > Manage Tax Reporting Types.
  2. Search for ORA_JG_SAFT_STANDARD_TAX_CODE and add values as required for your country.

Assign these codes to tax rates under Manage Tax Rates and Tax Recovery Rates.

Lookup Types - Lookup Codes

  1. Use ORA_JG_SAFT_PROD_CATALOG to identify the inventory catalog for product commodity codes (mandatory for some countries).
  2. Add catalog names as lookup codes and ensure they are enabled.
  3. Set up catalogs under Product Information Management > Manage Items > Categories tab.

Running the Generate SAF-T Data Extract

To generate the extract, follow these steps:

  1. Navigate to Tools > Scheduled Processes.
  2. Search for and run Generate SAF-T Data Extract.
  3. Enter required parameters:
Parameter Name Description Required?
Format Type Format for the extract (Generic, Norway, Romania). Yes
Extract Type Source data to extract (All, Accounting Journals, etc.). Yes
Ledger Ledger for extraction. Yes
Legal Entity Legal Entity the extract is created for. Yes
Tax Registration Number TRN for the extract (leave blank unless filtering by specific TRN). Yes
Selection Date Type Use Accounting or Transaction Date as extraction filter. Yes
From Period/To Period Closed periods to extract data for. Yes
From Date/To Date Specific dates for extraction (optional). No
Top Level Parent Account Top-level GL account for hierarchy. No
Asset Book Asset Book for extraction. No
  • The process can only run for closed General Ledger periods.
  • For Format Type Generic or Romania, CSV files are generated.
  • For Format Type Norway, XML files are generated.

Output Files

The process generates multiple files, including:

  • SAFT_AUDIT_FILE_VERSION
  • SAFT_LEGAL_ENTITY
  • SAFT_GL_ACCOUNTS
  • SAFT_ANALYSIS
  • SAFT_TAXES
  • SAFT_CUSTOMERS
  • SAFT_SUPPLIERS
  • SAFT_GL_JOURNALS
  • SAFT_PRODUCTS
  • SAFT_PAYMENTS
  • SAFT_SALESINVOICE_EXTRACT
  • SAFT_PURCHASEINVOICE_EXTRACT
  • SAFT_ASSETS
  • SAFT_ASSETTRANSACTIONS

Each file contains the relevant statutory or transactional data needed for audit.

Additional Information

  • The extract runs at the legal entity and tax registration number level for closed periods only.
  • The solution accommodates hybrid GL account hierarchies for local country needs.
  • Use appendices and mapping tables in your implementation for local requirements and data tags.