Symmetry Tax Engine Development in C# and dot.net

The Customer

Requirements

  • The application should be a desktop application.
  • The application contains many modules (In terms of task) that are executable by Auto Controller Task for each. Each controller should run by single windows service, which will start to initiate the process in sequence of each controller
  • We have to develop the application to calculate/manipulate the employees´ payroll in a company in constraint of state, city, and company tax bifurcation by applying different kinds of calculation techniques in sequence of particular employee roster or their company.
  • Through this application, it is possible to calculate the payroll with all applicable tax and benefits in the regular life cycle automatically according to their period of next pay.

Basic Flow

  • As per individual tasks, pay is calculated in the following sequence
    • Payroll transaction Workflow Taxability Calculate Earning Total Time Accounting Calculate Pretax Deductions Calculate Pay Run Taxes Calculate Post Tax Deductions Net Pay Distribution Void Process Work Flow Manual Checks
  • These processes are executed for all companies and their employees.
  • The process starts either by individual controller to get some particular or by Windows service to calculate all.

Functionality

Individual Tasks

Below Individual tasks have been developed to calculate the pay of employee by applying many types of algorithm and mathematical calculations.

  • Payroll transaction
  • Workflow Taxability
  • Calculate Earning
  • Total Time Accounting
  • Calculate Pretax Deductions
  • Calculate Pay Run Taxes
  • Calculate Post tax Deductions
  • Net Pay Distribution
  • Void Process
  • Work Flow Manual Checks.

Controllers

Controllers have been developed similarly as Individual tasks, the difference being in calling method of each task. Controllers have the parameters to pass on to calculate tasks whereas in individual tasks we have to pass Company Number and RunNum to process.

Windows Service

Windows service has been developed to merge all controllers in single task. All controllers run sequentially by the Windows service with passed company number and RunNum and it routes all companies having a schedule to pay in that particular dates.