Thursday, January 28, 2016

SAP HCM US Tax processing complete



SAP Tax Terminology

Business Term
SAP Term
Definition
Federal Employer ID Number (FEIN)
Tax Company
A legal entity for tax reporting purposes
Tax
Tax Type
The type of tax levied (required to be paid) by a tax authority
Formula
Formula
Instructions for how to calculate a tax amount
Wage Base
Tax Model
A definition of which wages and deductions are considered taxable for specific tax authority and type of tax

Tax Calculation Process

Process Overview

Data Model

Infotypes

Infotype
Title
Description / Notes
207
Resident Tax
This is the tax area where the employee lives. They can only live in one place at a time, and payroll reads this infotype as of the check date.






Infotype
Title
Description / Notes
Infotype
Title
Description / Notes
208
Work Tax
This infotype stores the various tax areas the employee works in – they can work in multiple areas at once, and each is pro-rated by a certain %. The total % can not be more than 100. If it is less than 100, the remainder is allocated to the resident tax area. Payroll reads all the infotype 208’s active during the pay period and pro-rates wages according to each infotype 208 occurrence.






Infotype
Title
Description / Notes
209
Unemployment State
This infotype contains the state and worksite the employee is taxed in for unemployment taxes. For payroll calculations it is read as of the period-end date. If the worksite is filled in then you can use SAP’s Multiple Worksite Reports in Tax Reporter.






Infotype
Title
Description / Notes
210
Withholding Info
This infotype stores the W-4 or state-equivalent information needed for calculating withholding taxes. It is read as of the check date. Various tax authorities use different fields on this infotype, and the available fields change depending on the tax authority entered (which is also the subtype).

Tax Exempt Indicator codes control which wages & taxes get calculated: X = no taxable wages or taxes; R = don’t take taxes but do report taxable wages; Y = don’t take taxes and don’t calculate reportable or taxable wages.

Def. Form.No. is the default formula number SAP will use for the tax – and that can be overridden with the ‘Assign Form.No.’ field.

For other fields, select them and press F1 for the SAP help text.

This screen layout will change from one tax authority to another.




Infotype
Title
Description / Notes
234
Tax Overrides
This infotype contains various overrides for calculating withholding taxes, and is read as of the check date.

Supplemental method: Many withholding taxes have an optional flat-rate method that can be used. Some have more than one supplemental method – here we can override the supplemental method for an employee’s paychecks.

Override amount: This amount will override any withholding tax amount calculated by the system.

Empl. Override group: This is a code created in BSI that defines a custom tax calculation, such as a custom flat-rate for certain bonus payments. The override group has to be created in BSI and then applied here.



Infotype
Title
Description / Notes
235
Other Taxes
This infotype contains overrides for all other taxes than withholding, and is read into payroll as of the period-end date.

The formula numbers and ‘Exe.’ (exemption indicators) used here serve the same purpose as they do on infotype 210, but for everything except withholding taxes. Infotype 210 is withholding taxes-only, and 235 is for all other tax types.

Configuration of Taxes

IMG – Implementation Guide Steps

Transaction SPRO is used to access the SAP Implementation Guide. The transaction will first display various ‘project IMGs’, press F5 or the Enterprise IMG button to get to the complete IMG structure. Open the Payroll Accounting -> Payroll: USA -> Tax section.
If you do not have access to transaction SPRO, you can view the corresponding tables with transaction SE16 (Data Browser).


To get more documentation, double-click on a line’s text. For example, double-click on the ‘Tax’ text line and you get this documentation:

 

Tax Companies


This is the step where Tax Companies are defined and then assigned to each personnel area/subarea combination. The tax company is not the same as the Company Code (or accounting company) that is seen on infotype 1. In fact, Tax Company does not display on infotype 1. The information entered in the ‘Define tax companies’ (table t5utl) step is used for regulatory tax reporting (Tax Reporter). The screen below shows where Tax Company is assigned to the personnel area/subarea (table t5u0p):



The Tax Company is where taxes & taxable wages are reported for regulatory purposes. The accounting debits & credits go to the Company Code on infotype 1, which may or may not correspond to the Tax Company. For example, this screen shows that taxes and taxable wage are reported to the government under ‘Overseas’, and the description on the personnel area says the accounting goes to Company Code 001.


Each tax company is identified by an employer ID number for every tax authority it reports to. Those employer ID numbers (EIN’s) are entered in the ‘Define tax identification numbers by BSI tax company’ step (t5uth), and then assigned to a tax type within the tax authority in the ‘Define federal/state/local employer ID number’ step (table t5uti). SAP Payroll will not calculate a tax if the corresponding EIN does not exist in these tables.

Load Tax Data

This section is primarily for the first-time system setup, where we copy some data from the BSI Tax Calculation system into SAP tables. It is normally maintained by periodic updates to the system that come from SAP.

Tax Data Maintenance – Tax Authorities


The ‘Check tax authorities’ step (table t5utz) is used to configure certain options for each tax authority. This data is delivered by SAP and normally it is also updated by them as new tax authorities come into existence. You might want to customize some options here to tailor the system to your needs.




The ‘Sort no.’ controls the sequence in which the tax authorities will be displayed in select lists. The ‘W4’ indicator controls whether of not you want to require an infotype 210 for the tax authority, make it optional, or not allow one to exist. The IRS column is to indicate whther of not you want to apply the IRS 10-exemption limit rule to the authority. The ‘NoUS’ column is used to indicate US Territories & Possesions, such as Puerto Rico and the US Virgin Islands. The next IMG steps - ‘Check sort number for authority’, ‘Check W-4 and exemption limit indicators’, and ‘Check status of territories’ are just different views on this same information.
‘Check tax authority mapping’ (table BTXTAXC) is where we map the SAP Tax Authority code to the BSI Tax Authority code. This is normally maintained by SAP and does not require customer maintenance. BSI has its own codes for each tax authority, but lets the customer create whatever codes they want to use. Those customer-defined codes are mapped to the BSI codes here.

Each tax authority can have its own set of valid filing status codes, and these are controlled in the ‘Define valid filings statuses’ step (table t5utk). This data is generally maintained and updated by SAP.

Tax Data Maintenance – Tax Types

Each tax authority can have one of more different types of tax they collect. All the various tax types are defined in this step.

‘Check tax types’ (table t5utt) is a list of all valid tax types, and ‘Maintain tax types per tax authority’ (table t5utd) is where we define which tax types are valid for each authority.


Tax Data Maintenance – Tax Areas

A Tax Area is simply a collection of tax authorities that are applicable to a given location. For example, if you live inside Cincinnati, your tax area would include Cincinnati, Ohio and Federal. SAP assigns tax areas to resident and work locations.
The views for defining tax areas for work and resident locations are very similar. SAP delivers these tax areas with the system, and updates them as new ones come into existence. The ‘Maintain work-related tax areas’ (table t5utb) is where we define valid tax areas for the work location.

For each tax area we define the tax authorities that correspond to it in the ‘Maintain tax authorities per work tax area’ step (table t5utw). So here we see that work tax area AL0H includes tax authorities Alabama and Jefferson.

Resident tax areas are setup in a similar manner, but stored in table t5uta. Likewise, resident tax areas are stored in table t5utr. Resident tax areas have additional functionality that enables the system to suggest a list of tax areas that may be valid for the employee, based on the employee’s zip code. The ‘Maintain zip code ranges per residence tax area’ (table t5utf) specifies a range of zip codes for each tax authority. When a new infotype 207 is created, the system will search this table with the employee’s zip code to get a list of tax areas that might be appropriate for the employee. Although a zip code range exists for work tax areas, there is no other system functionality to support that process (i.e it doesn’t work).

Tax Data Maintenance – Tax Models




The Tax Model is where we define the taxability of wages in SAP Payroll. The ‘model’ is a set of three SAP configuration tables. The first step ‘Define tax authority model’ (table t5ute) is where we associate each tax authority with a two digit model number. The model number is just an arbitrary two digit number that was chosen at the time the system was first setup. If a tax authority changes the way it taxes earnings or deductions, then you would create a new tax model for it, using the effective dates in t5ute.


The second step is ‘Define taxability model’, or table t5utm. In this table we link each taxable wagetype to a tax model. There are four aspects to this link – the resident, work and unemployment taxation of the wagetype, and the taxation for different groups of employees (the tax modifier). The link to the wagetype is via processing class 71 – called the taxability class. For each taxability class we specify if the wagetype is taxable for the tax authority an employee lives in, works in, and for unemployment taxes. These three settings can be customized per tax modifier. For example, we may tax wages for every tax authority for regular employees, but only tax wages for Federal for expatriates. In that case, we put expatriates and regular employees in different tax modifiers, and control the assignment of wagetypes to tax authorities via table t5utm.



The tax modifier is determined in payroll in rule ZUDG (tax schema ZUA2).

Tax Modifiers
Tax Modifier
Employee Group
U1
Domestic employees & other retiree payments
U2
No longer used (was Sundor)
U3
US Expatriates
U4
Retiree stock options (pay types L and S)
U5
No longer used (was Outbound expats)
U6
Never used
U7
Any employee (expat or regular) whose resident tax infotype (208) is set to Puerto Rico



Table t5utm is where we link the tax authority and tax types to the wagetype:
·         Tax model: The code for a tax authority, from t5ute
·         Res/wrk/UI: R = resident tax, W = work tax, U = unemployment tax
·         Tax Modif: The tax modifier for the employee
·         Tax Class: The processing class 71 value for the wagetype
·         Tax type combination: A code from t5uty that specifies which tax types the wagetype is taxable for




The third step is where we tell SAP which types of tax to use for each row in t5utm. Table t5uty (define tax type combinations) is where we define codes to represent a set of tax types. In t5utm, if a tax class is taxable for a particular combination of resident, work, unemployment and tax modifier, the system then gets the tax type combo value and looks it up in t5uty to see which types of tax to use. This is how SAP knows which /3xx wagetypes it needs to build. For example, tax type combo 06 would tell the system to build wagetypes /303, /304, /305 and /306.




 The Tax Model Diagram shows how the tables, infotypes and wagetypes come together to tell the system which /3xx taxable wagetypes to create:
Tax Model Diagram

Useful Reports

SAP has a standard program RPUTMDU0 (HR -> Payroll -> Americas -> USA -> Subsequent activities -> Period independent -> Tools -> Tax utilities -> Expand tax models) that reads the tax model tables and shows which tax types are used for each line of t5utm. There is also a standard report that displays all the tax authorities in the system (Display tax authorities on the Tax Utilities menu, or program RPUAUTU1, or view table t5utz via transaction se16).

 



Tax Data Maintenance – Unemployment Insurance

Every state in the US collects an unemployment tax to fund unemployment insurance claims. This is an employer-paid tax, so there is not effect on the employee. However, each state has its own tax rate and that tax rate can vary from one company to another in the state. The company-specific tax rate is call the ‘experience rate’ because it’s based on the state’s experience in paying out unemployment claims for employees laid-off from a company. The more people a company lays-off, the higher the experience rate. This experience rate can change every quarter.
Client XXX does not pay unemployment taxes based on what is calculated in SAP. Instead, the total taxable unemployment wages are multiplied by the experience rate outside of SAP when the quarterly unemployment tax returns are filed.
Some states requires companies to report their unemployment wages per physical site within the state – this is called Multiple Worksite Reporting and is controlled via the worksite field on infotype 209. Again, Client XXX does not use SAP for its worksite reporting so that part of the system is not used.

Tax Data Maintenance – Tax Overrides

SAP and BSI allow companies to override certain parts of the tax calculation. Most of the configuration is done is BSI; the one piece of it done in SAP is to define employee override groups. These groups also need to be setup in BSI (Tax Factory). The employee override group can then be entered into infotype 234 or set dynamically in a rule in payroll.
The override groups and rules allow you to override the tax calculation formula so that you can withhold taxes at rates different than the standard ones provided by BSI. This is currently used for some stock option and relocation payments.


Tax Data Maintenance – Symbolic Account Split

SAP gives you an option to post a given tax type to different FI/CO accounts based on which tax authority or tax level (Fed, state, local) it belongs to. For example, Federal taxes are posted to one account, and state/local taxes posted to another. The process is simple – look at every tax wagetype and then copy its contents to another wagetype that is then posted to the correct account. At Client XXX there are three tax-posting wagetypes – 9TAF (Federal), 9TAS (state) and 9TAL (local), generated in rule ZUHF in the tax schema ZUA2.

Priority of Tax Wagetypes

When deducting tax, the system follows a certain order or priority, This is defined in the ‘Maintain priority of tax wagetypes’ step, or table t5us0. Generally there is no need to maintain this table, since it is delivered by SAP to take Federal taxes first, then state, then local. There are other settings in this table to control how taxes are deducted when not enough money is present, and whether or not the tax wagetype is from regular income or tip income.

Tax Wagetypes

Descriptions of tax wagetypes

These wagetypes store the results of tax calculations; other than the wagetypes for employee taxes, they are not really linked to the amount of cash the employee receives.
Wagetype
Description
Explanation
Notes
/3xx
Taxable earnings
This is the amount of earnings (payments) that is taxable for each authority and tax type. It does not include pre-tax deductions.
Some tax authorities require the company top report these wages. Other than that, they are not used in the tax calculation process.
/6xx
Reportable wages
These amounts are the /3xx earnings minus the pre-tax deductions. These amounts are sent to BSI for taxation.
States require companies to report their /610 unemployment wages every quarter.
/7xx
Taxable wages
These are the amounts that are taxed for each authority & tax type. These wages reflect tax caps (i.e. for FICA and unemployment) and reciprocity. The /7xx wagetypes are returned to SAP from BSI.
These amounts are the ones reported on the W-2.
/4xx
Taxes
These amounts are for employee and employer taxes, based on the /7xx wages, as calculated by BSI.
Contains employee-paid and employer-paid taxes (processing class 72 determines this)
/Qxx
Taxable not taxed wages
Certain wages can be reported as taxable, but no tax is required to be taken from them.
Imputed income on group-term life insurance is a good example of a taxable-not-taxed earning.
/Nxx
Uncollected taxes
There are cases where an employee has taxable income, but not enough money to pay for the taxes on it. Instead of /4xx taxes, SAP records the amount of uncollected tax in /Nxx wagetypes. (Taxable wages are not always cash wages).
Uncollected FICA and Medicare taxes will try to balance out in future payrolls, and others do not.
/Ixx
Not reduced wages
In some cases the system is able to deduct a pre-tax deduction but does not have enough taxable income to offset it. The amount of taxable income that could not be offset (i.e. reduced) is stored in the /Ixx wagetypes.
The system will try to reduce wages in the next payroll by these amounts. If an employee has /Ixx wagetypes, then their FICA/Medicare and other flat-rate taxes wont tie back to their /7xx wages (i.e /703 * 6.2% <> /403).

 



Linking tax wagetypes to other tax data

Each tax wagetype also has a split indicator set, and this links it to the tax authority it is reportable to. For example, we could have two or three /401 wagetypes in a payroll, and the split links us to the TAX table in the payroll result that tells us the tax authority it is reportable to. In the following case we see that a split of ‘01’ links us to Federal in the TAX table, and split ‘02’ links us to OH (this is from the Display Payroll Results tool, or report RPCLSTRU):
RT (Results Table)
The two-digit number in the ‘C1’ column in the RT links us to the ‘SS’ column in the TAX table. So when the C1 split is 01, we know that wagetype is linked to tax authority FED. When C1 is 02, then the wagetype is linked to tax authority OH.


The TAX table also shows us the data used to calculate taxes in that payroll result. For Federal, we see that this person had 13 tax exemptions, filed Married, and this was used for his resident and unemployment tax calculations. If they were exempt from any taxes, we would see that in the ‘Tex indicator’ line – there would be an exemption indicator under each ‘Tax type’ that was exempted.
TAX Table

Gross to Net Wagetypes

These wagetypes control the amount of cash the employee receives. The various wagetypes used to make payments and take deductions all cumulate, or add into these wagetypes. These gross-to-net wagetypes therefore may or may not have anything to do with taxable wages or taxes. They simply keep track of how much money to pay the employee.

Wagetype
Description
Explanation
Notes
/101
Total Gross
This contains all the cash payments to an employee – whether those payments are taxable or not.

/110
Total EE Deductions
All employee deductions that were taken from the employee’s pay for the current pay period.

/5U0
Total EE Taxes
All employee taxes taken from the pay this pay period

/560
Net Pay
 The total amount of net pay for the employee.
If the employee deposits their pay into multiple accounts, then there will be a /559 for each account. The sum of /559 equals /560.

Gross-Ups

Cash or Regular Gross-ups

A gross-up is a guaranteed net payment of a taxable wage to the employee. For example, the company wants to pay a $100 award to an employee, and since that is taxable income, the employee owes taxes on it. So we know that is the employee is to get $100 in net pay, we need to have a higher gross, or taxable, amount. This amount is added to taxable income, and when taxes are deducted from it we get back to the original $100 net payment.
In SAP there are two wagetypes for a gross-up – the net wagetype and the gross wagetype. The net wagetype does not really pay anything – it is not cumulated to /101 (Total Gross), so it does not add any cash income to the payroll. And although it is not taxable, it has processing classes 68, 69 and 71 set so that we know what to include in the gross-up. The link between the net and gross wagetype is stored in the ‘1st der. WT’ field in table t512w; the gross wagetype will be coded into the ‘1st derived wagetype’ field on the net wagetype.
The gross wagetype does cumulate to /101, and it does add to taxable wages. Once taxes are deducted from the gross, we end up back to the net amount. For example, a $100 net might gross-up to $160. Then SAP would deduct $60 in tax from that, leaving a net pay of $100.






No-pay Gross-ups

Sometimes employees are paid some sort of taxable income outside the system – relocation expenses for example. In that case, we want to increase their taxable income to record that ‘net’ payment that was made to them, but we don’t want to pay them any ‘cash’ money. In these cases SAP can process non-cash, or ‘no-pay’ gross-ups. The net and the gross do not generate any cash payments to the employee, but the gross-up does add to taxable wages.

$100 in the net wagetype. SAP then grosses-up that amount to $160, but the gross-wagetype does not cumulate to /101, so it does not pay anything to the employee. However, we still have $60 in taxes to deduct, so SAP generates a third wagetype, a cash payment, to exactly offset the amount of tax. For a no-pay net it generates $160 in gross, and $60 in a cash payment that equals the $60 in tax. There is a zero net effect on the employee.
In the wagetype table t512w, we see the tax payment wagetype in the ‘2nd der. WT’ field. In this case, the net is 270E, the gross is 270F and the tax payment is 270G.

For a $100 no-pay gross-up, we enter the net wagetype and then the system generates the gross and the tax payment when payroll runs.

Period 1 in 1
Wagetype
Description
Amount
Notes
/101
Total gross
$60
Since 270G is a cash payment, it is cumulated into /101
/5U0
Total EE Tax
$60
Actual employee tax deducted from employee
/560
Net Pay
$0

270E
Tax Equal Net
$100
No-pay net
270F
Tax Equal Gross
$160
No-pay gross – no cumulation to /101
270G
Tax Equal Tax
$60
Cash payment to cover $60 in expected employee tax

Problems with Gross-ups

If the employee has a claim when a no-pay gross-up is processed, the cash payment for taxes will first go to satisfy the claim, instead of offsetting taxes. Claims always come before taxes. In the $100 no-pay gross-up example, we would then have $100 net, $160 gross, zero net payment, and uncollected taxes.
Period 1 in 1
Wagetype
Description
Amount
Notes
/101
Total gross
$60

/5U0
Total EE Tax
$0

/Nxx
Uncoll EE tax
$60
The $60 in 270G was used to pay off the existing claim first, so there was no money leftover to pay for taxes. Now the employee’s taxes are not in balance with their wages.
/560
Net Pay
$0

/561
Claim
$60

/563
Claim paid
$60

270E
Tax Equal Net
$100
No-pay net
270F
Tax Equal Gross
$160
No-pay gross
270G
Tax Equal Tax
$60
Cash payment to cover $60 in expected employee tax

Reconciling Taxable Wages – No Retrocalculation

Many times we have to reconcile the taxable wages back to the wages paid to the employee. To do this, identify all the taxable wagetypes in the RT and add them together. Taxation may be different from one authority and one tax type to another. You can use the ZP_TAXMODEL program to determine which wagetypes are taxable for the various tax authorities, tax types, and tax modifiers.
When reconciling the wages, be sure to keep in mind which ones are taxable vs. taxable-not-taxed. Wagetypes that are ‘taxable’ will go into /3xx, /6xx and /7xx. Taxable-not-taxed wagetypes will cumulate into /Qxx. The W-2 adds the /7xx and /Qxx wagetypes together for reporting.
When balancing taxes to the taxable wages, also be aware of any uncollected taxes that may be present.

Retrocalculations

Cash vs Tax Perspective

In both current-period and retro-period calculations, there really is no direct link between cash wages and taxable wages. It is best to think of them as two separate processes.

Gross to Net Equation

For every payroll period the net pay can be calculated with this equation:

/101 - /110 - /5U0 + /552 + /561 - /563 = /560

Or in friendlier terms:

Total cash payments – total employee deductions – total employee taxes + retro differences + claim – claims paid = net pay.

Forming Retro Differences

Using the gross-to-net equation as a guide, an abbreviated payroll result could look like the table below. One exception is that we don’t put accounts on /101, /110 and /5U0 – instead we account for their individual components such as base pay, overtime, cafeteria deduction, withholding tax and so on.

Period 1
Wagetype
Amount
Debit
Credit
/101
$1000
$1000

/110
$200

$300
/5U0
$300

$300
/560
$500

$500

Wagetype amounts can change retroactively. For example, if an employee was underpaid by 8 hours of overtime in a previous period, the amount of the overtime wagetype would increase retroactively. Since overtime is a cash payment, it would cause /101 to increase retroactively, showing that we now need to pay the employee $100 more in this case. But, in a retrocalculated period we can not change the amount of net pay, since that pay was already transferred to the bank (or paid via check). The difference between what was paid originally vs what should now be paid is put into a wagetype called ‘retro differences’, or /551. This keeps the retro payroll period in balance (i.e. debits equal credits).

Period 1 in 2
Wagetype
Amount
Debit
Credit
/101
$1100
$1100

/110
$200

$200
/5U0
$300

$300
/560
$500

$500
/551
$-100

$100

Then in the current period, the system sums all the /551 wagetypes from the retro periods, multiplies by negative 1 and places that amount in /552. If positive, this adds to the amount of net pay, if negative then it will reduce net pay. /551 and /552 should always exactly offset each other.

Period 2 in 2
Wagetype
Amount
Debit
Credit
/101
$1000
$1000

/110
$200

$200
/5U0
$310

$310
/560
$590

$590
/552
$100
$100

 

Claims

Retro differences (wagetype /552) is added to total net pay (wagetype /560) in the current period. If /552 is negative, it could reduce /560 to a negative amount, which is not allowed (can’t have negative net pay). The amount it would go negative is the amount that can not be recovered in the current period, and that amount is stored in /561 – a Claim. The claim is the amount of money the employee still owes the company because they don’t have enough to pay it back.
For example, assume the employee was really on leave of absence beginning in period 1, so they would have had a total gross of zero, but they were originally paid $1000. In that case, the results would look like:

Period 1 in 2
Wagetype
Amount
Debit
Credit
/101
$0
$0

/110
$200

$200
/5U0
$300

$300
/560
$500

$500
/551
$1000
$1000


In period 2, the employee is still on leave of absence, so no payments, deductions or taxes are taken. The $1000 overpayment from period 1 in 2 is stored as a claim, since there is no net-pay to offset it.

Period 2 in 2
Wagetype
Amount
Debit
Credit
/101
$0
$0

/110
$0

$0
/5U0
$0

$0
/560
$0

$0
/552
$-1000

$1000
/561
$1000
$1000


The claim (/561) is the amount the employee owes the company. In every subsequent payroll the system will apply money towards paying off the claim, before it uses the money for any deductions or taxes. For example, in period 3 the employee gets paid $600, and all of that gets allocated to reduce the claim.

Period 3 in 3
Wagetype
Amount
Debit
Credit
/101
$600
$600

/110
$0

$0
/5U0
$0

$0
/560
$0

$0
/561
$400
$400

/563
$1000

$1000

Taxation of Retrocalculations

Tax When Paid (TWP) vs Tax When Earned (TWE)

Since SAP’s payroll system has retrocalculation functionality, it can happen that we change payments in the past that affect taxable wages. This is something that tax authorities never expect, and don’t really recognize. Tax authorities want companies to tax payments based on when the employee has ‘constructive receipt’ of the wages. Constructive receipt in SAP terms means that we tax the wages when they are paid, not when they are earned. The tax when paid date corresponds to the check date and/or period end date depending on the infotype.
So when SAP does retroactively change wages in the past, those changes are rolled forward to the current period and taxed there. However, the taxable wagetypes change in the retro periods. For example, in the first retrocalculation case /101 increase in period 1 in 2, because the overtime wagetype increased. But that increase was not taxed in period 1 in 2, it was rolled forward to period 2 in 2 and taxed there (which is why taxes are higher there).
There are some cases where wages are taxed when earned – gross-ups/gross-downs, retroactive changes in tax areas, and NAMC’s

Balanced & Unbalanced Offsets

The changes in taxable wagetypes are carried forward from retro period to the current period in table XDFRT (you can view that table in the payroll clusters display report). In the current period, the payroll program sums together all the XDFRT entries and then one by one sums them to the current period’s taxable wages – either increasing or decreasing taxable wages in the current period. It will continue doing this as long as the taxable wages in the current period do not go below zero. The wages it can clear go to the BAL table (BAL for balanced offsets). The entries it can not clear go to the UNB (unbalanced offsets) table. Every subsequent payroll will read in the previous period’s UNB entries and try to clear them against current taxable income.
SAP creates in each pay period a wagetype called ‘Good money’, wagetype /5PY. It contains the total amount of taxable wages that can be worked with. So if /5PY is zero or negative then no wages can be cleared, as is the case with employees who have claims.
When trying to reconcile regular wagetypes to taxable wages in the current period, the equation to be used is ‘current period taxable wages’ + differences in BAL table = taxable wages.

Tax Priority & Caps

Function UTPRI controls two things – the priority of taking taxes, and the creation of uncollected taxes. It behaves one way in current period calculations and another way in retro periods. In a retro period, the function will let payroll take additional payroll taxes up to the amount of total gross (/101) in the original period. For example, if an employee retroactively went from residing and working in Blue Ash to residing in Blue Ash and working in Cincinnati, the system would retroactively take an additional 1.1% in Cincinnati tax, as long as the amount of total tax in the retro period was not greater than the amount of /101 in the original period. If it was greater than /101, then the difference gets placed into uncollected taxes. The documentation for this function can be viewed with transactions PDSY or PE04.


Retroactive changes to gross-ups

Client XXX use of no-pay gross-ups presents problems for the UTPRI function in retro calculations. For example, if a no-pay gross-up retroactively increases, and the employee has no other cash money (i.e. 3121L expats) then it’s likely you will get uncollected taxes: the gross goes up retroactively since gross-ups are tax-when-earned, and the cash payment for taxes increases to cover the additional amount of tax. However, the UTPRI function compares total tax to the original total gross and finds that the amount of tax now exceeds the amount of total gross, and it reduces the employee taxes (creating uncollected tax). However, the amount of the cash payment to cover taxes does not go down, and the difference between that and total tax results in a net payment to the employee. For example:
Period 1 in 1
Wagetype
Description
Amount
Notes
/101
Total gross
$1000

/5U0
Total EE Tax
$1000

/560
Net Pay
$0

270E
Tax Equal Net
$20000
No-pay net
270F
Tax Equal Gross
$21000
No-pay gross
270G
Tax Equal Tax
$1000
Cash payment to cover $1000 in employee tax

Then in period 2 we retroactively increase 270E to $30000:

Period 1 in 2
Wagetype
Description
Amount
Notes
/101
Total gross
$1500

/5U0
Total EE Tax
$1000
Capped at $1000; the value of /101 in the original period
/Nxx
Uncoll Tax
$500
The amount of taxes it could not take
/551
Retro differences
$-500
/101 - /110 - /5U0 + /551 has to equal /560, so /551 is set to balance this equation
/560
Net Pay
$0

270E
Tax Equal Net
$30000
No-pay net
270F
Tax Equal Gross
$31500
No-pay gross
270G
Tax Equal Tax
$1500
Cash payment to cover $1500 in expected employee tax



And assuming the employee had no other transaction in period 2, he gets paid $500:

Period 2 in 2
Wagetype
Description
Amount
Notes
/101
Total gross
$0

/5U0
Total EE Tax
$0

/552
Retro differences
$500
The sum of /551 times -1
/560
Net Pay
$500
/101 - /110 - /5U0 + /552 = net pay

 

To minimize the problems with retroactive changes to gross-ups affecting net pay or creating claims, we wrote a new payroll function ($RGUF) that ‘tricks’ the system so that if gross-ups change retroactively it always has enough money to cover taxes, so no retro differences are created. The example listed above should not happen in Client XXX system because of this enhancement.

Crossing Years

When a payroll retro crosses from the current year into a previous year then special processing takes place for taxes. SAP will not allow taxes in the previous year to change from their original values. For example, if you process a January correction check that retro’s back into the previous year and something causes taxes to change, SAP will reset those tax amounts back to their original value. This is done by the payroll function UOTX0 – keep old taxes in retro. This exception to this function is that it does let you change tax amounts via NAMC’s (infotype 221).

In this example, we’ll show what happens when a no-pay gross-up changes retroactively in the previous year. In the original period 12 a no-pay gross-up of $30,000 was processed:

Period 12 in 12
Wagetype
Description
Amount
Notes
/101
Total gross
$1500

/5U0
Total EE Tax
$1500

/560
Net Pay
$0

270E
Tax Equal Net
$30000
No-pay net
270F
Tax Equal Gross
$31500
No-pay gross
270G
Tax Equal Tax
$1500
Cash payment to cover $1500 in expected employee tax



Then in period 1, someone changed period 12’s 270E to $20,000 from $30,000. Total cash payments go down but the taxes remain the same. Wagetype 270G – the cash payment to cover employee taxes on the gross-up – is now $1,000. But, the system keeps the total tax amount at $1,500 because we are crossing years. To balance out the payroll, we get a /551 wagetype for $500.

Period 12 in 1
Wagetype
Description
Amount
Notes
/101
Total gross
$1000

/5U0
Total EE Tax
$1500
Kept at $1,500 – the amount of tax in the original period (12 in 12)
/551
Retro differences
$500
/101 - /110 - /5U0 + /551 has to equal /560, so /551 is set to balance this equation.
/560
Net Pay
$0

270E
Tax Equal Net
$20000
No-pay net
270F
Tax Equal Gross
$21000
No-pay gross
270G
Tax Equal Tax
$1000
Cash payment to cover $1500 in expected employee tax

In period 1, the employee had no other pay, and they receive a claim for the difference in tax from period 12 in 12 and 12 in 1. The employee ‘owes’ $500 because we reduced their tax payment but did not reduce their actual taxes in period 12 in 1.

Period 1 in 1
Wagetype
Description
Amount
Notes
/101
Total gross
$0

/5U0
Total EE Tax
$0

/552
Retro differences
$-500
The sum of /551 times -1
/560
Net Pay
$0

/561
Claim
$500




W-2 Corrections (W-2C)

Once W-2’s are run and finalized, any change to taxable wages or taxes in the previous year will cause a W-2C (W-2 correction) form to be produced. The ‘finalized’ date for W-2’s is stored in the system, and can be viewed via the Tax Reporter (PU19) menu path Tools -> Set filing date (after selecting the tax company and tax form W-2). You can also view the filing date by using the Data Browser (SE16) on v_t5xy_a, enter the tax company and use tax form ‘z_w2_01’.




 

3 comments:

  1. Thanks for a wonderful share. Your article has proved your hard work and experience you have got in this field. Brilliant .i love it reading. avenue south residence floorplan

    ReplyDelete
  2. If you look at the current scenario with regards to the grants for small business expansion, the federal government actually offers no direct grants. There are however, some programs by the government, through which grants for research and development activities that a small business might carry out are provided by the SBA. Then there are indirect grants in the form of small business loan guarantees as well as subsidized loans, wherein you get loans at reduced rate of interest from the bank as the government pays some part of your loan. Or if you default on your loan payment, the government pays the bank on your behalf. As you can see, there are opportunities galore for small business funding and grants through Mr Pedro and his funding company. They offer a loan at 2% rate which is very affordable. As a start-up business owner you just have to make an effort to find the one that is most suitable for your business goals.
    Contact Mr Pedro on pedroloanss@gmail.com for loans.
    All the best!

    ReplyDelete
  3. I am so happy today because God has done it for me after going through hard times with other loan lenders and nothing works out, I was about to lose my faith and hope but I still have to stand strong and pursue what I am looking for. I am happy today because God has directed me to the best Loan Company and I didn't regret anything after contacting them and my heart desire was granted and I was given the said amount I requested for (300,000.00 USD), the money was paid into my account after two weeks of talking with the company and they didn't stress me or give me any headache in getting this loan from them, others of my family members and friends I directed to them all got their loan too, I would love you to contact pedroloanss@gmail.com / whatsapp +1-8632310632 . and get your loan quickly and this is safe and fast, you that have loose hope, faith and everything you have all just in the name of getting a loan and nothing work out, bet me if you try this man called Pedro Jerome , you will never regret anything and your loan request will be approve and it will be paid directly into your bank account, so hurry now and contact quick response on WhatsApp +1-8632310632. ask for any type of Loan, and it will be granted to you. I wish you the best

    ReplyDelete