top of page

Implementing Brazil Localization

 

When a company plans to implement SAP system in Brazil. It can count on a vast localization, tested in thousands of previous companies. However, there is a great complexity in the Brazilian localization, requiring a significant effort in configuring legal requirements.

 

Brazilian companies are used to this complexity and usually face this challenge with due preparation, but foreign companies planning to rollout risk underestimating the effort required.

 

An important topic is taxes. Typically, countries with a simple VAT type handle all tax activities in finance. As Brazil doesn't have VAT, but CBT, a much more complex type of indirect tax with several taxes levied by different tax authorities, the tax configuration is in charge of logistics (SD/MM), while finance (FI) is responsible for a portion withholding tax only.

 

General Information

  • ISO Codes: BR / BRA

  • Country Codes:  +55

  • Capital:  Brasilia (Not Rio De Janeiro)

  • Official Language:  Portuguese (Only Official Language)

  • Currency: BRL (Brazilian Real)

 

Complexity Information

  • Complexity Ranking:  Very High

  • Frequency of Legal Changes:  Extremely Dynamic

  • Interpretation of Law Text:  Extremely Difficult

 

Main SAP localization points per module

 

  • Finance

    • Financial Accounting

    • Treasure (Accounts Payable, Receivable and Bank Accounting)

    • Taxation (Withholding Taxes)

 

  • Controlling

    • Actual Costing (Material Ledger)

    • WIP Revaluation 

 

  • Logistics

    • Taxation (Condition Based Tax Calculation)

    • Nota Fiscal (e-Invoicing)

    • Nota Fiscal Inbound Automation

    • Sales Processes (Localized Sales and Resales Processes)

    • Procurement Processes (Localized Purchasing and Special Processes)

 

  • Tax Solution

    • SPEDs (Localized e-Reporting)

SAP OSS Notes for Brazil Localization

 

Here you can see some important OSS notes for Brazil Localization.

OSS Note
Description
Type
Region
Component
Explanation
2544766
Brazil Withholding Taxes Troubleshooting Guide
Taxes
Brazil
FI-LOC-FI-BR-WHT
2374911
FAQ of Brazil GRC NF-e Inbound Automation solution scenarios
NF-e
Brazil
FI-LOC-NFE-BR-IN
2776753
Electronic Document Processing for Brazil Inbound NF-e: Implementation Overview
NF-e
Brazil
CA-GTF-CSC-EDO-BR
3298377
BR_Brazil Localization - Setup & Taxes
Taxes
Brazil
SBO-REP-FIN-FIN
108559
Historical Description
Reporting
Brazil
XX-CSC-BR
2490213
TDF Add-on Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR
2924050
TDF: ECD Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR
2922987
TDF: ECF Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR
2924063
TDF: EFD Contribuições Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR
2562251
TDF: CIAP Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR-CIAP
2922995
TDF: EFD REINF Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR-ESO
2922996
TDF: eSocial Troubleshooting Guide
TDF
Brazil
FIN-TMF-BR-ESO

Purchasing and Sales Processes

 

These are some examples of localized logistics processes.

 

Although sometimes there is an inherent complexity in SD pricing, in Brazil, the complexity of the operation and purchasing processes, including also inventory management, can be much greater in procurement (MM). And in sales, if the company sells not only goods, but services, then the complexity of sales processes can increase significantly.

 

Sales (SD)

  • Consignment Sales

  • Future Delivery Sales

  • Triangular Transactions (Third Party Sales)

  • Sale with Returnable Packaging

  • Sales Return (Return with original NF and  issuing incoming NF)

  • Sales Return (Return with NF and issued by  the customer)

 

Procurement (MM)

  • Purchase Operations with Goods Receipt for:

    • Industrialization

    • Resales

    • Use and Consumption

    • Assets

    • Services

    • Freight

Complexity of Brazilian Localization

 

When a company plans to implement SAP system in Brazil. It can count on a vast localization, tested in thousands of previous companies. However, there is a great complexity in the Brazilian localization, requiring a significant effort in configuring legal requirements.

 

Brazilian companies are used to this complexity and usually face this challenge with due preparation, but foreign companies planning to rollout risk underestimating the effort required.

Legal Requeriment
Impact on SAP
Fiscal Bookkeeping on Branch Level
"Business Place" as an additional organizational unit
Federal, State and Municipal Taxation
Very Complex Tax Calculation
Tax On Circulation of Goods
Tax processes impacting logistics, for example, tax calculation in stock transfers
Electronic Tax Receipt
Online authorization process requiring complex messaging architecture and impacting logistics  processes
Fiscal Bookkeeping
Extremely complex reports on virtually all of  the Company's physical, accounting and tax flows item by item. Public System of Digital Bookkeeping (SPED). Varios  magnetic files on the federal, state and municipal levels.

Localization Effort

 

Each country may have its degrees of complexity in its localization.

Take this chart as an example. Having United Kingdom with low complexity, Mexico with medium complexity and Russia and Brazil with high complexity.

Unlike Russia, Brazil has the greatest complexity in logistics. That makes Brazil so complex. 

 

The Brazil localization is embedded in the logistics processes, as, unlike other countries with simple VAT in their financial processes, the Condition Based Tax Calculation is deeply rooted in the inbound and outbound processes.

Brazil Localization Complexity Comparison

Look this chart with an example of localization effort Financial versus Logistics

Brazilian Tax Complexity Among Developing Countries

 

Comparing the legal requirements complexity, among developing countries, Brazil has not developed an optimized tax reform, like developed countries or even developing countries, causing a complex tax calculation compounded by different jurisdictions such as federal, state and municipal for goods circulation, industrialization, consumption, services, social security and others.

Looking in the map below you can see the average hours per year that a company spends to prepare and pay taxes. 

 

Brazil is by far the 1st country with the largest number of hours spent to prepare and pay taxes, with more than 1,500 hours in total.

You can see on the map the list of developed, developing and under developed countries and compared to other countries around the world, the complexity and time to prepare and pay taxes put Brazil in a unique group with characteristics that make it so hard to do so.

Developed  Developing  Least developed  Data unavailable

How to Identify the correct SAP component for Brazil

 

Below you can see the SAP components related to Brazil in SAP support marketplace. These components are important to narrow Brazil Support SAP Notes to find the right solution for your issue. It is also important if you want to raise a ticket regarding the Brazilian localization solution in SAP Product Support.


SAP Support Marketplace:

https://support.sap.com/

SAP Components

 

XX-CSC-BR

 

Subjects: Installation, localization Brazil in general about covered processes, what is supported and more.

 

XX-CSC-BR-MM

 

Subjects: Material movements in general, Nota Fiscal creation via material movement process, accounting document creation, Calculation Procedure TAXBRA / TAXBRJ and more.

 

Hint: All the Process will be covered, such as, Subcontracting, Consignment, STO, Stock Transfer via MM, Ordinary Purchase Order process, Future Delivery, Third Party, RTP and more.

 

XX-CSC-BR-SD

 

Subjects: Sales orders, agreements, billing process, delivery process, calculation procedure RVABRA and more.

 

XX-CSC-BR-FI

 

Subjects: Payments in generation, integration, withholding taxes in payment time and more.

 

XX-CSC-BR-NFE

 

Subjects: Electronic Nota Fiscal, issues with fields mapping, Nota fiscal Monitor, Notas Fiscais rejected reason and more.

 

XX-CSC-BR-NFEIN

 

Subjects: GRC NFE Incoming Automation, issues in the fiscal / logistic monitor, regarding the process, customizations, posting automation MIGO / MIRO and more.

 

SLL-NFE

 

Subjects: SAP GRC NFE product, performance, Notas Fiscais that got stuck in GRC, sending to SEFAZ, receiving the reply from SEFAZ, batches generation, signature and more.

 

XX-CSC-BR-REP

 

Subjects: Legal reports in all process, SPED EFD, SPED ECD, Model 1, Model 2, Model 7 and more.


Hint: You can see more by checking the SAP Note 1904179 (Brazil: How to Identify the correct component for Support).

Chart Of Accounts Template for Brazil

You can use this available template to get an idea of what accounts are needed to be created for Brazil in the global chart of accounts. Keep in mind that the actual accounts required depend on the processes implemented in the company.

 

​You can see the official Chart of Accounts template (SAP S/4HANA 2020) in the table below.

Account
Description
BR
Acc Type
Functional Area
Recon Acc
Tax Categ
Post Auto
OI Manage
Sort key
Without Tax
Only Local Crcy
0012021000
Short Term Investments, Unaffiliated(TRM)
BS
001
X
0012021100
Short Term Investments, Affili., No Consolid.(TRM)
BS
001
X
0012021200
Short Term Investments, Affiliated, Consolid.(TRM)
BS
001
X
0012041000
Derivatives Valuation Balances, Unaffiliated(TRM)
BS
001
X
0012041100
Derivatives Valuation Bal, Affil., No Consol.(TRM)
BS
001
X
0012041200
Derivatives Valuation Bal, Affili., Consolid.(TRM)
BS
001
X
0012042000
Derivatives Assets, Unaffiliated(TRM)
BS
001
X
0012042100
Derivatives Assets, Affiliated, No Consolid.(TRM)
BS
001
X
0012042200
Derivatives Assets, Affiliated, Consolidation(TRM)
BS
001
X
0012100000
Receivables Domestic
BS
D
*
x
0012100100
Receivables Domestic - One Time Accounts
BS
D
*
0012100200
Receivable - Contract Accounts
BS
V
*
X

Chart Of Accounts Referential for Brazil

Brazil has a Country Chart of Accounts, called the Referential Chart of Accounts, which is used specifically in the Electronic Report issued to the Government, but this does not mean that it is necessary to create a Country Chart of Accounts. Depending on the 3rd party solution, it can be provided in different ways.

You can see the official Reference Chart of Accounts in the table below.

Accounts
Description
Level
Type
Nature
Valid From
Valid To
1.01.01.09.55
(-) Perdas por Redução ao Valor Recuperável (Impairment)- Valores Mobiliários - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.09.70
Subconta - Ajuste a Valor Justo - Não Hedge - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.09.90
Subconta – Adoção Inicial -  Valores Mobiliários – Não Hedge - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.10
VALORES MOBILIÁRIOS - HEDGE - NO EXTERIOR
4
Synthetic
Asset
01/01/2015
1.01.01.10.01
Derivativos - Hedge Valor Justo - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.10.02
Derivativos - Hedge Fluxo de Caixa - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.10.03
Derivativos - Hedge Investimento no Exterior - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.10.70
Subconta - Ajuste a Valor Justo - Valores Mobiliários – Hedge - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.10.90
Subconta – Adoção Inicial -  Valores Mobiliários – Hedge - No Exterior
5
Analytic
Asset
01/01/2015
1.01.01.40
RECURSOS NO EXTERIOR DECORRENTES DE EXPORTAÇÃO
4
Synthetic
Asset
01/01/2015
1.01.01.40.01
Recursos no Exterior Decorrentes de Exportação
5
Analytic
Asset
01/01/2015
1.01.01.99
OUTRAS DISPONIBILIDADES
4
Synthetic
Asset
01/01/2015

CNPJ (National Registry of Legal Entities)

 

The CNPJ is the Company ID. It serves to identify the business in the most diverse types of activities, such as issuing nota fiscal (e-invoice) or paying taxes.

In countries like UK and many others, the Company ID is basically the number that the company is legally registered under, but in order to pay taxes, they need to issue a VAT number.

In other words, the CNPJ is much more than a simple Company ID. In Brazil, as there is no VAT, but CBT (Condition Based-Tax Calculation), a much more complex tax system, the CNPJ is used both as a legal registration number as to pay taxes.

In short: You can consider CNPJ more like: Company ID + VAT Number.

 

Warning: There are other types of registration numbers for pay taxes. An example is the IE (State registration). If the company sells products, the ICMS (Goods Movement Tax) needs to be paid under IE number. Or even the Municipal registration, to pay the ISS (Service Tax) if the company provides services.

 

How the CNPJs of the main office and branches work

Looking at the example below, you can see Company A with 2 branches and Company B with no branch. With that example, in SAP, it is necessary to create 2 Company Codes and 4 Business Places.

Example:

  • Company Code [ BR01 ] = "Company A"

    • Business Place [ 0001 ] = "Main Office"

    • Business Place [ 0002 ] = "Branch 1"

    • Business Place [ 0003 ] = "Branch 2"

  • Company Code [ BR02 ] = "Company B"

    • Business Place [ 0001 ] = "Main Office"

 

Warning: Business place creation is required for tax purposes.

CNPJ Coding

It consists in 14 numerical digits (Example: 23.456.789/0001-99),

and can be divided in blocks.

  • 1º Block: The initial 8 digits are the registration block (Example: 23.456.789)

  • 2º Block: The 4 subsequently digits are the type, main office or branches. (Example: 0001 means main office, 0002 branch one, 0003 branch two and so on...) 

  • 3º Block: The last 2 digits are check digits. It is created by Government automatically using the other numbers calculated in an algorithm (Example: 99)

It can be verified, if a company is legally registered in the Brazilian government system, on the official webpage below. (The original page is in Portuguese language)

  1. Insert the CNPJ number 

  2. Validate the Captcha

  3. Click in Consult

CNPJ Example

You can see an electronic CNPJ registration form issued by the Brazilian government (the data content in the fields has been suppressed for legal reasons).

  • Numero de Inscrição: CNPJ (Company ID)

  • Data de Abertura: Opening Date

  • Nome Empresarial: Company Name

  • Titulo do Estabelecimento (Nome de Fantasia): Trade Name

  • Codigo e Descrição da Atividade Economica Principal: CNAE (Main)

  • Codigo e Descrição da Atividades Economicas Secundarias: CNAE (Secondary)

  • Codigo e Descricao da Natureza Juridica: Nature of the Company

  • Logradoura: Street (Address)

  • Numero: Street Number (Address)

  • Complemento: Flat Number

  • CEP: Zip Code / Post Code

  • Bairro / Distrito: District

  • Municipio: County

  • UF: State

  • Endereço Eletronico: Email

  • Telefone: Phone Number

  • Ente Federativo Responsavel (EFR): City Hall

  • Ente Federativo Responsavel (EFR): City Hall

  • Situacao Cadastral: Registration Status

  • Data da Situacao Cadastral: Registration Status Date

  • Motivo de Situacao Cadastral: Registration Status Reason

  • Situacao Especial: Special Status

  • Data da Situacao Especial: Special Status Date

CNPJ / Branch | SAP Configuration

Company Code Brazil

T-Code: OBY6

To configure the Brazilian company code with CNPJ number.

Click the "Additional Data" buttom. 

SAP OBY6 CNPJ Compay Code Brazil

You can see the place for the CNPJ:

 

8 digits | Registration block

4 digits | Main office

The 2-digit verification code is not required, SAP has the logic to calculate the verification algorithm correctly.

SAP OBY6 CNPJ Additional Data

SAP Business Place

T-Code: SPRO

Path: Cross-Application Components -> General Application Functions -> Nota fiscal -> CNPJ Business Place -> Define Business Places

SAP CNPJ Branch Businss Place

If the company has other branches, just create them in the business place configuration. The branches are always sequential "0002", "0003", "0004" and so on.

CNPJ Check

CNPJ Duplicity Check

T-Code: BUPA_TAXNUMTYPE

Turn on the Category BR1.

Activating the duplicity check you can ensure that won't have any Business Partner duplicated.

 

BR1 | CNPJ Number

BR2 | CPF Number

BR3 | State Tax Number

BR4 | Municipal Tax Number

SAP BUPA_TAXNUMTYPE

Hint: You can also activate it for natural person business partner (CPF), and ensure a more accurate check for State tax number and Municipal tax number in the Business Partner master record.

Warning: The screens, path and information may be different from SAP to SAP, depending on the version. Those screens above are from SAP S/4 HANA.

Brazilian Banking System

 

BACEN / BCB / BC: Banco Central Brasileiro / Brazilian Central Bank

The Brazilian Central Bank is an autonomous federal agency, which means that it has autonomy from other public authorities. In other words, it is not subordinate to any other body, but operates under the supervision of the federal government and is linked to the Ministry of Economy.

 

Bacen aims to guarantee the stability of the purchasing power of the national currency in the country and is responsible for regulating the financial system.

 

Being responsible for regulation, he controls financial institutions that may or may not operate in Brazil. Any and all financial market institutions are subject to inspections by Bacen and require authorization to operate.

 

Due to this regulatory action in relation to banks and financial institutions, Bacen is popularly called the “bank of banks”. Without its action, economic relations between banks and the population would not be viable.

 

For example, banks are free to offer their products, but they must follow strict rules on how to operate in the market. Thus, the population is “protected” from abuse by financial institutions.

SPB: Sistema de Pagamentos Brasileiro / Brazilian Payment System

The SPB works like a web, structured by several threads that support the Brazilian Payment System. It is made up of the BACEN's financial institutions and some other entities, such as the Central for Custody and Financial Settlement of Private Securities (CETIP Central de Custodia e Liquidacao Financeira de Titulos Privados). In this way, together, all the institutions that form the SPB.

SPB works at the forefront of processes involving financial movements between economic agents. Therefore, it is the responsibility of this system to ensure that all these operations are carried out quickly and quickly. SPB also settles payments to legal entities and individuals.

In other words, without it it wouldn't be possible to have PIX. In this sense, settlement carried out by SPB (and also by SPI, the Instant Payment System) means the transfer of values between accounts, making money circulate safely.

SPB Payment Methods Statistics

The BACEN publishes information related to the various retail payment instruments and credit transfers used in Brazil. Those datas are collected and disclosed by SPB using these sources below.

Data Published / Updated Monthly

  • PIX (source: SPI and documento 1201)

  • TED (source: CIP-SITRAF and STR)

  • Boletos (source: CIP-SILOC)

  • DOC and TEC (source: CIP-SILOC)

  • Check / Cheque (source: Compe)

Data Published / Updated Quarterly

  • Credit Cards, Debit Cards and Prepaid Cards (fonte: documentos 6308 e 6334)

Data Published / Updated Semiannually

  • Utility payments, Cash Withdrawals, Intrabank Transfers and Direct Debit (source: documento 6209)

SPI: Sistema de Pagamentos Instantaneos / Instant Payment System

The SPI is the centralized and unique infrastructure for settling instant payments between different institutions in Brazil.

The SPI operation, managed by the BCB, began in November 2020.

SPI is a system that performs Real-Time Gross Settlement (LBTR Liquidacao Bruta em Tempo Real), that is, it processes and settles transaction by transaction. Once settled, transactions are irrevocable.

Instant payments are settled with entries in specific purpose accounts that institutions directly participating in the system maintain at the BACEN, called Instant Payment Accounts or "PI Accounts" (Contas Pagamento Instantaneo - Contas PI). To guarantee the solidity of the system, there is no possibility of overdrafts, that is, negative balances in "PI Accounts" are not permitted.

In Summary: The Instant Payment System (SPI) is a specific structure for operating payments with PIX. The system is focused on the settlement of these payments between existing institutions in Brazil and began to be part of the Central Bank in November 2020, taking the idea of PIX off the ground.

DICT: Diretorio de Identificadores de Contas Transacionais / Directory of Transactional Account Identifiers

The DICT is a type of database with information on receiving users and their accounts, which works as a security mechanism.

For example, during a transaction via PIX, the data is available in the DICT to complete payments. It is the Transactional Account Identifier Directory that identifies these accounts for the transaction.

 

Let's assume that an email used by someone as a PIX key belongs to that person's bank account. It is the DICT who “informs” PIX about this, therefore making transfers possible. This email example could be any other PIX key, such as CPF, telephone number, etc.

 

This directory makes payment initiations more agile, requesting only basic information to carry out transfers.

IP: Instituição de Pagamento / Payment Institution

An IP is the abbreviation for Payment Institution, and can be a company that only offers payment services, while banks go beyond that, proposing, for example, financing, loans, etc.

 

It is through an IP that money moves and payments are completed safely, as it aims to enable payments without directly depending on a relationship with banks or financial institutions.

PSP: Provedor de Serviço de Pagamento / Payment Service Provider

PSP, is the term used to define a kind of umbrella that brings together all institutions participating in PIX. Therefore, it is possible to say that PSPs are within the payments market and are financial institutions that use PIX and participate in all this dynamics, performing services efficiently.

Participation in SPI Process Flow

BACEN Participacao SPI

Ways to access the SPI

BACEN Acessos SPI

Treasure (Accounts Payable, Receivable and Bank Accounting)

 

SAP localization offers most payment formats on the market to meet the specific requirements of major Brazilian banks.

 

The Main Brazilian Banks

  • Itau  (Bank Code 341)

  • Bradesco  (Bank Code  237)

  • Santander  (Bank Code  033)

  • Banco do Brasil  (Bank Code  001)

  • Caixa Economica Federal  (Bank Code  104)

  • HSBC  (Bank Code  399)

  • Citibank  (Bank Code  745)

 

Data Medium Exchange

SAP supports outgoing (sent to your bank) and incoming (received from your bank) files for the following formats:

Brazilian Bank File Formats: Flat File (Not XML)

Accounts Payable - Vendor (Remittance and Return)

  • Itau

    • Layout: Itau 240 (SISPAG)

    • ERPFI: Versions 010/020/050/080

  • Bradesco

    • Layout: Bradesco 500 (PAGFOR)

    • Layout: Bradesco HR 200 (Folha)

    • Layout: Bradesco CNAB 240 (PFEB)

  • Febraban

    • Layout: Febraban/CNAB 240

    • Segment: A, B, J

    • ERPFI: Versions 030/040/050/087

    • DDA [ERPFI: Version 084 / Segment: G and H]

Accounts Receivable - Customer (Remittance and Return)

  • Itau

    • Layout: CNAB 400

    • Segment: 0, 1, 9

  • Bradesco 

    • Layout: Cobranca Bradesco 400

    • Layout: Bradesco CNAB 240

  • Febraban

    • Layout: Febraban/CNAB 240

    • Segment: P, Q, T, U

    • ERPFI: Versions 084/087

Hint: Febraban format is used by several Brazilian banks

 

Payment Methods

The most common interbank payment schemes in Brazil

 

Accounts Receivable (Incoming Payments)

  • Duplicata

    • Option 1 - SAP ECC Standard:

      • Payment Method: A

      • Program: RFFOBR_A

      • Formats: Itau Cobranca 400, Bradesco CNAB 400, Febraban CNAB 240

    • Option 2 - SAP S/4 Standard using DMEEX:

      • Payment Medium Format: BR_FEBRABAN_P

      • Formats: Febraban CNAB 240

      • Format Supplement: DUPLIC

If you employ a duplicata payment method, what you create out of the payment run is called duplicata, since it duplicates the information you already sent your customer in the invoice (it is a type of trade bill). The system generates a duplicata for each open item. In most cases, you send a DME file, containing the duplicata information, to your bank (you can also send a paper payment list, called a borderô).

  • Boleto

    • Option 1 - SAP ECC Standard:

      • Payment Method: D

      • Program: RFFOBR_D

      • Formats: Itau Cobranca 400, Bradesco CNAB 400, Febraban CNAB 240

    • Option 2 - SAP S/4 Standard using DMEEX:

      • Payment Medium Format: BR_FEBRABAN_P

      • Formats: Febraban CNAB 240

      • Format Supplement: BOLETO/DUPLIC

This payment method is similar to the duplicata one, except that a company or bank can print its own boletos. For example, to save the fee charged by the bank for this service, or to save time and receive the payment quicker. In this case, the company also sends the duplicata DME file to the bank and processing is the same as above.

Process Flow

  1. The system generates a Boleto/Duplicata file with the relevant program.

  2. You send the DME file to your bank

    Each duplicata contained in the file is represented by a unique duplicata number, called "Seu numero".

  3. The bank confirms it has received your file by sending you a return file (return file).

  4. You import this file (T-Code: FF_5) and the system updates the following information in the related open items:

    • In the SAP Open Item Field: House bank | With the information: Bank

    • In the SAP Open Item Field: Reference Key 3 | With the information: Duplicata number assigned by the bank (Nosso Numero)

    • In the SAP Open Item Field: Reference Key 1 | With the information: Bank account statement number and item number within the statement

    • In the SAP Open Item Field: Reference Key 2 | With the information: Collection agency (agencia cobradora)

Accounts Payable (Outgoing Payments)​​

  • TED

    • It stands for "Transferencia Eletronica Direta" or in English "Direct Electronic Transfer"

    • Transfer same day (respecting day and time)

    • Non-limited value

  • Transferencia

  • PIX

    • PIX is not a acronym. it's more like a brand to refer to technology, pixels and transactions

    • Created in 2020 by BACEN (Brazilian Central Bank)

    • Transfer in seconds

    • Non-limited value

  • DDA (Debito Direto Autorizado / Authorized Direct Debit)

Unusual interbank payment schemes in Brazil

 

Accounts Receivable (Incoming Payments)

  • DA (Debito Automatico / Automatic Debit or Direct Debit)

    • Differences: The DDA allows you to check payment slips issued using your CPF or CNPJ in a single place. DA pays registered accounts automatically (and each system works for different types of accounts)

  • Checks / Cheques

    • SAP ECC Standard Template:

      • Payment Method: C

      • Program: RFFOUS_C

  • Vendor Operation (Operacao Vendor)

    • SAP ECC Standard Template:

      • Payment Method: V

      • Program: RFFOBR_V

DDA vs DA

DDA (Debito Direto Autorizado / Authorized Direct Debit)

  • What it does? - Allows you to check all billing slips (Boletos) issued using someone's CPF or CNPJ on the app, internet banking and other electronic channels

  • How it works?

  • Allowed Bills - Billing slips (Boletos), such as condominium, school, college and health care

 

DA (Debito Automatico / Automatic Debit or Direct Debit)

  • What it does? - Automatically pays monthly bills using the account balance

  • How it works? - When you register a direct debit bill, payment is made automatically using the account balance on the due date

  • Allowed Bills - Utility bills and some taxes, such as water, electricity, telephone, internet and IPTU (Imposto Predial e Territorial Urbano / Property tax)

Deprecated Interbank Payment Schemes

Accounts Payable (Outgoing Payments)​

  • DOC

    • It stands for "Documento de Ordem de Credito" or in english "Credit Order Document"

    • Created in 1985 by BACEN (Brazilian Central Bank)

    • Transfer 1-2 banking days

    • Limited value R$ 4.999,99

    • Deprecated in 2024 (It was replaced by PIX)

  • TEC​

    • It stands for "Transferencia Especial de Credito" or in English "Special Credit Transfer"

    • Transfer same day

    • Limited value R$ 4.999,99

    • Deprecated in 2024 (It was replaced by PIX)

PIX (Payment Method)

 

In Brazil, a new instant payment method is introduced that enables electronic money transfers in real-time available 24/7 between accounts without any intermediary, bring more convenience to the consumer in their financial transactions.

The system that enables this electronic money transfer is called PIX, and falls under the responsibility of the Central Bank in Brazil.

 

Pix is instant payment system, allowing send and receive money in a manner of a couple seconds. You can pay bills and purchases or make transfers instantly. The system is another option for boleto, TED, DOC or even debit / credit card. The best thing is that the service is free for Individuals.

The Pix icon is inside the banking application and internet banking, as well as other features, such as DOC and TED. The Pix key links the customer's information to a bank account (identification of the financial institution, branch number, account number and type of account), you can recognize it as an alias to the bank account and, to make a Pix, just know the key or read the recipient's QR code. In addition, Pix can be done on any day and time.

 

For PIX payments, you can:

 

  • Use a QR code generated by the payment system (PIX)

  • Use a PIX key

    • Email

    • Phone Number

    • CNPJ/CPF

    • Random key (a set of random number, letters and symbols)

    • Bank account

* Formats defined by FEBRABAN (CNAB 240 and CNAB 750)

PIX Flow

Historical Description

Historical description is a detailed and clear explanatory description for every line item posted in the Brazilian Accounting Books, that will be showed in the accounting statements. (This is a Brazilian legal requirements, and it is mandatory).

 

Issue: Many postings in SAP are automatic postings and they are created with field BSEG-SGTXT in blank, or even manual posting can be created with no description by key user. Making the accounting book not being in compliance with Brazilian legal requirements.

Standard Solution: SAP released the OSS note "108559" with the Historical description solution, that creates a automatic description for each line item (BSEG-SGTXT) posted in blank in accounting book for the Brazilian Company Codes.

Standard Solution | Step by Step

  1. Create a Function (ABAP Step)

  2. Create Text for the Function (ABAP Step)

  3. Maintain Client-Specific User Exits (ABAP Step)

  4. Create a Substitution Rule (FI Consultant Step)

  5. Activate the Substitution Rule (FI Consultant Step)

  6. Enhance the Function Logic (ABAP Step) (Optional)

1. Create function Z_1B_HISTORICAL_DESCRIPTION as described

  • TCode: SE37

  • Function name: Z_1B_HISTORICAL_DESCRIPTION

  • Code: Copy and Past the code below

========================================================================
function z_1b_historical_description.
*"----------------------------------------------------------------------
*"*"Local interface:
*"       IMPORTING
*"            VALUE(LINE_BSEG) LIKE  BSEG STRUCTURE  BSEG
*"            VALUE(LINE_BKPF) LIKE  BKPF STRUCTURE  BKPF
*"       EXPORTING
*"             VALUE(E_SGTXT) TYPE  C
*"----------------------------------------------------------------------

tables:
  vbrp, vbak, tvakt, kna1, lfa1, skat, t001, mseg, t156t, t003t.

data:
  hlp_text(100) type c, account_name(20) type c.

  e_sgtxt = line_bseg-sgtxt.

* Text empty ?
  check line_bseg-sgtxt = space.

  clear e_sgtxt.

* Document type
  select single * from t003t where spras = sy-langu
                              and blart = line_bkpf-blart.

  e_sgtxt(20) = t003t-ltext.

  case line_bseg-koart.
    when 'D'.
      select single * from kna1 where kunnr = line_bseg-kunnr.
      account_name = kna1-sortl.
    when 'K'.
      select single * from lfa1 where lifnr = line_bseg-lifnr.
      account_name = lfa1-sortl.
    when others.
      select single * from t001 where bukrs = line_bseg-bukrs.
      select single * from skat where spras = sy-langu
                                  and ktopl = t001-ktopl
                                  and saknr = line_bseg-hkont.
      account_name = skat-txt20.
    endcase.

    hlp_text   = e_sgtxt.
    concatenate hlp_text account_name into e_sgtxt separated by ' '.

    hlp_text    = e_sgtxt.
*   text-001    = free choice, but should be no longer than 10
    concatenate hlp_text text-001 into e_sgtxt separated by ' '.

endfunction.
========================================================================

Do not forget to define the import/export parameters correspondingly:

 

Import parameter     Reference field    Reference type
LINE_BSEG                  BSEG
LINE_BKPF                  BKPF

Export parameter     Reference field    Reference type
E_SGTXT                                                     C

In the higher releases, please maintain the parameters as
Parameter Name    Type spec.    Associated type
LINE_BSEG                TYPE             BSEG
LINE_BKPF                TYPE             BKPF

Parameter Name    Type spec.    Associated type
E_SGTXT                    TYPE             CHAR50

2. Create text-001 in function Z_1B_HISTORCIAL_DESCRIPTION

  • text-001: "como ref." (That means in English "As Reference")

3. Maintain Client-Specific User Exits

 

TCode: GCX2

Action: Copy the program under the application area GBLS (e.g. RGGBS0TR) to a local version of the program (e.g. ZGGBS0TR).

Code: This local copy contain the following coding, where 'HISTO' stands for the name of the user-exit.

======================================================================
   form get_exit_titles tables etab.
   ...
*  >>>>> BEGIN INSERT
   exits-name  = 'HISTO'.
   exits-param = c_exit_param_none.
  exits-title = text-103.             "Historical description
   append exits.
*  >>>>> END INSERT
   ...
   endform.

*  >>>>> BEGIN INSERT    FORM HISTO.

   CALL FUNCTION 'Z_1B_HISTORICAL_DESCRIPTION'
       EXPORTING
            LINE_BSEG = BSEG
            LINE_BKPF = BKPF
       IMPORTING
            E_SGTXT   = BSEG-SGTXT
       EXCEPTIONS
            OTHERS    = 1.

   ENDFORM.
*  >>>>> END INSERT
========================================================================

4. Create a Substitution Rule

 

TCode: GGB1

 

  1. Open the folder "Financial Accounting" and subfolder "Line Item"

  2. Create a Substitution informing a ID (e.g. "HISTO")

  3. Create a Step and mark "BSEG-SGTXT"

  4. Mark the radio button "Exit" and fill in the "is substituted by" with the exit "HISTO"

 

5. Activate the Substitution Rule

 

TCode:

  1. Enter the Company Code

  2. Callup point 2

  3. Enter the Substitution Rule created

  4. Activation Level 1 


6. Enhance the Program Logic (Optional)

If you need to improve the solution logic, the FI consultant can creates a functional spec, with a new logic and the ABAP can modify the function to meet the business requirements.

Suggestion

Issue: If key users abroad execute some procedures centrally in the head quarter for the Brazilian company code, the function gets the language from the user logon. That can creates Historical Descriptions in other languages than Portuguese (The only official language in Brazil is Portuguese, and only Portuguese is allowed, by Brazilian authorities.

Solution: Change the "sy-langu" from the code, replacing by "PT". (If this change was not made the Document Type description and the G/L Account description will be show in the Historical description "BSEG-SGTXT")

======================================================================

* Document type
select single * from t003t where spras = sy-langu
                             and blart = line_bkpf-blart.

======================================================================

      select single * from t001 where bukrs = line_bseg-bukrs.
     select single * from skat where spras = sy-langu
                                 and ktopl = t001-ktopl
                                 and saknr = line_bseg-hkont.

======================================================================

Brazilian Master Data

 

Material Master Record

 

The material master record has been enhanced to store additional data relevant to materials in Brazil.

The primary use for that information is:

  • Tax calculation

  • Nota Fiscal generation

 

Brazilian Fields

 

Control code: This field contains the NCM code (Mercosur Common Nomenclature). It is used to calculate taxes and then printed on the nota fiscal.

T-Code: MM01 (Tab: Foreign Trade Import / Foreign Trade Export)

 

Material CFOP category: This field contains the CFOP category for the material, which it is used to determine the CFOP code during nota fiscal generation.

T-Code: MM01 (Tab: Foreign Trade Import / Foreign Trade Export)

 

Material usage: Intended usage of the material (e.g. consumption). It is used to determine the CFOP code.

T-Code: MM01 (Tab: Accounting 2)

 

Material origin: Specifies where the material was produced (e.g. domestic or imported). It is used to determine the CFOP code.

T-Code: MM01 (Tab: Accounting 2)

 

Produced in-house: A flag to indicate whether the material was produced by the company (not sourced externally). It is used to determine the CFOP code.

T-Code: MM01 (Tab: Accounting 2)

 

Vendor Master Record

 

Some fields in the vendor master are designed specifically for Brazil, while others are of a more generic nature, but have a particular use for Brazil.

Those are the most relevant fields to Brazilian vendor master record.

 

T-Code: BP 

View: General Data

Tab: 

 

The tax region is displayed in the Jurisdict. code (Tax jurisdiction code) field on the Address screen. When you enter the region, the system automatically determines the tax region.

 

T-Code: BP 

View: General Data

Tab: Control

 

Tax Number 1: CNPJ (Only for legal entities - companies)

 

Tax Number 2: CPF (Only for Natural Person)

 

Natural Person indicator: Must be active when vendor is not a legal entity but a Natural Person

 

Tax Number 3: State tax number (inscrição estadual). If exempt, must contain word “ISENTO”

 

Tax Number 4: Municipal tax number (inscricao municipal). If exempt, must contain word “ISENTO”

 

Tax split: An indicator to post half of the calculated IPI value as deductible input tax, and deducts the other half from the inventory posting or the posting to an expense account. You generally set this indicator for wholesale vendors who do not pay IPI.

 

Tax base: In Logistics Invoice Verification, the system calculates the ICMS tax value with a reduced tax base for freight charges only. Brazilian law stipulates a reduced tax base of 80% of the transport invoice (conhecimento). Enter tax base 1 if the carrier is to receive an 80% ICMS base reduction.

 

T-Code: BP 

View: Company Code Data

Tab: 

 

Payment block indicator: For vendors that send boletos, you should maintain your payment terms with a payment block.

 

Customer Master Record

 

Some fields in the customer master are designed specifically for Brazil, while others are of a more generic nature, but have a particular use for Brazil. Those are the most relevant fields to Brazilian customer master record.

 

T-Code: BP 

View: General Data

Tab: 

 

On the Address tab, the tax region is displayed in the Jurisdict. code (Tax jurisdiction code) field. When you enter the geographical region, the system automatically determines the tax region.

 

T-Code: BP 

View: General Data

Tab: Control

 

Tax number(s)

 

CFOP category

 

The system uses this value to determine the CFOP code when you enter a sales order, in order to create a nota fiscal in Sales and Distribution (SD).

 

ICMS tax law

 

IPI tax law

 

Whether the customer is exempt from IPI and/or ICMS

 

SubTrib group, a group of customers subject to the same SubTrib tax calculation

 

T-Code: BP 

View: Company Code Data

Tab: Payment Transactions

 

Single payment: (Indicator: Pay all items separately?). This must be set since the system creates a "duplicata" for each open item.

Period End Closing | Foreign Currency Valuation

SAP Period End Closing is a sequence of activities that need to be performed to close the period (monthly or yearly). Some activities are business mandatory, others are technically mandatory and some are optional, which can only be defined depending on the scope of the implemented scenarios.

Foreign Currency Valuation

Foreign currency revaluation is a mandatory period-end closing activity if the company has foreign currency balances at the end of the month.

The main T-Code (Transaction Code) for the revaluation is:

 

  • F.05 (SAP ECC with classic GL)

  • FAGL_FC_VAL (SAP ECC with New GL and later versions)

  • FAGL_FCV (SAP S/4 HANA later version)

Brazilian Requirement

The mandatory requirement for Brazil is that the foreign currency must be revaluated at the end of the month by the PTAX rate provided by the Central Bank of Brazil (BACEN).

Foreign companies usually use the exchange rate based on Bloomberg or XE. These rates are very close to the PTAX, but they are not the same. If the values of balances in foreign currencies are too high, not using the PTAX rate, may cause a visible discrepancy in the company's books, leading to possible fines by the Brazilian government.

BACEN Websitehttps://www.bcb.gov.br/en

Example (USD/BRL Rate / last day of January 2023)

BACEN Rate = 5.0987 | Bloomberg Rate = 5.0518 | XE Rate = 5.11619

Warning: Not only the rate can be different, but also the decimal places, depending on the source.

Why is the rate different?

Forein Souces

In the forein sources, the exchange rate is the real-time exchange rate, called mid-market (or commercial exchange rate).

Brazilian Central Bank PTAX

The PTAX is calculated based on the average rates consulted by the BCB at foreign exchange brokers.

The BCB consults the brokers in four moments of high liquidity in the foreign exchange market. Each query can take place within a ten-minute interval. Once the window opens, brokers have two minutes to submit their exchange rates.

Each broker informs a single purchase rate and a single sale rate referring to the actual rates practiced in the interbank market at the start time of each window.

The exact consultation time is randomly determined by the PTAX System in the following intervals:

  • 1º Query: Between 10:00 AM and 10:10 AM

  • 2º Query: Between 11:00 AM and 11:10 AM

  • 3º Query: Between 12:00 PM and 12:10 PM

  • 4º Query: Between 01:00 PM and 01:10 PM

Fact: PTAX complies with the principles of IOSCO (International Organization of Securities Commissions), which are: governance, reference rate quality, methodology quality and accountability.

Foreign Currency Revaluation Flow

Below is the simplified flow for Foreign Currency Revaluation.

Brazil Foreing Currency Revaluation

References: SAP (www.sap.com); Brazilian Ministry of Finance (www.gov.br); Wikipedia (www.wikipedia.org); World Bank Open Data (data.worldbank.org); Impostometro (https://impostometro.com.br); NFe GRC Suporte (nfegrcsuporte.blogspot.com)

background.avif
© 2026 SAP NFe. All Rights Reserved.
bottom of page