EFD-Reinf in SAP: from the withholding to the event, to the close and to DCTFWeb
EFD-Reinf is not a monthly file: it is a sequence of signed events, sent in batches, that tell the tax authority what was withheld, from whom and when. The close of each series is what feeds DCTFWeb.
For the view of all obligations and states, start with the overview of federal obligations and states.
The withholding path, in four steps
See the detail in From document to receipt, in seven steps.
- 01
Invoice and payment
Withholding calculated in SAP.
- 02
Event
One event per fact, in signed XML.
R-2010, R-4020 - 03
Close
Closes the movement of each series.
R-2099, R-4099 - 04
DCTFWeb
Totals returned and Darf generated.
R-9xxx, Darf
Choose your entry point by your role
Four entry points, one per role, going straight to the block that answers your question.
01Tax and accounting
From document to receipt, the period cycle and the withholding with numbers, to close the month's Reinf.
Go to the section02IT and SAP
How the event is born in SAP, what Reinf validates and the error matrix, with cause and fix.
Go to the section03Accounts payable and purchasing
The withholding invoice by invoice, the everyday cases and the checklist for your area.
Go to the section04Payroll and eSocial
What belongs to Reinf, what belongs to eSocial and what DCTFWeb does with both.
Go to the sectionDirect links
Events, batches and receipts, not a single file
The general map covers the obligation in one line. This page covers what changes the work of whoever integrates SAP.
Event in XML, signed
EFD-Reinf gathers the reporting of withholdings and other tax information, delivered in specific layouts, with an ICP-Brasil digital certificate, and it is only valid after receipt is confirmed and the content is validated. Each event has its own structure, validated by XSD.ReferencesIN RFB 2.043/2021Developer Manual 2.7
Two series, two movements
The series R-2000 covers social security contributions withheld or substituted. The R-4000 covers withholding at source of income tax, CSLL, PIS and Cofins. Each one forms an independent movement in the period, with its own close. Different areas of the company can send each series without depending on each other.ReferencesUser Manual 2.1.2.1
Deadline and exemption
Transmission is monthly, by the 15th of the following month. When the 15th is not a business day, the wording of IN 2.163/2023 moves it to the next business day, while User Manual 2.1.2.1 still describes moving it to the previous business day. The two sources differ, and the company's calendar should follow what the tax authority indicates. With no facts to report in the period, nothing is sent. For profits and dividends exempt from withholding, IN 2.043/2021 (art. 6, § 3) moves the deadline to the 15th of the second month after the quarter.ReferencesIN RFB 2.043/2021User Manual 2.1.2.1
Who identifies whom
The company is identified by the 8-digit root of the CNPJ. The certificate that signs is the e-CNPJ of the same base CNPJ, the e-CPF of the representative, or that of an attorney with specific powers for EFD-Reinf.ReferencesUser Manual 2.1.2.1Developer Manual 2.7
Difference from the other obligation pages
The map of ancillary obligations and SPED covers obligations and states. The page on SPED Fiscal in SAP shows the monthly ICMS file, and the one on EFD Contribuições in SAP shows PIS and Cofins credit. Here the question is how the withholding becomes an event, closes the period and reaches DCTFWeb.
From document to receipt, in seven steps
The first four steps belong to the SAP environment and the last three belong to EFD-Reinf and DCTFWeb. The data is decided in steps 1 and 2 and is only challenged in steps 5 to 7.
In the SAP environment
Document and payment
Service invoice, bill and payment to the supplier, with withholdings calculated.
Classification
Service type and income nature define the event: R-2010, R-4020 and others.
Generation
The report builds the events by taxpayer, establishment and service provider.
Batch and signature
Events in batches of up to 50, signed with the certificate.
In EFD-Reinf and DCTFWeb
Protocol and query
The submission returns a protocol, and the result is queried later.
Receipt and close
Each accepted event gets a receipt. The R-2099 and the R-4099 close the movements.
Returns and DCTFWeb
Reinf returns the totals R-9xxx and DCTFWeb receives the taxes.
Where the deadline is lost
In step 5, when the batch is sent and nobody queries the result. In the asynchronous model, the submission only returns a protocol; the event only counts after it is processed.ReferencesDeveloper Manual 2.7
Where value is lost
In step 2 and in the withholding calculation. The wrong service type changes the event, and the wrong rounding changes the cent that the validation accepts.ReferencesUser Manual 2.1.2.1
Where proof is gained
In step 6, with the receipt of each event and the close sent only after them.ReferencesUser Manual 2.1.2.1
Six families, one event for each fact
The full list of events is in the User Manual. The origin line shows where the data usually comes from in the SAP environment.ReferencesUser Manual 2.1.2.1
Tables
R-1000R-1050R-1070Taxpayer, related entities and proceedings. The R-1000 is the first event to send and a prerequisite for the others.
Origin in the environment: Company master data and legal proceedings
Series 2000
R-2010R-2020R-2030R-2040R-2050R-2055R-2060Social security withholding on services taken and provided, sports association, rural production and CPRB.
Origin in the environment: Accounts payable and receivable for services
Series 3000
R-3010Revenue from sports events, with no movement close and a deadline of up to 2 business days.
Origin in the environment: Ticket office, when applicable
Series 4000
R-4010R-4020R-4040R-4080Payments and credits to individuals and legal entities, to unidentified payees, and withholding on receipt.
Origin in the environment: Payments to suppliers and individuals
Close and correction
R-2098R-2099R-4099R-9000Reopening, closing and deletion of events.
Origin in the environment: Period close routine
Returns
R-9001R-9005R-9011R-9015Totals of bases and taxes generated by Reinf to feed DCTFWeb.
Origin in the environment: Generated by the tax authority, not by SAP
What each event requires before it goes out
- R-1000: prerequisite for all the others.
- R-1070: when there is a proceeding tied to non-withholding.
- R-1050: when there is income from silent partnerships, investment funds or clubs.
- Close: only after the receipts of all periodic events.
Who decides the event in SAP
The nature of the service and of the income decides whether the withholding goes in R-2010, in R-2020, in R-4010, in R-4020 or in R-4080. In TDF, preprocessing fills in the service type of the invoices to generate R-2010 and R-2020. Income nature is the data that usually is missing in the payment.ReferencesTDF help on preprocessing
From the first event to DCTFWeb
The order matters more than the day. The manual recommends table events before periodic ones, the close after the receipts and DCTFWeb after the closes.ReferencesUser Manual 2.1.2.1Developer Manual 2.7
Send the R-1000
And the tables R-1050 and R-1070, if any.
Send the periodic events
R-2010, R-2020, R-4010, R-4020, R-4040 e R-4080, as the case may be.
Query the protocol
Result of the batch, event by event.
Receive the receipts
One receipt per accepted event, before any close.
Reconcile
SAP withholding against accepted event, by provider and by invoice.
Close
R-2099 and R-4099, in an exclusive batch.
Receive the totals
R-9001, R-9005, R-9011 e R-9015 returned by Reinf.
Transmit DCTFWeb
After the closes, with the Darf generated by it.
Two rules that avoid rework
While the R-2099is being processed, EFD-Reinf does not receive events from the same taxpayer and period, and whatever arrives is rejected. And, to recover a receipt, the resent event must keep the same ID and the same hash.ReferencesDeveloper Manual 2.7
The cent that decides the validation
The examples below are fictional. The BRL 10,000.00 invoice and the truncation example come from the tax authority's own manual.ReferencesUser Manual 2.1.2.1
One invoice, two events
A company hires cleaning and security services from a provider and receives an invoice of BRL 10,000.00. It withholds 11% social security contribution and 1% income tax. These are two facts under different rules, so two events, in periods that can differ.ReferencesUser Manual 2.1.2.1
Same invoice, event 1: R-2010
Same invoice, event 2: R-4020
Truncate or round
EFD-Reinf calculates withholding by truncating at the second decimal place, with no rounding. Because the provider is the one who shows the withholding, the validation also accepts rounding up, within 1 cent, and takes the larger of the system value and the reported one. SAP's calculation must respect this limit on every invoice.ReferencesUser Manual 2.1.2.1
Withholding by truncation
Batch of three invoices, withholding per invoice
In the example batch, common rounding adds up to 0.01 more than truncation, over three invoices. None goes over the limit of 1 cent per invoice, so none is rejected, but the monthly sum per provider no longer matches what the tax authority calculates on its own. Reconciliation must be done by event, not by the month's total.
R-2010 and R-4020 side by side
| Point | R-2010 | R-4020 |
|---|---|---|
| Taxable event | Issue of the service invoice | Payment or credit to the supplier |
| Tax | Social security contribution (11%, or 3.5% under CPRB) | Income tax, CSLL, PIS and Cofins withheld |
| Deadline | 15th of the month after issue, or before the R-2099 | 15th of the following month, or before the R-4099 |
| Close | R-2099, single for all the company's R-2010 events | R-4099, with a close indicator |
| Prerequisite | R-1000 | R-1000, plus R-1050 and R-1070 when applicable |
Reinf, eSocial and DCTFWeb
Three obligations that the tax authority cross-checks in the same calculation. The split of work among them decides where each piece of data is born.
What belongs to Reinf
Withholdings and tax information that do not come from an employment relationship: services with labor assignment, withholdings of income tax, CSLL, PIS and Cofins, rural production and gross revenue of substituted contributions.ReferencesIN RFB 2.043/2021User Manual 2.1.2.1
What belongs to eSocial
Established by Decree 8.373/2014, it brings together employment relationships, contributions, payroll and tax reporting of employers. Income from work paid by the employer goes in eSocial, not in R-4010.ReferenceseSocial page on SPEDUser Manual 2.1.2.1
What DCTFWeb does
It is single and receives both Reinf series, after the closes. It constitutes an acknowledgment of debt, is filed by the head office and issues the social security Darf.ReferencesUser Manual 2.1.2.1IN RFB 2.237/2024IN RFB 2.043/2021
Where reconciliation breaks
The difference shows up in DCTFWeb, but it starts earlier. Reinf covers service withholdings and payments, and income from work stays in eSocial. Reconciliation starts from two master records: people, in eSocial, and suppliers and service invoices, in Reinf. DFSpro implements eSocial in SAP and works on this reconciliation, together with the integrator. See eSocial in SAP, on its own page. The map of federal obligations and eSocial gives the overview of the two obligations.
What EFD-Reinf validates on each submission
The validations come from Developer Manual 2.7, of October 2025. Valid values can change with a manual update, without changing the layout version.ReferencesDeveloper Manual 2.7
| Validation | Rule | Usually breaks | Where to look |
|---|---|---|---|
| Batch | Connection certificate, structure and batch version; an error here rejects the whole batch | Expired certificate or batch outside the XSD | Integration and certificate |
| Event structure | XSD validation, event by event; a structure error blocks the other validations | Optional field sent empty or zeroed | XML generation |
| Content | Values reported in the event; an inconsistency rejects the event | Withholding outside the 1-cent limit | Withholding calculation rule |
| Precedence | Initial and table events before the periodic ones | Periodic event sent before the R-1000 | Send order |
| Close | Event out of order during the R-2099 is rejected | Events sent while the close is processing | Period cycle control |
| Receipt and ID | The event ID must be kept until the batch response | ID regenerated on resend | ID control |
| Proceedings | Legal or administrative proceeding with a valid number, reported in the R-1070 | Proceeding reported in the periodic event without R-1070 | Proceeding records |
| Certificate and signature | e-CNPJ of the same base CNPJ, e-CPF of the representative or attorney with powers for Reinf | Certificate of another base CNPJ without power of attorney | Signature and powers of attorney |
How the event is born, and where ABAP comes in
Description based on SAP's public documentation.
The TDF report
The SAP Tax Declaration Framework for Brazil offers the EFD-Reinf report, through transaction /TMF/REINF, which reports income paid and withholdings, social contribution not tied to labor and gross revenue data. In the IMG there is the identification of the environment and the assignment of tax type and tax code to events. KBA 2490129 covers Reinf in ECC.
ReferencesTDF help on EFD-ReinfKBA SAP 2490129The execution sequence
With business function LOG_TMF_INT_1_1 active, the configuration guide says to run the preprocessing, generate the taxpayer and proceeding events and only then the EFD-Reinf report, and to check the result in the Messaging Framework.
ReferencesTDF Configuration GuidePreprocessing
It scans the electronic invoices and fills in the service type by company, branch, item and partner, or by BAdI, to generate R-2010 and R-2020. It supports only invoices with one service item and can only be repeated in the same period if the events have not been sent yet.
ReferencesTDF, preprocessingTransmission
The TDF Messaging Framework receives, validates, stores and sends to the government, through PI or SOAMANAGER, and now stores the returns R-5001 and R-5011. SAP's help cites Reinf layout 1.3, and the tax authority now operates 2.1.2 in an asynchronous model; whether the installed package complies must be confirmed.
ReferencesMessaging Framework helpTDF SP15 blogTDF help on eSocialDeveloper Manual 2.7Where ABAP and tax customization come in
Between the invoice and the event there are three places where the standard rarely is enough. DFSpro works in all three with ABAP development and tax customization, inside the customer's project and together with the integrator on the overall architecture.
Rule that classifies
- Service type by item and by partner, and BAdI for the case the configuration does not cover.
- Income nature of the payment, which decides R-4010, R-4020 or R-4080.
- Invoices with more than one service item, beyond the reach of the standard.
Calculation and missing data
- Withholding by truncation at the second decimal place, with the limit of 1 cent.
- Proceeding and related entity in the table events.
- Load of legacy events through the Messaging Framework, by BAdI.
Reconciliation and transmission
- Report that compares SAP withholding, accepted event, receipt and the return R-9xxx.
- Check of DCTFWeb against the two series and against eSocial.
- Control of ID, protocol and receipt in the asynchronous integration.
The page on tax setup shows the discipline of rules and master data, and the one on tax integration on SAP BTP covers integration by API.
Matrix of error, cause and fix
Each line links the symptom to the documented cause and to the place in the environment where to look first. The causes come from the manuals; the environment column points to where to look first in SAP.
| Symptom | Likely cause | Where to look | Fix |
|---|---|---|---|
| Event rejected for precedence | Periodic event sent before the R-1000 or the tables | Send order | Send tables first and resend the periodic event |
| Event rejected at close | Sent during the processing of the R-2099 | Cycle control | Wait for the close to finish and resend |
| Batch rejected | Structure, certificate or batch version | Batch XML and certificate | Validate against the XSD before sending |
| No receipt | Rejected event, which returns an error and not a receipt | Batch return | Fix and resend; query the protocol |
| Lost receipt | ID changed on resend | ID control | Resend the same event, same ID and same hash |
| Withholding rejected | Value outside the 1-cent limit over truncation | Withholding calculation | Calculate by truncation or round by 1 cent at most |
| R-2010 e R-4020 in the wrong periods | The two events follow different dates | Issue date and payment date | Generate the R-2010 by issue and the R-4020 by payment |
| Service invoice with no event | Service type missing, or invoice with several items | Preprocessing | Define the service type or handle the invoice by BAdI |
| Employee payment in R-4010 | Income from work settled by the employer goes in eSocial | Payment classification | Remove from Reinf and check in eSocial |
| Amendment without reopening | Movement closed without R-2098 or R-4099 | Correction routine | Reopen, amend and close again |
| Difference in DCTFWeb | Close sent before all the receipts | Reconciliation by period | Wait for all receipts, close and check the returns R-9xxx |
| Query blocked | Too many queries in a row return HTTP 429 | Query integration | Space out the queries and use the protocol |
Four situations that keep repeating
Fictional cases, built from the rules of the manuals. They serve to train diagnosis, not to describe a customer.
The withholding that changed month
A service invoice is issued in March and paid in April. The R-2010 should have gone in the March period and the R-4020 in April's. The company generated both in April, and the social security contribution went to DCTFWeb of the wrong month.
The diagnosis is about dates: issue for one, payment for the other.
The early close
The R-2099 was sent while three batches were still processing. The events of those batches arrived later and were rejected, because EFD-Reinf does not receive events during the close.
The fix is about process: query all the protocols, receive all the receipts and only then close.
The cent of the withholding
The ERP rounds each withholding to the nearest cent. On one invoice, the rounding goes over 1 cent compared with truncation and the event is rejected.
The fix is in the calculation rule, which must truncate at the second decimal place, not in the file.
The payroll that showed up in Reinf
A payment to an employee was posted as income of an individual and generated R-4010. Income from an employment relationship settled by the employer goes in eSocial. The R-4010 duplicated the information.
The fix is in the payment classification in SAP.
Amendment, deletion and fines
The deadline is in IN 2.043/2021 and the correction routine is in the User Manual. The order of work matters more than the day.
How to correct
- With the movement open, an amendment is a new event with an amendment indicator.
- With the movement closed, reopen with the R-2098 or with the R-4099 and close again.
- Deletion is done with the R-9000, with the event type and the receipt number.
- The R-3010 has no movement close and is corrected at any time.
- Changes only exist in table events, by validity period.
What the rule provides
- Fine of 2% per calendar month on the taxes reported, capped at 20%, for failure or delay.
- BRL 20.00 per group of 10 incorrect or omitted items, with a minimum of BRL 500.00.
- Reductions of 50% and 25% depending on when the filing is made, and own reductions for MEI and for ME and EPP under Simples.
- The fine is charged by an ex officio assessment.
What the tax authority published in 2025 and 2026
Items from the SPED portal and the manuals. Check the portal before any decision, because new technical notes come out often. Layout in force on the portal, read on 15/10/2026: 2.1.2, version 2.1.2b, updated up to Technical Note 03/2025, plus the 2026 notes in this table.
| Date | Publication | What changes |
|---|---|---|
| 01/10/2025 | Developer Manual 2.7 | Removes sending and querying in the synchronous model; only the asynchronous one remains. Published on the portal on 12/11/2025 |
| 31/03/2026 | Technical Note 01/2026 republished | Adjusts rates and changes the fields of R-2055 that go to DCTFWeb from 04/2026 |
| 08/05/2026 | Technical Note 02/2026 | Creates exemption type 12 for profits and dividends, nature 12001, from 01/01/2026 |
| 22/05/2026 | Technical Note 03/2026 | Alphanumeric CNPJ and new XSD, in production from July 2026, on a date to be announced (the SPED portal, read on 15/10/2026, does not give the effective date) |
For registering a CNPJ with letters in SAP, see Alphanumeric CNPJ in SAP. For the tax reform calendar and what it changes in the obligations, see tax reform with CBS and IBS.
Each area with its own list
Lists to divide the close work. Each item is a check, not a promise of a result.
Tax
- Income nature defined by type of payment.
- R-2010 and R-4020 in different periods, when applicable.
- Close only with all the receipts.
- Returns R-9xxx checked against DCTFWeb.
Accounts payable
- Withholding calculated by truncation at the second decimal place.
- Payment or credit date recorded by supplier.
- Employee payment outside R-4010.
- Supplier without complete master data handled before the close.
Services and purchasing
- Service type by item and by partner.
- Invoices with more than one service item identified.
- Legal or administrative proceeding reported in R-1070.
- Correct taking establishment on each invoice.
Payroll and eSocial
- Income from work only in eSocial.
- Payroll reconciled with the social security debit in DCTFWeb.
- Remuneration events sent before the close.
- eSocial owner identified.
IT and ABAP
- Batch of up to 50 events and message of up to 54 MB.
- Protocol, query and receipt stored by event.
- Event ID preserved on resend.
- Valid certificate and powers of attorney, TLS 1.2 or higher.
Governance
- Who signs and with which certificate or power of attorney.
- Calendar that accounts for the disagreement on the business day.
- Amendments with reopening recorded.
- Plan for the asynchronous model and for the alphanumeric CNPJ.
How to run the work on EFD-Reinf
Four steps, from reading a real month to recurring reconciliation.
Scope and a real month
Series R-2000 and R-4000, current transmission method, and one invoice followed from the document to the receipt and DCTFWeb.
Differences
Each difference becomes a matrix line with cause, where to look and fix.
Fix at the source
Service type, nature and calculation first; event and batch last.
Permanent reconciliation
What was solved becomes a recurring check before the close. See also tax and accounting reconciliation in SAP.
Reinf reads what the ERP recorded
An event is only really applicable when the data exists in the ERP and has been checked. Data that the system never recorded does not go out in the event, and finding that out late costs the close.
Responsibility questions
- Where does the data of each event your company sends come from?
- Who answers for that data and for access to the transmission?
- What is still manual today, and who checks it?
Questions about where data can be missing
- Is the data born in SAP or does it arrive from another system?
- Is it stored in the document or the master record, or only in a spreadsheet?
- When it comes from outside the ERP, who brings it and when?
The proof is to reconcile, by tax, the total withheld in the events with the total calculated and with the accounting balance, and to check receipt and return against the calculation. See from calculation to accounting balance and the AMS Fiscal and environment governance.
We check where each piece of data comes from and prove what the ERP delivers. Who must withhold and how to treat each case is the company's decision.
Tax layer, ABAP and eSocial, with tailor-made customization
SAP Tax Governance consultancy from Curitiba, founded in 2018. It takes care of the tax layer of the project and leaves the overall architecture to the integrator.
What DFSpro does
- Follows a service invoice from the document to the receipt, the close and DCTFWeb.
- Does ABAP development and tax customization for service type, nature, withholding, events and reconciliation.
- Implements eSocial in SAP and reconciles payroll, Reinf and DCTFWeb, together with the integrator.
What it does not do
- Does not commit to a deadline before reading your environment.
- Does not decide how the company interprets the rule.
- Does not replace the company's signature or its certificate.
When the environment is evaluating GUEPARDO Tax, the product belongs to NTT DATA and DFSpro, as an Authorized Channel, sells the license, implements the product and handles its governance. The SAP Tax Diagnostic helps to see the gap between what SAP generates and what the obligation requires.
Want to bring a withholding that does not add up?
If you have a rejected event, a difference in DCTFWeb or an integration to move to the asynchronous model, describe the case to DFSpro.
Sources with links
Official legislation and documentation, with a link to the text.
Federal Revenue Service and SPED
- User Manual 2.1.2.1SPED Portal, Federal Revenue Service, read on 15/10/2026
- Developer Manual 2.7SPED Portal, Federal Revenue Service, read on 15/10/2026
- notice on the alphanumeric CNPJ in ReinfSPED Portal, Federal Revenue Service, read on 15/10/2026
- notice on profits and dividendsSPED Portal, Federal Revenue Service, read on 15/10/2026
- notice of Technical Note 01/2026SPED Portal, Federal Revenue Service, read on 15/10/2026
- eSocial page on SPEDSPED Portal, Federal Revenue Service
- EFD-Reinf 2.1.2b layoutsSPED Portal, Federal Revenue Service, read on 15/10/2026
- EFD-Reinf Technical NotesSPED Portal, Federal Revenue Service, read on 15/10/2026
Legislation and rules
Frequently asked questions about EFD-Reinf in SAP
Understand the obligation8 questions, 01 to 08
01Is EFD-Reinf a file or a set of events?+
It is a set of XML events, grouped in batches and signed, not a single TXT like the other SPED reports. The Developer Manual defines the batch as an XML that contains the XML of the events. Each event gets its own receipt after it is validated.
02What is the difference between series R-2000 and R-4000?+
Series R-2000 covers social security contributions withheld or substituted. Series R-4000 covers withholding at source of income tax, CSLL, PIS and Cofins. Each series forms an independent movement in the period, with its own close: R-2099 for the first and R-4099 for the second.
03Why can the same invoice generate two events, an R-2010 and an R-4020?+
Because the two withholdings come from different laws and acts. The manual gives the example of an invoice of BRL 10,000.00 with social security withholding of 11% and income tax of 1%: the R-2010 carries BRL 1,100.00 in the period of the invoice issue, and the R-4020 carries BRL 100.00 in the period of the payment or credit.
04What are the R-2099 and the R-4099?+
They are the closing events of each movement. The manual recommends sending them in an exclusive batch and only after receiving the receipts of all the periodic events of the period. While the R-2099 is being processed, EFD-Reinf does not receive events from that taxpayer and period, and those that arrive are rejected.
05How is withholding rounded in EFD-Reinf?+
The rule is truncation at the second decimal place. In the manual's example, 11% on BRL 918.07 gives BRL 100.9877 and the correct withholding is BRL 100.98. To reduce rejections, the validation also accepts rounding up, within 1 cent. Whoever uses common rounding on all invoices must check this limit across the batch.
06How do I amend or delete an event that was already sent?+
With the movement open, you send a new event with an amendment indicator. With the movement closed, you reopen it with the R-2098 or with the reopening R-4099 . Deletion uses the R-9000, with the event type and the receipt number. After reopening, a new close must be sent.
07How does EFD-Reinf feed DCTFWeb?+
Events R-9001, R-9005, R-9011 e R-9015 are generated by EFD-Reinf itself from the periodic events and returned to the taxpayer, to report the taxes calculated and feed DCTFWeb. DCTFWeb is single and receives both series, and it is recommended to transmit it after the closes. Social security contributions are paid by a Darf issued by DCTFWeb.
08Do employee payments go in EFD-Reinf?+
No. Income from an employment relationship, settled directly by the employer, goes in eSocial and not in R-4010. That is the split between the two obligations, and it is why reconciling payroll with Reinf is a project topic.
Execution in SAP3 questions, 09 to 11
09Does SAP generate EFD-Reinf?+
The SAP Tax Declaration Framework for Brazil offers the EFD-Reinf report, run by transaction /TMF/REINF, which reports income paid and withholdings, social contribution not tied to labor and gross revenue. Before it, the help says to run the preprocessing and the taxpayer and proceeding event reports.
10What does SAP preprocessing solve, and what does it not solve?+
It scans electronic invoices and fills in the service type, to generate events R-2010 and R-2020, by configuration or by BAdI. It only supports invoices with one service item, and can only be repeated in the same period if the events were not yet sent to the tax authority. An invoice with several different service items needs its own handling.
11Does TDF follow the current EFD-Reinf layout?+
The Messaging Framework help cites support for EFD-Reinf layout 1.3 in SP11, and the tax authority now operates layout 2.1.2 and the asynchronous model. How far your package goes depends on the installed version: confirm the version and the applicable support note, which requires a login.
Risks and objections2 questions, 12 to 13
12What is the risk of carrying on as is?+
The fine for failure or delay is 2% per calendar month on the taxes reported, capped at 20%. For incorrect or omitted information, it is BRL 20.00 per group of 10. The minimum fine is BRL 500.00. In addition, the difference shows up in DCTFWeb, which constitutes an acknowledgment of debt.
13If the tax authority accepts the events, do I still need to reconcile with DCTFWeb?+
Yes. An accepted event means valid structure and content, not that the SAP withholding is the same. DCTFWeb is single and receives both series. Reconciling by event, by provider and by period is what avoids the difference later.
Reform and news3 questions, 14 to 16
14Does EFD-Reinf replace the Dirf?+
For facts from 01/01/2025, the Dirf is replaced by the events of series R-4000, by S-1210 and by S-2501 of eSocial. The page on the map of obligations summarizes the Dirf situation.
15What did Technical Note 02/2026 change for profits and dividends?+
It created exemption type 12, used with income nature 12001, in force since 01/01/2026. The amount goes into the gross income of R-4010, which can have amounts without withholding up to BRL 50,000.00 in the month or amounts with withholding above that, at 10% on the taxable part. Since May 2026, type 5 with nature 10001 is no longer applicable.
16Does the alphanumeric CNPJ affect EFD-Reinf?+
Yes. The tax authority published EFD-Reinf Technical Note 03/2026 and new XSDs that replace the previous ones, keeping the versions, in production from July 2026, on a date to be announced; the SPED portal, read on 15/10/2026, does not give the effective date. The registration and interface test is on the page on Alphanumeric CNPJ in SAP.
Hiring and delivery8 questions, 17 to 24
17How much does it cost and how long does it take?+
DFSpro does not publish a price or a project timeline. Both depend on what the reading shows: series used, number of establishments, transmission method, SAP version and how much ABAP is needed. That is why the first step is to read a real month.
18When is it worth asking for outside help with EFD-Reinf?+
When the SAP withholding does not match the one declared, when events are rejected for precedence or for the close, when eSocial and Reinf disagree in DCTFWeb, or when the web service integration needs to move to the asynchronous model. The fine can reach 2% per calendar month on the taxes reported, capped at 20%.
19Does DFSpro implement eSocial and do the ABAP for the Reinf integration?+
Yes. DFSpro implements eSocial in SAP and does ABAP development and tax customization: service type, income nature, withholding by truncation, event generation and reconciliation reports with DCTFWeb. The overall architecture of the project stays with the integrator, and DFSpro works together with them.
20Does DFSpro sign and transmit the events in place of the company?+
The scope is the tax layer: data, rule, calculation and reconciliation. The signature uses the certificate of the same CNPJ or of an attorney with specific powers for EFD-Reinf, and stays with the company.
21What does DFSpro deliver at the end of the work?+
The method produces a matrix of differences, each with cause, where to look and fix; the fixes made at the source, which can include ABAP agreed beforehand; and recurring checks to run before the close. What is contracted is defined after the environment is read.
22Do I need to move from ECC to S/4HANA first?+
Not necessarily: SAP keeps the Reinf report in an ECC KBA and in TDF. The decision to migrate is a different conversation, covered in Clean Core fiscal.
23I already have an SAP integrator. Why involve DFSpro?+
Because withholding, service type and reconciliation with DCTFWeb have their own routine, which tends to sit between the project and the tax area. DFSpro works in the tax layer, and the overall architecture stays with the integrator. In each request it is agreed who changes what.
24If transmission is done by another system, where does DFSpro come in?+
In the source data and in the reconciliation: service type, income nature, withholding by truncation, issue and payment dates and comparison with the receipts. Transmission stays with the system and the team that already do it.
How to start3 questions, 25 to 27
25What is the first conversation with DFSpro about EFD-Reinf like?+
It starts from a real month, with receipts and invoices the company already has. DFSpro follows a service invoice from the document to the receipt, the close and DCTFWeb, notes where a step only closes with a manual adjustment and shows which part of the environment to look at. The scope decision comes after that reading.
26How do I know if my SAP is ready for EFD-Reinf?+
Take a real month and follow a service invoice from the document to the receipt: the service type, the withholding by truncation, the event, the batch, the protocol, the receipt, the close and the return R-9xxx. If any step needs a manual adjustment outside the system, the month is not supported. This is the script of the initial conversation with DFSpro.
27What should I bring to the first conversation?+
A month with receipts of events R-2010 or R-4020, the matching service invoice, the SAP version and the current transmission method. Through the contact page the conversation starts from what you have.
Start with the withholding that your period still does not explain
If you have a month with receipts and the matching service invoices, the conversation with DFSpro can start from them. If the point is a specific error, the matrix above shows where to look first.