Earning Calculations

This section discusses:

  • Basic pay.

  • Meal allowance.

  • Travel allowance.

  • Shift allowance.

  • Leave encashment.

  • Overtime.

  • Bonus.

  • Uniform allowance.

  • Car allowance.

  • Laundry allowance.

  • Special allowance.

  • Loan and salary advance allowance.

  • Festive advances.

Basic pay is the salary that is based on either a flat amount that is paid each month or the number of hours multiplied by an hourly rate for the employee. This earning is taxable. Global Payroll for Malaysia comes with two basic pay earnings: one based on a flat amount (SALARY BASIC) and another based on an hourly rate (SALARY HOUR).

Flat Amount

This amount is the minimum that a payee can earn for the pay period unless a special factor reduces the basic pay. The flat amount is entered into the system with the rate code KMSAL. The basic salary element (SALARY BASIC) uses the generation control element BSC GC MTHLY. When prorated, the system uses the proration rule EARNING PO to adjust the amount by the number of calendar days (dividing the calendar days in the slice by the calendar days in the period).

The SALARY BASIC flat amount contributes to the following accumulators:

  • SALARY BASIC_CMTDA

  • SALARY BASIC_CYTDA

  • MYS WAGES

  • SOC AC INCOME SEG

  • SALARY AC BASIC

  • ERN AC GROSS

The earning element SAL BSC RTO is used for retro calculation of Basic Pay.

Hourly Rate

This earning is applicable to hourly pay group payees. It is calculated by multiplying the total working hours (BSC FM SCHHRS) by the hourly rate (KMHRLY). The hourly salary element (SALARY HOURLY) uses the generation control element BSC GC HOURLY, and it uses the pay group proration rule by default.

SALARY HOUR contributes to the following accumulators:

  • SALARY HOUR_CMTDA

  • SALARY HOUR_CYTDA

  • MYS WAGES

  • SOC AC INCOME SEG

  • SALARY AC HOUR

  • ERN AC GROSS

The earning element SAL HOUR RTO is used for retro calculation of Basic Pay Hourly

Meal allowances compensate employees for expenses incurred for food. They are paid as a flat amount that is set at the payee level on the Earnings and Deductions Assignment pages or by positive input.

You can override this amount at the pay calendar level. To do this, you create a new variable specifically for Meal Allowance and ensure that it can have calendar overrides. Then, you replace the generic CMN VR ZERO variable in the Meal Allowance code with the new variable.

The meal allowance element (MEAL ALLOW) uses the generation control element ERN GC PAYALLOW to ensure that the allowance is applied only once per period and only in the last segment.

When prorated, the element uses CMN DR CALDYSMTH to calculate the allowance based on the month's calendar days. When MEAL ALLOW is prorated, leave without pay days decreases the entitlement.

The MEAL ALLOW element contributes to the following accumulators:

  • MEAL ALLOW_CMTDA

  • MEAL ALLOW_CYTDA

  • MYS WAGES

  • SOC AC INCOME SEG

  • ERN AC OTHALL

The earning element MEAL RTO is used for retro calculation of Meal Allowance.

Travel allowances are granted to payees who commute to work. They are paid as a flat amount set at the payee level on the Earnings and Deductions Assignment pages or by positive input.

You can override this amount at the pay calendar level. To do this, you create a new variable specifically for Travel Allowance and ensure that it can have calendar overrides. Then, you replace the generic CMN VR ZERO variable in the Travel Allowance code with the new variable.

The travel allowance element (TRAV ALLOW) uses the generation control element ERN GC PAYALLOW to ensure that the allowance is applied only once per period and only in the last segment.

TRAV ALLOW contributes to the following accumulators:

  • TRAVEL ALLOW_CMTDA

  • TRAVEL ALLOW_CYTDA

  • MYS WAGES

  • SOC AS INCOME SEG

  • ERN AC TRAALL

  • EPF AC GROSS

The earning element TRAVEL RTO is used for retro calculation of Travel Allowance.

Shift allowances can be calculated based on the hourly rate or a flat rate.

Calculation of Shift Allowance Based on Hourly Rate

SHFT ALL HRL is paid as a percentage of the hourly rate multiplied by the shift hours. The shift hours are set at the payee level by positive input.

You can override the percentage variable ERN VR SHFTALLPCT value at the pay calendar level.

The shift allowance hourly amount element (SHFT ALL HRL) uses no generation control. It applies the pay group proration rule when prorating payments.

SHFT ALL HRL contributes to the following accumulators:

  • SHFT ALL HRL_CMTDA

  • SHFT ALL HRL_CYTDA

  • SOC AC INCOME SEG

  • ERN AC OTHALL

The earning element SHFT HRL RTO is used for retro calculation of Shift Allowance Hourly.

Calculation of Shift Allowance Based on Flat Amount

The shift allowance SHFT ALL AMT is paid as a flat amount that is set at the payee level by the Earnings and Deduction Assignment or positive input pages. The shift allowance flat amount element uses the generation control element CMN GC ACTIVE. When prorated, the element uses EARNING PO.

SHFT ALL AMT contributes to the following accumulators:

  • SHFT ALL AMT_CMTDA

  • SHFT ALL AMT_CYTDA

  • SOC AS INCOME SEG

  • ERN AC OTHALL

The earning element SHFT AMT RTO is used for retro calculation of Shift Allowance Amount.

Leave Encashment (LEAVE ENCASH) is an earning that is based on unused leave and enables the automatic encashment of unused previous year leave balance. It is calculated by multiplying applicable leave days (calculated by the formula, LVE FM ENCASH) by basic salary rate (calculated by the formula, LVE FM PAYRATE). You can override these amounts at the payee level. The leave payment (LEAVE ENCASH) uses the generation control element LVE GC PAYENC. The variable LVE VR ENCASHMTH, enables the system to determine the month of payment.

LEAVE ENCASH contributes to the following accumulators:

  • SOC AC INCOME SEG

  • LEAVE ENCASH_YTDA

  • ERN AC LEAVE

  • EPF AC GROSS

Overtime is given to payees who work longer than normal hours to complete an assigned task. It is calculated by multiplying overtime hours by a percentage of the hourly rate.

Generally, overtime is paid in the month after the overtime work is completed. The rate that is used in overtime calculations is the rate at the time the work was performed, not when the overtime is paid.

The system issues a warning if more than 104 overtime hours are paid in one month.

Since overtime is paid only to employees who work extra hours, overtime hours are entered as Positive Input. Overtime is paid at either 1.5 times the hourly rate or twice the hourly rate depending on the overtime selected (1.5 or 2). The hourly rate is calculated by multiplying the rate formula ERN FM CHKOVTHRS by 150 percent for overtime payments of one-and-a-half times the normal rate (earning OVERTIME 1.5). When overtime payments are twice the normal rate (earning OVERTIME 2), the system calculates the hourly rate by multiplying ERN FM OVTRATE by 200 percent.

No generation control exists.

OVERTIME 1.5 contributes to the following accumulators:

  • OVERTIME 1.5_CMTDA

  • OVERTIME 1.5_CYTDA

  • SOC AC INCOME SEG

  • ERN AC GROSS

  • EPF AC GROSS

The earning element OVT 1.5 RTO is used for retro calculation of Overtime 1.5.

OVERTIME 2 contributes to the following accumulators:

  • OVERTIME 2_CMTDA

  • OVERTIME 2_CYTDA

  • SOC AC INCOME SEG

  • ERN AC GROSS

  • EPF AC GROSS

The earning element OV 2 RTO is used for Retro calculation of Overtime 2.

Bonuses are generally a fixed amount that are paid on a quarterly, biannual, or annual basis depending on the performance of the employee or the company. They can be a flat amount or a percentage of basic or gross salary. Bonuses can be contractual or noncontractual.

Contractual Bonus

Contractual bonuses apply to a particular period and must be reported as income for the period regardless of when the bonuses are paid. These bonuses can be quarterly, biannual, or annual.

CT BONUS is paid as a flat amount that is set at the payee level by positive input or as a recurring amount on the Earnings Deduction Assignment pages.

It uses the generation control element CMN GC ACTIVE to checks for active employees.

Global Payroll for Malaysia includes bonus accrual elements as part of the sample General Ledger Interface (GLI) functionality. You can use these elements to create your own bonus rules.

CT BONUS contributes to the following accumulators:

  • TAX AC ANN GROSS

  • CT BONUS_CMTDA

  • CT BONUS_CYTDA

  • ERN AC CYBON

The earning element CT BONUS PY is used for calculation of Contractual Bonus Previous Year.

Noncontractual Bonus

Noncontractual bonuses apply to the period in which they are paid. These bonuses can be paid annually (using NCT BONUS) or paid for a previous year (using NCT BONUS PY) for example, paid in January for the previous year.

NCT BONUS is usually paid as a flat amount that is set at the payee level by positive input.

No generation control exists. When prorated, the element uses the pay group proration rule.

NCT BONUS contributes to the following accumulators:

  • TAX AC ANN GROSS

  • NCT BONUS_CMTDA

  • NCT BONUS_CYTDA

  • ERN AC CYBON

The earning element NCT BONUS PY is used for calculation of Noncontractual Bonus Previous Year.

The uniform allowance is given so that employees can purchase uniforms. It is usually a one-time, annual payment that is entered at the payee level as positive input. UNIFORM is used for current uniform allowance payments, UNIFORM RTO is used for retroactive uniform allowance payments.

UNIFORM uses CMN GC ACTIVE. It cannot be prorated because the allowance is given in full to new employees when hired.

UNIFORM contributes to the following accumulators:

  • UNIFORM_CMTDA

  • UNIFORM_CYTDA

  • SOC AC INCOME SEG

  • ERN AC OTHALL

The earning element UNIFORM RTO is used for retro calculation of uniform allowance.

The car allowance is given to employees to maintain their cars. CAR is paid as a flat amount that is set at the payee level by positive input or earning/deduction assignment pages.

It uses the generation control element ERN GC PAYALLOW to ensure that the allowance is applied only once per period and only in the last segment. When prorated, the element uses ERN PO LSTPER to calculate the allowance based on the calendar days.

CAR contributes to the following accumulators:

  • CAR_CMTDA

  • CAR_CYTDA

  • MYS WAGES

  • SOC AC INCOME SEG

  • ERN AC TRAALL

The earning element CAR RTO is used for retro calculation of car allowance.

The laundry allowance (LAUNDRY) is given to employees to maintain their work uniforms. It is a flat amount that is set at the payee level by positive input or earning/deduction assignment.

The laundry allowance element uses the generation control element ERN GC PAYALLOW to ensure that the allowance is applied only once per pay period and only in the last segment. When prorated, the element uses ERN PO LSTPER to calculate the allowance based on the calendar days.

LAUNDRY contributes to the following accumulators:

  • LAUNDRY_CMTDA

  • LAUNDRY_CYTDA

  • SOC AC INCOME SEG

  • ERN AC OTHALL

The earning element LAUNDRY RTO is used for retro calculation of laundry allowance.

Special allowance (SPEC ALLOW) is a generic allowance that is set aside for a special purpose. It is a flat amount that is set at the payee level by positive input or earning/deduction assignment. The special allowance element uses the generation control element CMN GC ACTIVE. When prorated, the element uses proration rule EARNING PO to calculate the allowance based on calendar days.

SPECIAL contributes to the following accumulators:

  • SPEC ALLOW_CMTDA

  • SPEC ALLOW_CYTDA

  • MYS WAGES

  • SOC AC INCOME SEG

  • ERN AC OTHALL

The earning element SPECIAL RTO is used for retro calculation of special allowance.

Loan payments (LOAN ADV) and salary advances (SALARY ADV) are entered as flat amounts that are set at the payee level by positive input. Neither the loan allowance nor the salary advance elements use generation control.

LOAN ADV contributes to the following accumulators:

  • LOAN ADV_CMTDA

  • LOAN ADV_CYTDA

  • LOANS AC

SALARY ADV contributes to the following accumulators:

  • SALARY ADV_CMTDA

  • SALARY ADV_CYTDA

  • LOANS AC

The system enables you to grant advances for each of the four major festivals: Hari Raya (HARIRAYA ADV), Christmas (XMAS ER ADV), Chinese New Year (CNY ER ADV), and Deepavali (DEEPA ER ADV). The advances are later recovered in installments. Each of these advances is a flat amount that is set at the payee level by positive input.

HARIRAYA ADV contributes to the following accumulators:

  • HARIRAYA ADV_CMTDA

  • HARIRAYA ADV_CYTDA

  • FAD AC ADV AMT

  • FAD AC FA BAL

  • LOANS AC

XMAS ER ADV contributes to the following accumulators:

  • XMAS ER ADV_CMTDA

  • XMAS ER ADV_CYTDA

  • FAD AC ADV AMT

  • FAD AC FA BAL

  • LOANS AC

DEEPA ER ADV contributes to the following accumulators:

  • DEEPA ER ADV_CMTDA

  • DEEPA ER ADV_CYTDA

  • FAD AC ADV AMT

  • FAD AC FA BAL

  • LOANS AC

CYN ER ADV contributes to the following accumulators:

  • CNY ER ADV_CMTDA

  • CNY ER ADV_CYTDA

  • FAD AC ADV AMT

  • FAD AC FA BAL

  • LOANS AC