Withholding Supplier Tax Using Flexible Service Codes

This document presents an overview of an alternative workflow for generating and reporting tax transactions for supplier tax withheld at source. The workflow differs from the standard one described in Reporting Supplier Tax because it enables a more flexible use of service codes to calculate the withholding tax. It also makes it possible to use more than one service code for a supplier.

This solution was initially designed to meet the requirements for Argentinean withholding tax. However, the solution is generic and can be used in other countries provided that country-specific formats for electronic files are added.


Suppliers that do not have a branch or permanent establishment in Argentina are subject to income tax on any income deemed to be of an Argentinean source. The tax is withheld at source by the local payer – the customer company – at payment of the supplier invoices. The tax is calculated as a percentage of the invoice gross, net or VAT amount. The percentage is based on an actual or presumed net income, the latter varying depending on the type of income.

Regulations and tax rates, which vary by province, include criteria for taxation such as minimum invoice net amount, periodic net amount and delivery method. The base amount can be reduced or defined with a maximum limit so that only an amount exceeding this limit is used as a base of calculation.

Use of flexible service codes

In the standard workflow described in Reporting Supplier Tax, the tax calculation is based on service codes in 'Supplier Service Code. Open' (CRS063). This service code defines a withholding tax percentage. Only one service code can be selected for each supplier, although you can manually select a service code at the invoice line level when recording invoices.

M3 Business Engine provides a set of flexible service codes that are defined in a separate program, 'Flexible Service Code. Open' (CRS663). They enable a higher degree of fine-tuning the taxation since different limit values such as maximum or minimum amounts can be defined for each service code. You can select several flexible service codes for individual suppliers and assign different limits to each service code. All flexible service codes are then automatically applied to calculate and record the withholding tax based on the invoiced gross, net or VAT amount when invoices from these suppliers are paid. One result of this solution is that you cannot select different service codes for individual invoice lines based on the type of goods or service to which they refer.

Note: Flexible service codes override any standard service code selected for the supplier in 'Supplier. Define Purchase & Financial' (CRS624/F) or in the individual supplier invoice.

Use of limit values

You can define limit values for the tax calculation for each flexible service code, if needed. Three types of limit values are used:

If the supplier is a company, the year or period is a fiscal year/period. If the supplier is a physical person, the year or period is a calendar year/period. The gross, net or VAT amount of each supplier invoice paid is automatically stored and accumulated for each flexible service code in a separate table for accumulated amounts. The amount accumulated during the year or period is displayed for each service code and supplier in 'Flexible Service Code. Connect to Supplier' (CRS664).

Example using upper limit

One flexible service code is connected to the supplier, where the withholding level is set to 'Year' and the base type is set to 'Gross amount'. The maximum yearly amount defined is 100,000. If an invoice with a gross amount of 120,000 is paid, a withholding tax is only calculated for the amount of 100,000 and not for the remaining 20,000.

Example using between limits

One flexible service code is connected to the supplier, where the withholding level is set to 'Year' and the base type is set to 'Gross amount'. The service code defines the following minimum and maximum values and a withholding tax percentage for each one of the ranges:

Lower Limit Upper Limit Tax Percentage
0 5,000 10
5,000 10,000 12
10,000 15,000 14

You receive and pay three invoices (without VAT) from this supplier:

  • Any cash discount is not considered.
  • Flexible service codes are not applied when paying supplier invoices in 'Supplier Invoice. Process Automatic' (APS050), 'Bank Statement. Open' (ABS100) or 'Supplier Payment. Open Recurring' (APS095).
  • The flexible service codes connected to a supplier will always be applied when paying invoices in 'Supplier Payment Proposal. Open' (APS130) and 'Supplier Payment. Enter Manual' (APS120), regardless of the goods or services to which the invoices refer and regardless of the province or state. Any corrections must be done manually, as described below.


The following types of reports are created: a paper report and an electronic text file. The file is stored in the output folder selected when Infor Enterprise Collaborator is set up. These reports indicate the payment amount and the amount of the tax withheld in local currency for each supplier (payee) and invoice.

You can send the electronic file to the tax authorities and the certificates to the suppliers.

All transactions in the table for withholding tax transactions, FAPSER, have status 9, which indicates that they are included in a confirmed withholding tax report.

Before you start


Follow these steps

  1. Create withholding tax transactions at payment

    When you pay a supplier invoice in 'Supplier Payment Proposal. Open' (APS130) or 'Supplier Payment. Enter Manual' (APS120), the withholding tax is automatically deducted from the invoice amount (the invoice transaction with transaction code 40) based on the flexible service codes connected to the supplier. The tax is recorded as one separate transaction for each flexible service code and invoice. The amount you pay to the supplier is the invoice amount minus the deducted tax.

    From a functional perspective, M3 Business Engine creates a withholding tax transaction for the flexible service code in the table for withholding tax transactions and updates the table that stores the accumulated amounts for each flexible service code. The general ledger is also updated.

  2. Review withholding tax transactions

    Review the withholding tax transactions in the FAPSER table for each payer in 'Supplier Tax Report. Display Invoices' (APS425). The program displays, among other values, the flexible service code on which the transaction is based and the sequential certificate number that was automatically linked to the withholding tax transaction at payment. You can adjust or delete records. You can also create new records for invoices that are already recorded in accounts payable. If you manually change the payment amount to report or the withheld tax amount, the original value is still displayed in local and foreign currency in (APS425/E) for traceability purposes. Note, however, that since changes in (APS425) do not update the general ledger automatically, you must adjust the ledgers manually by either entering credit invoices in (APS100) or entering journal vouchers in 'Journal Voucher. Open' (GLS100).

    Depending on the setup, a sequential certificate number is automatically linked to the withholding tax transactions at payment to verify that the payment amount was reduced by the tax amount. The information views in (APS425) enable you to display transactions for each invoice number, certificate number, or supplier and certificate number.

  3. Create tax report

    Create a proposal for the report with the withholding tax to declare in 'Supplier Tax Report. Create Proposal' (APS430). The proposal is based on selection criteria such as ranges of suppliers, payees and accounting dates. (The range of service codes is only used for standard service codes.) Verify that all relevant transactions are included by first selecting the Change option in (APS430) to list all payees included in the sub-program (APS435). You can remove individual payees from the proposal. By selecting option 11 = 'Invoices' for a supplier, all withholding tax transactions selected for this supplier are displayed and can be edited in (APS425).

    When you confirm or approve the proposal in (APS430/B) by selecting option 9 = 'Update', the proposal and the included transactions all receive status 9, which indicates that they have been declared. The ID of the confirmed proposal is stored for each transaction, so that you can easily identify the report in which an individual transaction was included by selecting option 11 = 'Tax report' in (APS425). A paper tax report is printed and, in the case of Argentina, an electronic file is created. Once the proposal is confirmed, you can also print withholding tax certificates with transactions by certificate number by selecting option 11 = 'Print certificate' in (APS430/B). The certificates printed are based on an additional selection you make on the F panel by entering ranges of payees, VAT registration numbers and flexible service codes. If the flexible service codes were defined so that no certificate numbers were assigned to the transactions, only the invoice numbers are printed on the report.

    You can always reprint reports and regenerate electronic files in (APS430).

Related topics