Normal view

There are new articles available, click to refresh the page.
Before yesterdayFinancial Management Blogs by Members

Commitments in focus: How SAP S/4HANA is changing the management of financial commitments

In times of growing complexity in finance, the precise management of commitments is becoming a decisive competitive factor. SAP S/4HANA provides modern tools to address this challenge. A key topic in the SAP environment is commitments. In this article, we explain how the management of commitments is evolving with SAP S/4HANA and why this development is crucial for strategic financial planning. 

Developing a Customized AR Aging Analysis Report in SAP S/4HANA Public Cloud - Part 2

In this Part - 2, we'll dive into using the Custom Analytical Queries APP with our newly created Custom CDS View to build an AR Aging Analysis Report.

 

Please refer Part - 1 to Understand the Custom CDS View created for the AR Aging Analysis Report:

https://community.sap.com/t5/financial-management-q-a/developing-a-customized-ar-aging-analysis-report-in-sap-s-4hana-public/qaq-p/14163727

 

Custom Analytical Queries APP:

The Custom Analytical Queries APP is like a smart tool that helps you create your own reports and analyze your business data, even if you're not a tech expert.

Imagine you're trying to build your Customer Aging Analysis Report. Instead of writing complex computer code, this app takes all the raw numbers and information (like invoices, payments, and dates) and turns them into an easy-to-understand table or grid. It hides all the difficult technical stuff, so you just focus on what you want to see.

Here's how it helps you design your report:

Pick and choose your data: The app provides all the available fields from the business transactions. For your aging report, you'd select fields like Customer Name, Invoice Number, Posting Date, Due Date, Amount Due, and Clearing Date.

Filter what you see: You can set filters to narrow down your report. For example, you might filter to see only particular customers, or invoices past their due date by more than 365 days.

Create custom calculations: You can add restricted measures (like "Total Overdue Amount for 30-60 Days").

See results instantly: You can preview your report as you build it, so you know exactly what the final output will look like.

 

Step – 1: Open the APP – Custom Analytical Queries

SriramBalaji_31-1753782013966.png

Click on “Create” button.

 

SriramBalaji_1-1753781918099.png

Enter the “Query Name”, Choose the “Data Source” – which we have created as a CDS View.

Click on “OK”.

 

Step – 2: Name the Analytical Query

SriramBalaji_2-1753781918107.png

In the General Tab,

Enter the “Label” for the AR Aging Analysis Analytical Query and Click on Next Tab “Field Selection”.

 

Step – 3: Field Selection for the Analytical Query

SriramBalaji_3-1753781918115.png

In the Field Selection Tab,

Choose the required fields from the Available Fields by selecting the “Check box” to display in the AR Aging Report.

 

Step – 4: Arrange the Selected Fields in the Analytical Query

SriramBalaji_4-1753781918125.png

In the Display Tab,

Select relevant Field and Choose the “Axis” - Row / Column. Once selected the Axis, the field will be automatically moved to Row / Column Tab same as Company Code, Customer etc.

Note: Arrange the fields according to the business format and also Amounts / Numerical / Calculation related fields are arranged under the Measure Structure of Column Axis.

 

Step – 5: Choose the Input Parameter Fields for the Report

For the AR Aging Analysis Report, users need to provide input parameters such as Open Items at Key Date, Customer, Company Code, GL Account, and Posting Date to generate the report based on their selections.

SriramBalaji_5-1753781918132.png

In the Filter Tab,

Choose the respective Field and then Select the radio button “Uset Input Values”.

Select the “Default Value” if required.

Note: Our AR Aging Analysis report runs based on the Open Items at Key Date, showing all items not cleared by that date. If you need to pre-fill any input fields, you can use the Default Value functionality in the filter section.

For Example: Below are the selected Input Parameters for our report and the “Open Items at Key Date” and “Company Code” will be defaulted at the time of report execution based on the settings in Analytical Queries.

SriramBalaji_6-1753781918134.png

Step – 6: Create Calculated Measure Fields (Aging Buckets) for the Report

Creating Aging Buckets is the most challenging aspect of developing the AR Aging Analysis Report. This is primarily due to the complexity of applying the necessary formulas. To build custom aging buckets, you'll need a foundational understanding of IF & Else conditions, similar to those used in Excel, to grasp the CASE WHEN Expression formulas utilized in SAP Analytical Queries.

 

  1. Not Yet Due (Aging Bucket - 1)

SriramBalaji_7-1753781918141.png

In the Display Tab,

Click on “Add” button and Choose “Add Calculated Measure” to create the Aging Bucket.

SriramBalaji_8-1753781918143.png

Then Enter the “Label” and Click on “OK”.

SriramBalaji_9-1753781918149.png

We've now added a "Not Yet Due" field to the query. This field displays the Amount in Company Code Currency for any customer open items with Overdue Days less than or equal to zero.

The above logic has been applied in the analytical query using the CASE WHEN formula.

SriramBalaji_10-1753781918157.png

In the Expression Section,

Choose the “Edit” button to apply the formula.

SriramBalaji_11-1753781918164.png

Select the “Function” button then Choose the “Case Expression” and Click on “OK” button.

SriramBalaji_12-1753781918166.png

SriramBalaji_13-1753781918167.png

SriramBalaji_14-1753781918168.png

The formula applied in this “Not Yet Due” field is, if the Overdue days field is less than or equal to “0” then “Amount in Company Code Currency” should be displayed in the report or Else the value should be displayed as “0”. You can Choose the Measure fields by click on measures button or else you can type relevant measure field in the Expression editor. Once formula applied the Click on “OK”.

 

  1. 1 to 30 Days (Aging Bucket – 2)

Apply the same steps involved in Not Yet Due field, only the formula will be changed for this 1 to 30 Days Aging Bucket.

SriramBalaji_15-1753781918171.png

For the "1 to 30 Days" field, we've applied a specific formula:

If a Customer Open item's Overdue Days are greater than or equal to "1" AND less than or equal to "30," the Amount in Company Code Currency will be displayed. Otherwise, the value will show as "0." This formula uses an AND condition to accurately identify customer open items that are between 1 and 30 days overdue.

After applying the formula, simply click "OK."

 You can apply this formula and change the conditions according to the Aging Buckets (31 to 60 Days, 61 to 90 Days…etc).

SriramBalaji_16-1753781918177.png

The Sum of all the Aging Buckets from “1 to 30 Days till Above 365 Days” will be the “Total Overdue Amount”.

Once the respective fields created in the Custom Analytical Queries APP.

Click on “Save Draft” the changes will be saved. Then click on “Preview” option to validate the report values.

 

Step – 7: Preview and Validate the Created Custom Analytical Query

SriramBalaji_17-1753781918179.png

In the Input Parameters, The Open Items at Key Date and Company Code will automatically default the value according to the settings in Custom Analytical Queries APP and also it can be changeable at the time of report executing.

Once maintained the Input Parameters, Click on “GO”.

SriramBalaji_18-1753781918186.png

You can validate the output of the report in the Preview. So, the issues will be identified and resolved before publishing the Custom Analytical Query for the APP creation.

 

Step – 8: Publish the Created Custom Analytical Query for AR Aging Analysis Report

SriramBalaji_19-1753781918190.png

Click on “Publish” to publish the created Custom Analytical Query for the AR Aging Analysis Report APP creation.

 

View Browser APP:

For SAP S/4HANA Cloud Public Edition key users, the View Browser app is essential for finding CDS views. This includes both SAP-released and custom CDS views.

The app provides a comprehensive list of available CDS views. You can see details like Category, View Types, Dimensions and Measures, Annotations, supported capabilities, and modelling patterns. It also offers robust search options. You can search by descriptions, application components, or even the tables used to build the CDS views.

Beyond searching, you can use the View Browser to analyze a CDS view's data fields. The application displays all CDS views and their underlying artifacts in tables. By default, views are organized by name, but you can also filter column values using a dropdown.

While you can't change SAP-created CDS views in the View Browser, the Custom Analytical Query app allows you to create, save, modify, and publish your own CDS views to catalogs.

 

Step – 1: Create the Application for Created Custom Analytical Query

SriramBalaji_20-1753781918194.png

Open the “View Browser” APP.

Search the Created AR Aging Analysis Analytical Query in the Search Bar and then Click on the respective Analytical Query to Create the Application.

SriramBalaji_21-1753781918199.png

You can check the Fields, and CDS View involved in this Analytical Query.

Click on “Create Application”.

SriramBalaji_22-1753781918201.png

Choose the “Language”

Enter the “Title” and “Subtitle” for the Report and this will be the Application Name.

Click on “OK”.

SriramBalaji_23-1753781918202.png

Finally, the Application is created for the developed AR Aging Analysis Report.

 

Custom Catalog Extensions APP:

This app lets you assign your apps to specific business catalogs. After creating a new app, you must link it to the necessary catalogs. To use your new app, you'll need to assign a business role that includes that Catalog.

 

Step – 1: Open the APP – Custom Catalog Extensions

SriramBalaji_24-1753781918207.png

Select the Created Application to assign it to the respective Business Catalog.

 

Step – 2: Assign Business Catalog to the Application

SriramBalaji_25-1753781918209.png

Click on “ADD”.

 

SriramBalaji_26-1753781918215.png

Choose the respective “Business Catalog” and then Click on “OK”.

SriramBalaji_27-1753781918217.png

Select the Business Catalog and then Click on “Publish” button.

Confirm by choosing the “OK” to publish.

SriramBalaji_28-1753781918220.png

Finally, the Created Application is assigned with the Business Catalog and published for the business usage.

 

Step – 3: Display the APP - AR Aging Analysis – Report

SriramBalaji_29-1753781918223.png

Once the APP is assigned with the Business Catalog, you can search the created APP in the search bar to display it for the reporting purpose.

SriramBalaji_30-1753781918229.png

 

References / Acknowledgements:

I'd like to extend my sincere thanks to the various SAP documentation, community blogs, and helpful tutorials that guided me through the intricacies of Key User Extensibility in SAP S/4HANA Cloud.

I highly recommend them for anyone looking to dive deeper into SAP S/4HANA Cloud extensibility:

  1. https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-members/customer-aging-and-supplier-aging-reports-at-the-line-item-level-using/ba-p/13563839
  2. https://community.sap.com/t5/enterprise-resource-planning-blog-posts-by-sap/creating-custom-cds-views-and-analytical-query-a-step-by-step-guide/ba-p/13508914
  3. https://help.sap.com/docs/SAP_S4HANA_CLOUD/0f69f8fb28ac4bf48d2b57b9637e81fa/e30de6eae4d24d70b65996ac8ff88848.html?locale=en-US&version=2502.500

 

Conclusion:

Developing a customized Customer AR Aging Analysis Report in SAP S/4HANA Cloud Public Edition, as demonstrated, truly highlights the power and flexibility of "Key User Extensibility." While standard solutions offer a solid foundation, the ability to adapt and build tailored reports is crucial for meeting unique business requirements and ensuring user satisfaction.

By leveraging apps like Custom CDS Views, Custom Analytical Queries, the View Browser, and Custom Catalog Extensions, key users can effectively design and deploy robust financial reports without extensive technical coding. This empowers organizations to gain deeper insights into their financial data, streamline processes, and make more informed decisions regarding accounts receivable management.

This project was a testament to how SAP S/4HANA Cloud Public Edition enables businesses to go beyond standard functionalities, proving that with the right tools and a clear understanding of business needs, powerful custom solutions are well within reach.

Thank You!

Developing a Customized AR Aging Analysis Report in SAP S/4HANA Public Cloud - Part 1

Introduction:

Hello everyone, Myself Sriram Balaji, I am currently working as an SAP FICO Consultant. Last year, I got an opportunity to work in SAP Public Cloud Greenfield Implementation Project. During the “FIT to Standard” and “UAT” sessions, we have demonstrated the SAP standard Customer / Supplier Aging Analysis Report to the client but they are not satisfied with the standard aging report. They required a tailored Aging Analysis Report for Customer and Supplier, one that aligned perfectly with their unique operational requirements. This experience highlighted the importance of understanding client expectations beyond standard functionalities and fueled my journey into customizing SAP solutions in the Public Cloud.

In this blog, we are going to explore how we can develop Customized Customer (AR) Aging Analysis Report using the “Key User Extensibility” in the SAP Public Cloud.

 

Purpose of Preparing Customer Aging Analysis Report:

Customer Aging Analysis Report, is a basic financial report which provides the information of outstanding payment from the customer’s and how long they are due for the payment by categorizing into the Aging Buckets (0 – 30 Days, 31 – 60 Days, ……. Above 365 Days).

The aging report provides vital information to management to evaluate how effective the business is at converting sales to cash. The aging report is also used as a tool for estimating potential bad debts, which are then used to revise what is known as the allowance for doubtful accounts.

 

Key-User Extensibility in SAP S/4 HANA Public Cloud:

Extensibility covers a broad spectrum of topics that enable customers and partners to adapt standard business software to their business needs.

SAP S/4HANA Cloud key user extensibility allows adapting standard functionalities to user requirements without the need for any external tools. Key User Extensibility is done in the customizing tenant of the development system through SAP Fiori apps designed to facilitate someone making small changes to apps, reports, and email and form templates without any coding experience.

Here's an overview of the things you can do using key user extensibility tools:

  • Change and adapt the UIs for SAP Fiori Apps
  • Create Custom Fields
  • Create your own custom templates or extend the standard forms and email templates
  • Create customer-specific CDS Views
  • Enhance the current business process by creating custom business logic
  • Create a new custom user interface
  • Create custom business objects

SAP S/4HANA embodies key user extensibility tools, which are completely web-based. They are targeted at key users who have a deep knowledge of the product itself, but not necessarily a very deep technical knowledge.

For more details about Extensibility in SAP S/4 HANA Public Cloud, please refer the link https://extensibilityexplorer.cfapps.eu10.hana.ondemand.com/ExtensibilityExplorer/#/ReadMore

To develop the Customized Customer Aging Analysis Report, we are going to use the below Key-User Extensibility Apps and other provided Apps by SAP in the Public Cloud:

  • Custom CDS View APP
  • Custom Analytical Queries APP
  • View Browser APP
  • Custom Catalog Extensions APP

My prior experience in developing Aging Analysis Reports in SAP ECC and S/4HANA GUI with my technical team allowed me to apply the same logic to Custom CDS Views and Custom Analytical Queries, even without knowing any deep technical knowledge.

Let me summarize the business requirement for Customer Aging Analysis before jumping into the technical steps involved for the development:

  • The report should display: Customer Account, Customer Name, Document Number, Line Item, Document Type, GL Account, Payment Terms (with descriptions), and other required fields.
  • The report should calculate and present: Overdue Days, Not Yet Due, Aging Buckets (0-30 days, 31-60 days, …... and Above 365 days), and Total Overdue Amount.
  • The report balances must be matched with the 'Manage Customer Line Items' App (Accounts Receivable Ledger).

 

In this Part - 1, We will explore how we can utilize the Custom CDS View APP for the AR Aging Analysis Report development.

 

Custom CDS View:

Custom CDS views can serve different purposes: They can be consumed in analytics or serve as external APIs to be consumed in external systems, for instance the SAP BTP. Especially Cube or Dimension views can be used in analytical scenarios and also you can create or modify a custom CDS view by,

  • Adding fields from multiple data sources.
  • Creating your own calculated fields.
  • Refining the properties of the selected fields.
  • Creating and maintaining parameters for the usage within your view.

We have combined the multiple data sources such as I_JournalEntryOperationalView, _I_GLAccountText, and _I_PaymentTermsText to create a Custom CDS View by using the Join Condition.

 

Step – 1: Open the APP – Custom CDS View

SriramBalaji_0-1753608115861.png

Click on “Create”.

 

SriramBalaji_1-1753608115863.png

Enter the “Label”, Choose the “Scenario” – “Analytical Cube” and Click on “Create” Button.

Note: By choosing the Scenario as “Analytical Cube”, We can use this CDS View to create an Analytical Queries for the Customer Aging Analysis report.

 

Step – 2: Choose the Primary Data Source 

SriramBalaji_2-1753608115867.png

Click on “Add” Button

Choose the “Primary Data Source”

Note: Data Source is an object containing the key figures and characteristics from the database and it provides a multidimensional analytical view of business data.

 

SriramBalaji_3-1753608115869.png

Select the respective “I_JournalEntryOperationalView” Data Source from the list.

 

SriramBalaji_4-1753608115873.png

This I_JournalEntryOperationalView CDS view provides access to all details of a journal entry item (database table ACDOCA) joined to the details of the corresponding operational accounting document item (database table BSEG) and to the details of the corresponding journal entry header (database table BKPF) including the most important business entity, such as G/L account, Cost Center or Profit Center.

So, this I_JournalEntryOperationalView is similar to the ACDOCA Table which contains the values of all the relevant fields related to the Accounting Document.

 

Step – 3: Choose the Associated Data Sources

SriramBalaji_5-1753608115878.png

Click on “Associated Data Sources”

Note: Associated Data Sources will help us to combine the two different data sources into one CDS View by using a join condition set between two or more equal characteristics present in the Primary Data Source – A and Associated Date Sources – B that contains the same data type.

SriramBalaji_6-1753608115882.png

For Example:

The primary data source "I_JournalEntryOperationalView" does not include the "Payment Terms Description" field. Therefore, we must join it with the associated data source "I_PaymentTermsText" using a join condition to retrieve this field.

SriramBalaji_7-1753608115886.png

Select the “Join Condition” Icon.

 

SriramBalaji_8-1753608115890.png

Click on “Add”

 

SriramBalaji_9-1753608115892.png

Choose the common field that available in the both Primary & Associated Data Source to join.

 

SriramBalaji_10-1753608115893.png

Select the Value Type as “Field”

Click on F4 in the Value Field.

 

SriramBalaji_11-1753608115895.png

Find the corresponding "Payment Terms" mapping field in the Primary Data Source to link it with the field in the Associated Data Source.

 

SriramBalaji_12-1753608115898.png

Select the Value Type as “Session Variable”

Choose the Value as “System Language” and Click on “Close” button.

 

Step – 4: Choose the Elements (Fields) to be added in the CDS View

SriramBalaji_13-1753608115905.png

In the Elements Section, Click on “Add” button and Choose “Elements”.

SriramBalaji_14-1753608115908.png

In the Elements selection pop up screen,

Choose the “Elements (Fields)” from “I_JournalEntryOperationalView” you want to display in the CDS view and then Click on “OK”.

SriramBalaji_15-1753608115915.png

Total 142 Elements (Fields) have been selected for the CDS view.

 

Step – 5: Create User Defined Parameters

User-Defined Parameters:

Parameters usually require data input when your custom CDS view is executed. This data can then be used like a variable e.g. in filters, calculated fields or even in a join condition to another view. You can then refine them or just create your own parameters if you need them.

The Customer Aging Analysis Report will operate based on "Open Items at Key Date," mirroring the functionality found in reports like "Manage Customer Line Item" or "FBL5N."

The "Open Items at Key Date" logic ensures that when the report is run for a specific date (which can be in the past, present, or future), it will only display items that meet following criteria mentioned below:

  • The open items (Invoices, Payments, & Advances) were not yet cleared as of the specified key date will be included in the report.
  • The open items (Invoices, Payments, & Advances) were cleared after the specified key date will be included in the report.
  • The open items (Invoices, Payments, & Advances) were cleared before the specified key date will be excluded from the report.

This "Key Date" will serve as a crucial input on the report's selection screen, driving the logic for determining which open items are included in the Customer Aging Report.

SriramBalaji_16-1753608115919.png

In the Parameters Section, Click on “Add” button,

SriramBalaji_17-1753608115923.png

Enter the following information:

  • Name: Technical Name
  • Label: Name to be displayed in the output of the parameter
  • Data Type: “DATS” – Date (YYYYMMDD Format) Data type of the parameter.
  • Default Type and Value: “Manual” - Enter a manual parameter value in accordance with the data type syntax, e.g. for the data type DATS enter a manual value in the format YYYYMMDD.

Now the “Open Items at Key Date” Parameter is created. 

 

Step – 6: Add User Defined Parameters in the Elements (Fields)

SriramBalaji_18-1753608115930.png

In the Elements Section, Click on “Add” Button and Choose the “Parameters”.

SriramBalaji_19-1753608115931.png

Select the created “Open Items at Key Date” Parameter and Click on “OK” button.

SriramBalaji_20-1753608115939.png

Now the “Open Items at Key Date” Parameter has been added in the Elements.

 

Step – 7: Using “Filter” Applying the Logic for the Customer Aging Analysis Report

SriramBalaji_21-1753608115944.png

You can filter the information shown in your custom CDS view by setting up a condition, just like using the WHERE clause in SQL. This condition provides the view exactly what data to show.

Think of it like this:

The CDS view (I_JournalEntryOperationalView) which we are using that shows all the Accounting Document transactions in line item wise.

  • If you want to display only Customer related Accounting Transactions, you'd set a condition like "Account Type is equal to “D".
  • Or, if you only want to see Normal Transactions (Invoices, Payments) & Special GL Transactions (Advances), your condition would be "Special GL Code equal to “BLANK”, & “A”.

Once you set this condition (using either a simple editor or a form-based one), your CDS view will automatically filter its results, showing only the open items that match what you asked for. It's a way to fine-tune the data you see without having to look through everything.

We can use the form-based version to define simple filter conditions. In case you want to define more complex conditions, we can use expression-based version. Here, we have used expression-based version.

SriramBalaji_22-1753608115946.png

SriramBalaji_23-1753608115953.png

As per business requirement, to ensure the Customer Aging Analysis Report balances match with the "Manage Customer Line Items" balances, we've set up specific conditions for these fields: Account Type, Special GL Code, Posting Date, and Clearing Date in the Filter section using expression-based version.

 

Step – 8: Create Calculation Elements (Fields) – Overdue Days & Payment Terms Days

SriramBalaji_24-1753608115961.png

In the Elements section, click on “Add” button and Choose “Calculation” to create Overdue Days & Payment Terms Days fields for the report.

  1. Overdue Days

SriramBalaji_25-1753608115964.png

Enter the following information:

  • Name: Technical Name
  • Label: Name to be displayed in the output of the parameter
  • Choose as “Function” and Choose “Function Type – Date and Time”
  • Choose the respective “Function - DATS_DAYS_BETWEEN” and apply the below mentioned formula.
  • Then click on “Create”.

Note: The function DATS_DAYS_BETWEEN calculates the difference between two specified dates, date1 and date2, in days. The actual parameters must have the predefined data type DATS and should contain a valid date in the format YYYYMMDD.

The Formula we have applied to calculate the Overdue Days is Open Items Key Date (which was created as parameter for report execution) MINUS Net Due Date. 

 

  1. Payment Terms Days

SriramBalaji_26-1753608115967.png

Enter the following information:

  • Name: Technical Name
  • Label: Name to be displayed in the output of the parameter
  • Choose as “Function” and Choose “Function Type – Date and Time”
  • Choose the respective “Function - DATS_DAYS_BETWEEN” and apply the below mentioned formula.
  • Then click on “Create”.

The Formula we have applied to calculate the Payment Terms Days is Net Due Date MINUS Baseline Date.

SriramBalaji_27-1753608115974.png

Created Calculation Elements (Fields) for the report.

SriramBalaji_28-1753608115980.png

In the Element Properties Section, Maintain the Aggregation method as “No Operation” for the created Payment Term Days & Overdue Days Fields to convert the field into calculated measure for creating the Aging Buckets in the Custom Analytical Query APP.

 

Step – 9: Preview and Publish the created CDS view

SriramBalaji_29-1753608115983.png

In the Log section, check any error need to rectified before preview the CDS view.

Click on “Preview Data” button to display the values are coming as per the logic or not.

SriramBalaji_30-1753608115989.png

 

SriramBalaji_31-1753608115998.png

Created CDS View no of line items are matching with the Manage Customer Line Items.

SriramBalaji_32-1753608116004.png

Calculated Fields (Overdue Days, Payment Terms Days) are displaying with values in the CDS View according formula we have applied in the calculation function.

SriramBalaji_33-1753608116007.png

Once Check is successful, Go to “Next Steps” section.

Click on “Publish” button to publish the Created CDS View for Creating Analytical Queries.

In Part - 2, we'll dive into using the Custom Analytical Queries APP with our newly created Custom CDS View to build an AR Aging Analysis Report.

 

Understanding the Context of Brazil’s Tax Reform

Brazil has long been recognized as having one of the most complex tax environments in the world—particularly in the area of indirect taxation. With the recent approval of the Tax Reform, the country is entering a historic transition that will reshape how taxes are structured, calculated, and reported.

While the Reform’s primary objective is to simplify and modernize Brazil’s tax system, the legislation introduces a new framework that, in some cases, may still reflect the complexities that businesses—especially those using SAP—have struggled with for decades. For companies running SAP in Brazil, adapting to these changes will require a careful review and redesign of their tax configuration and reporting processes.

The Tax Reform aims to unify and streamline consumption taxes by replacing four existing taxes—PIS, COFINS, ICMS, and ISS—with two new taxes:

  • CBS (Contribution on Goods and Services): Managed by the federal government.
  • IBS (Tax on Goods and Services): Managed jointly by states and municipalities.
Pain points in the current system Pillars of the Tax Reform
Five Taxes, Multiple Rules The current framework is composed of five main taxes (ICMS, ISS, IPI, PIS, and COFINS), each governed by distinct rules, rates, and compliance requirements. Businesses must navigate: Federal, state, and municipal jurisdictions, Constantly changing legislation, Complex combinations of tax applicability by product, region, and transaction type.Fewer Taxes, Unified Rules The new system will replace multiple indirect taxes (ICMS, ISS, IPI, PIS, and COFINS) with two broad-based VATs: CBS (Contribuição sobre Bens e Serviços) at the federal level, IBS (Imposto sobre Bens e Serviços) at the state and municipal levels. Instead of a patchwork of conflicting laws, there will be a single national legislation governing these taxes, with federal entities allowed only to define general rates. This change reduces regional variations and legal uncertainty, streamlining tax configuration in SAP systems.
Complex Tax Calculation Scenarios Tax calculation methods vary drastically across processes and tax types. Companies must handle scenarios such as: Cumulative vs. Non-cumulative PIS/COFINS, ICMS-ST (Substituição Tributária) and its chain effects, “Gross-up” methodologies where taxes are part of the base for other taxes, DIFAL (ICMS for interstate operations to end-consumers), And the requirement to pay taxes at the point of origin, further complicating logistics and pricing models.Simplified Taxation at Destination A major change in the reform is the shift to destination-based taxation: Taxes will be calculated on the value-added to the transaction (“outside the price”), The tax is collected where the goods or services are consumed, not where they originate. This simplifies tax determination logic in SAP and removes the complexity of current interstate and intrastate tax rules (e.g., ICMS and DIFAL).
Tax Credit Restrictions and Residual Balances Legal constraints on credit utilization and the coexistence of multiple tax regimes result in: Inability to fully recover input tax credits, High levels of unrecoverable tax (custo Brasil), Manual tracking of eligible vs. non-eligible credits.Full Non-Cumulativity Under the new regime: Input tax credits will be fully allowed across the chain, without exceptions (except for personal-use items), Businesses will no longer face limitations or disallowances on eligible credits.
Proliferation of Tax Benefits and Incentives Numerous tax incentives—varying by industry, region, and government level—create a “tax war” among Brazilian states. These benefits: Are inconsistently applied or interpreted, Require constant legal analysis and configuration updates in SAP, Impact business competitiveness and profitability.Targeted Exceptions and Cashback Mechanisms While the system aims for uniformity, there will be: Limited exceptions for specific essential goods and services (as defined in Brazil’s Federal Constitution), Cashback mechanisms to support low-income consumers by refunding a portion of the tax. These features aim to balance tax fairness with social inclusion, while minimizing complexity for SAP configuration through predefined exception handling.
Accumulation of Credits and Bureaucratic Reimbursement The system often results in large accumulated tax credit balances, particularly for exporters and capital-intensive industries. However: The process to recover or offset these credits is highly bureaucratic, There are strict deadlines and documentation requirements, Reimbursement often takes years or is not feasible at all.Centralized Tax Administration and Guaranteed Reimbursement The administration of the new tax system will be handled by a Central Administrative Committee: This committee will oversee IBS collection and distribution across federal entities, It will operate independently from state or municipal treasuries, Tax credit reimbursements will be guaranteed and streamlined, reducing the current bureaucracy and delays faced by businesses. This model improves taxpayer security and greatly enhances the efficiency of credit refund processes — a significant benefit for SAP-managed financial and tax operations.
 

Tax Reform Transition Period in Brazil: What to Expect Between 2025 and 2033

Given its complexity, the transition to the new system won’t be immediate — it will unfold gradually over seven years, starting in 2025. The reform is structured into three key phases, each with distinct milestones and implementation challenges that businesses must prepare for.

presentacion-de-graficos-visuales-lineas-de-tiempo-profesional-infografica-multicolor_page-0001.jpg

Phase 1 – The Test Year: 2026

Although the reform is already under regulatory discussion in 2025, the practical transition begins in 2026, a year designated as a “testing period” — but only for the government. For companies, it’s not optional: your systems must be ready for production by January 2026.

During this test year, the CBS (Contribution on Goods and Services) and the IBS (Tax on Goods and Services) will start appearing on fiscal documents with a symbolic combined rate of 1% (0.9% for CBS and 0.1% for IBS). These fields are already integrated into the updated NF-e layout, requiring businesses to properly configure systems to support dual tax environments.

The goal is not to impact tax burden during this phase. The amounts paid can be credited against existing PIS, COFINS, ICMS, and ISS liabilities — ensuring fiscal neutrality. However, companies with large PIS/COFINS or ICMS credits may face cash flow pressure, since these new taxes must be collected even if they can’t yet be offset.

Note: Under certain conditions, the 1% may be waived if auxiliary obligations are correctly fulfilled — an item still under regulatory refinement in 2025.


Phase 2 – CBS Becomes Official: 2027

Starting January 2027, PIS and COFINS will be eliminated, and the CBS will take full effect. The IPI (Tax on Industrialized Products) will be reduced to zero, except for products manufactured in the Free Trade Zone (ZFM), which will retain IPI under current rates.

 

This year also marks the introduction of the Selective Tax (IS) — aimed at discouraging the consumption of harmful goods (e.g., tobacco, alcohol, sugary drinks).

Companies will begin to feel the true operational and financial impact of the reform, particularly those who previously relied on tax incentives or special regimes that won’t carry over under the new legislation.

From a systems perspective, 2027 is particularly challenging: businesses must operate dual tax calculation engines — one for the old regime and one for the new — requiring careful process segregation and configuration.


Phase 3 – ICMS and ISS Phase-Out: 2029 to 2032

The transition of state and municipal taxes (ICMS and ISS) begins in 2029, with rates decreasing by 10% per year. At the same time, IBS will be gradually increased to replace them.

By 2033, the switchover will be complete. All operations will be fully taxed under the new IVA-style model, and the legacy tax system will be fully retired. This will finally simplify Brazil’s complex, multi-jurisdictional tax framework — but only after years of preparation, dual operations, and system adjustments.


2025 – The Year of Preparation

Although 2026 is the start of official implementation, 2025 is the year of planning and readiness. Companies must:

  • Update systems for the new NF-e layout with CBS/IBS fields
  • Train tax and IT teams on the dual tax model
  • Evaluate cash flow impacts of credit recognition timing (tax credits will only be valid upon actual tax payment)
  • Simulate operations with test environments starting in September/October 2025
  • Define internal governance, separating responsibilities for old and new tax operations

Key Takeaways

  • The test phase is mandatory for companies, not optional.
  • The 1% rate in 2026 is not an added tax burden, but system readiness is essential.
  • Dual tax environments (old and new) will coexist from 2026 to 2032.
  • The complete transition will take seven years, concluding in 2033.
  • Companies must start adapting now to avoid risks of non-compliance, NF-e rejection, or financial disruptions.
The Business Impact of Brazil’s Tax Reform

Brazil’s Tax Reform represents a massive shift in the country’s indirect tax system, and its effects go far beyond the tax team. To succeed during this transition, companies must assess how the Reform will reshape every area of their operations — not just in 2026, but across the entire transition period until 2033.

It will require your company to reassess its entire SAP landscape, business structure, finance operations, and strategic positioning in Brazil.

Tax Reform: What’s Changing, and How It Affects Your Business

tax-business-impact-of-brazils-tax-reform.png

Key References and Official Sources for Brazil’s Tax Reform

Legislative Framework

Constitutional Amendment No. 132/2023

Emenda Constitucional nº 132, de 20 de dezembro de 2023
This constitutional amendment establishes the foundation for Brazil’s Tax Reform. It introduces the unification of federal, state, and municipal consumption taxes, leading to the creation of CBS and IBS, and outlines the reform’s transition timeline.
Access the full text (in Portuguese)

Complementary Law No. 214/2025

Lei Complementar nº 214, de 16 de janeiro de 2025
This law provides regulatory detail for the implementation of the CBS (Contribuição sobre Bens e Serviços), outlining the tax rules, credit system, scope, and legal obligations for taxpayers.

 

 Access the full text (in Portuguese)

Electronic Tax Documents (DFe) and Technical Specifications

NF-e and NFC-e Technical Note 2024.002 – Version 1.0

Projeto Reforma Tributária do Consumo – Adequações NF-e / NFC-e
Nota Técnica 2024.002 – Versão 1.0, publicada em 01/08/2024
Outlines the required layout changes in the Nota Fiscal Eletrônica (NF-e) and NFC-e to accommodate the new CBS and IBS tax fields. These changes are crucial for companies issuing invoices in Brazil via SAP.

 

 Available on the National NF-e Portal: https://www.nfe.fazenda.gov.br/

CT-e and NF3-e Technical Note 2024.001 – Version 1.0

Projeto Reforma Tributária do Consumo – Adequação DFe (CT-e / NF3-e)
Nota Técnica 2024.001 – Versão 1.0, publicada em 31/07/2024
Provides technical guidance on updating the layout of CT-e and NF3-e documents to comply with the tax reform’s new data structure and validation rules.

 

 Available on the CT-e Portal: https://www.cte.fazenda.gov.br/


Additional Resources

Receita Federal do Brasil (RFB)
The Brazilian Federal Revenue Service is responsible for issuing regulations and operational guidelines for CBS and coordinating the integration of tax systems during the transition.

 

 https://www.gov.br/receitafederal

Conselho Nacional de Política Fazendária (CONFAZ)
For ICMS and IBS transition coordination, including protocols, conventions, and notes relevant to the states.

 

 https://www.confaz.fazenda.gov.br

Ministério da Fazenda (Ministry of Finance)
Provides policy updates and fiscal impact analyses related to the Reform.

 

 https://www.gov.br/fazenda

Disclaimer: The information above is valid as of the date of publication. Given the dynamic nature of regulatory updates in Brazil, we recommend monitoring official channels and consulting with qualified advisors to stay current.

Basic Payment using Automatic Payment Program F110.

Mastering Automatic Payments in SAP: A Step-by-Step Guide to F110
Tired of manual payment processing in SAP? Discover how to streamline your financial workflows using the Automatic Payment Program (APP) with T-code F110. In this blog, we’ll walk you through everything—from checking open items to executing payment runs, including tips on handling selective payments, setting parameters, and understanding the Printout/Data Medium section. Perfect for SAP FICO beginners and practitioners aiming to automate vendor payments with confidence.

Understanding Automatic Payment Program Configuration.

Tired of manual payment chaos in SAP? Discover how the Automatic Payment Program (APP) simplifies bulk payments, reduces human error, and ensures timely vendor settlements. From real-world use cases to hands-on configuration, this guide walks you through everything, step by step. Whether you're setting up payment methods, ranking banks, or defining available limits, this blog has it all covered in one practical flow. Automate smart. Pay smarter.

Explanation Document Splitting with Configuration Steps & Various Real Time Scenarios!

 SAP Document Splitting allows you to break down financial transactions into detailed line items based on predefined characteristics like profit center or segment, enabling accurate financial reporting at various levels. Configuration involves classifying G/L accounts and document types, defining zero-balance clearing accounts, and specifying splitting characteristics, followed by activation at the client level. Real-time scenarios include passive splitting during payment postings based on prior invoice splits and active splitting based on predefined rules.

Understanding the Role of Scope Items in SAP Public Cloud Implementations

Hello Everyone,
I'm excited to share a short blog on Scope Items in SAP S/4HANA Public Cloud - a key concept that drives successful implementations. In this post, I’ve summarized what scope items are, their role in fit-to-standard workshops, and how they support faster, standardized deployments using SAP Activate.
Check it out and feel free to share your thoughts!

❌
❌