Páginas filhas
  • Accrual Basis in IRRF PJ Calculation (FINA040 - SIGAFIN)

This routine aims at processing the accrual basis for legal entity IRRF calculation, and it also processes the following:

  • Grouping of all invoices issued to the same client, including invoices from the company's branches.
  • Grouping of all invoices issued in all suppliers' branches to all the company's branches.

These treatments are controlled by the parameter MV_AGLIMPJ whose content is the following options:

1. The system checks only the invoices issued/received by the current branch to/from a client or supplier to compose the IRRF-PJ base. In this content, it is checked the minimum value for tax withholding, pursuant to the configuration in the parameter MV_ACMIRPJ (date used to establish the taxable event).

2. The system checks all the company's branches, customers or suppliers with the same CNPJ. In this content, the invoices comprising IRRF-PJ basis of the minimum value for tax withholding, are identified pursuant to the configurations in parameter MV_ACMIRPJ.

3. The system checks all the company's branches, customers or suppliers and those with the same basis of CNPJ (the eight first digits). In this content, the invoices comprising IRRF-PJ basis of the minimum value for tax withholding, are identified pursuant to the configurations in parameter MV_ACMIRPJ.


In order to make these implementations effective, we provide details of the field to be created in the data dictionary.

Example of use:

According to the following scenario:

COMPANY A – BRANCH 01

COMPANY A – BRANCH 02

SUPPLIER A – BRANCH 01

SUPPLIER A – BRANCH 02

  • Exclusive tables SA1, SA2, SE1 and SE2.
  • Operation class that calculates IRRF (1.5%)
  • Suppliers with the same basis of CNPJ (the first eight digits), one at each branch.


Test 1

Configure the parameter MV_AGLIMPJ with content equal to one (1).

Add a bill of accounts payable for supplier A in branch 01, in the amount of R$ 600.00, being issue and due date established by the user.

Now, add another bill of accounts payable for the same supplier in branch 02, also in the amount of R$ 600.00 with the same issue and due date.

IRRF =     (600.00 * 1.5%) = 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 01

IRRF =     (600.00 * 1.5%) = 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

In this situation, when confirming an addition to the bill in branch 02, tax is not withheld since checking is only effective for current branch and supplier.

Configure the parameter MV_AGLIMPJ with content equal to 2 (two).

Using the previous example, add a bill of accounts payable for supplier A in branch 01, in the amount of R$ 600.00, being issue and due date established by the user.

IRRF =     (600.00 * 1.5%) = 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 01

IRRF =     (600.00 * 1.5%) = 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

In this situation, when confirming the addition of bill in branch 02, there will be tax withholding as checking is effective in all branches and suppliers with the same CNPJ.

However, in this situation, bills are summed in accordance with the CNPJ of the issuer company (supplier) and with the CNPJ of the branches of the customer company (SM0). Tax withholding is effective in the second invoice.

Configure the parameter MV_AGLIMPJ with content equal to 3 (three).

IRRF =     (600.00 * 1,5%) = 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 01

IRRF =     (600.00 * 1,5%) = 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

By confirming the addition of the bill in branch 02, there will be tax withholding.

In this case, values are summed in accordance with the CNPJ basis of the issuer company (supplier) and the CNPJ basis of the branches of the customer company (SM0). Tax withholding is effective in the second invoice in the amount of R$ 18.00


Test 2

Configure the parameter MV_AGLIMPJ with content equal to 1 (one).

Add a bill 01 in accounts payable in branch 01 in the amount of R$ 300.00, being issue and due date established by the user.

Add a bill 02 in accounts payable for the same supplier, but in branch 02 in the amount of R$ 300.00, with the same issue and due date.

Considering this supplier, add in branch 02, a bill 03 in accounts payable in the amount of R$ 600.00, also with the same issue and due date.

IRRF =     (300.00 * 1,5%) = R$ 4.50

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10) in branch 01

IRRF =     (300.00 * 1,5%) = R$ 4.50

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10) in branch 02

IRRF =     (600.00 * 1,5%) = R$ 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10) in branch 02

When confirming the addition of bill 03 in branch 02, there is no tax withholding. Checking is effective only in the current branch and supplier.

Configure the parameter MV_AGLIMPJ with content equal to 2 (two)

IRRF =     (300 * 1,5%) = R$ 4.50

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 01

IRRF =     (300 * 1,5%) = R$ 4.50

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

IRRF =     (600 * 1,5%) = R$ 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

When confirming the addition of bill 03 in branch 02, there is no tax withholding.

In this event, the bills are summed in compliance with the CNPJ of the issuer company (supplier) and the CNPJ of the branches of the costumers companies (SM0). There is no tax withholding (suppliers and customers' companies branches have the same CNPJ basis).

Configure the parameter MV_AGLIMPJ with content equal to 3 (three).

IRRF =     (300.00 * 1,5%) = R$ 4.50

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 01

IRRF =     (300.00 * 1,5%) = R$ 4.50

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

IRRF =     (600.00 * 1,5%) = R$ 9.00

(less than the minimum value of IRRF withholding, which is equivalent to R$ 10.00) in branch 02

By confirming the addition of the bill in branch 02, there will be tax withholding.

In this situation, bills are summed in accordance with the CNPJ basis of the issuer company (supplier) and with the CNPJ basis of the branches of the customer company (SM0). In bill 03, there is tax withholding in the amount of R$ 18.00