Salary Structure Error

My Salary Structure keeps giving errors, even after checking through severally.

image

Kindly see below

@OmarJaber

can you please share the complete earning and deduction table’s screenshot? Try standard conversion of first component (base) and then value. It should matter, but just for the sake it trial.

I think the error is in the formula syntax in the Basic Allowance in earnings. Try entering the formula as base * 0.12. this i believe will eliminate the formula syntax error. You may also want to ensure that all your formulas follow the format as indicate d in the examples.

@umair, Thank you for your response.

Payroll Template

PS: I have rearranged the placement of the base variable, however, I do not think that can affect it as it is only a variable that acts as a value container.

I need to be sure if the ERPNext can handle sophisticated payroll calculations as this is a very good pointer too an area of improvement if not able.

I have rearranged the placement of the base variable, however, I do not think that can affect it as it is only a variable that acts as a value container.

Here are the list of the formuars used for the structure:

Earning

Component: Basic Allowance
Condition: Nill
Formular: base*.12

Component: Housing Allowance
Condition: Nill
Formular: base*.2

Component: Transportation Allowance
Condition: Nill
Formular: base*.15

Component: Other Allowances
Condition: Nill
Formular: base*.53

Component: CRA
Condition: base*.01>(200000DT/12)
Formular: base
.01
Statistical

Component: CRA
Condition: base*.01<(200000DT/12)
Formular: (200000
DT/12)+(base*.2)
Statistical

Component: Reimbursibles
Condition: Nill
Formular: base*.47

Component: NHF
Condition: Nill
Formular: BA*.025
Statistical

Component: Total
Condition: Nill
Formular: CRA+RE+EPCS+NHF
Statistical

Component: Taxable Income
Condition: Nill
Formular: base-TL
Statistical

Payroll Template Used

Deductions

Component: Employer’s Pension Contribution
Condition: Nill
Formular: 0.1*(BA+HA+TA)
Statistical

Component: NSITF
Condition: Nill
Formular: 0.01*(BA+HA+TA)
Statistical

Component: Employee’s Pension Contribution
Condition: Nill
Formular: 0.08*(BA+HA+TA)

Component: 1st Band
Condition: (300000DT/12)<TI
Formular: 300000
DT/12*.07
Statistical

Component: 1st Band
Condition: (300000DT/12)>TI
Formular: TI
.07
Statistical

Component: 2nd Band
Condition: 300000*DT/12>TI
Formular: 0
Statistical

Component: 2nd Band
Condition: 600000DT/12>TI
Formular: (TI-(300000
DT/12))*.11
Statistical

Component: 2nd Band
Condition: 600000DT/12<TI
Formular: 300000
DT/12*.11
Statistical

Component: 3rd Band
Condition: 600000*DT/12>TI
Formular: 0
Statistical

Component: 3rd Band
Condition: 1100000DT/12>TI
Formular: (TI-(600000
DT/12))*.15
Statistical

Component: 3rd Band
Condition: 1100000DT/12<TI
Formular: 500000
DT/12*.15
Statistical

Component: 4th Band
Condition: 1100000*DT/12>TI
Formular: 0
Statistical

Component: 4th Band
Condition: 1600000DT/12>TI
Formular: (TI-(1100000
DT/12))*.19
Statistical

Component: 4th Band
Condition: 1600000DT/12<TI
Formular: 500000
DT/12*.19
Statistical

Component: 5th Band
Condition: 1600000*DT/12>TI
Formular: 0
Statistical

Component: 5th Band
Condition: 3200000DT/12>TI
Formular: (TI-(1600000
DT/12))*.21
Statistical

Component: 5th Band
Condition: 3200000DT/12<TI
Formular: 1600000
DT/12*.21
Statistical

Component: 6th Band
Condition: (3200000*DT/12)>TI
Formular: 0
Statistical

Component: 6th Band
Condition: (3200000DT/12)<TI
Formular: (TI-((3200000
DT/12)))*.24))
Statistical

Component: PAYE (Tax Exposure)
Condition: (1BD+2BD+3BD+4BD+5BD+6BD)<.01base
Formular: .01
base

Component: PAYE (Tax Exposure)
Condition: (1BD+2BD+3BD+4BD+5BD+6BD)>.01*base
Formular: 1BD+2BD+3BD+4BD+5BD+6BD

Component: Total Deductions
Condition: Nill
Formular: EPCS+PAYE+IOU+LR+LF
Statistical

Component: IOU
Condition:
Formular:

Component: Loan Repayment
Condition:
Formular:

Component: Lateness Fine
Condition:
Formular:

Salary Component


Sr Name Abbr Type


1 Employee’s Pension Contribution EPCS Deduction
2 Duration DT Earning
3 NSITF NSITF Deduction
4 Total Deductions TD Deduction
5 6th Band 6BD Deduction
6 5th Band 5BD Deduction
7 4th Band 4BD Deduction
8 3rd Band 3BD Deduction
9 2nd Band 2BD Deduction
10 1st Band 1BD Deduction
11 Total TL Earning
12 IOU IOU Deduction
13 Refund To Staff RTS Earning
14 Bonus BN Earning
15 Lateness Fine LF Deduction
16 Loan Repayment LR Deduction
17 Taxable Income TI Earning
18 PAYE (Tax Exposure) PAYE Deduction
19 NHF NHF Earning
20 Reimbursibles RE Earning
21 CRA CRA Earning
22 Employer’s Pension Contribution EPC Deduction
23 Other Allowances OT Earning
24 Transportation Allowance TA Earning
25 Housing Allowance HA Earning
26 Basic Allowance BA Earning
27 Leave Encashment LE Earning
28 Arrear A Earning
29 Income Tax IT Deduction

From what i see you’re trying to use the standard formula for calculating PAYE deductions. I tried to do so much earlier but ERPNext doesn’t as yet support complex formula as excel does from what i was told. So you’re better off using actual figures for PAYE deductions or determine the actual percentage if you wish to use formula:

My life has been easy ever since. Maybe when the formula code is upgraded to allow for excel-like conditions we may be able to enter PAYE calculations this way but for now we just have to make do with what we have.

1 Like

It is possible to enter PAYE calculations. I have implemented it.
Here is a sample of my PAYE deductions from Tanzania

Would you be kind as to show the full salary structure so i can understand your calculations better?

1 Like

Your calculations seem simple enough to understand but i think mine is a little more complex than this so it might be difficult to adapt it. I would have loved to attach a sample PAYE calculator in excel for you to see the calculations and underlying formula because at first glance it seems yours is similar to ours but there might be slight differences in the way graduated tax is implemented based on the formula. However, this forum does not allow files to be attached. But here’s the screenshot of the calculator:

Here are the formula for each step:

1st 300,000 - =IF(PAYE!$D$22>300000,300000,D22)
NEXT 300,000 =IF(PAYE!$D$22-SUM(PAYE!I32)>300000,300000,PAYE!D22-SUM(PAYE!I32))
NEXT 500,000 - =IF(PAYE!$D$22-SUM(PAYE!I32:I33)>500000,500000,PAYE!D22-SUM(PAYE!I32:I33))
NEXT 500,000 - =IF(PAYE!$D$22-SUM(PAYE!I32:I34)>500000,500000,PAYE!D22-SUM(PAYE!I32:I34))
NEXT 1,600,000 - =IF(PAYE!$D$22-SUM(PAYE!I32:I35)>1600000,1600000,PAYE!D22-SUM(PAYE!I32:I35))
NEXT 3,200,000 - =IF(PAYE!$D$22-300000>=3200000,D22-3200000,PAYE!$D$22-SUM(I32:I36))

I’m not too sure i can be able to adapt the above formula to ERPNext as you have and i’m sure a lot of us would be keenly interested in being able to implement a proper formula-based PAYE calculation on ERPNext. So if you can use the above data to do a demo salary structure it will be an awesome breakthrough for those of us who use ERPNext here and have relied on manual calculations for tax.

1 Like

I think it is possible. But I can’t quite understand your formulas.
I also see cells I32, I33, I34, I35. What is in column I? In order to assist you with this I need to understand the formulas first

Sorry my bad. Here’s the full screenshot:

The formulas are embedded in the table highlighted in red. Here’s the link to the excel file. I’ve attached it to my Dropbox (I hope it’s not blocked by forum admin):

1 Like