Turquía

The Türkiye payroll localization covers salary computations for employees, including both employee and employer payroll taxes. It accounts for federal and state regulations.

Before configuring the Türkiye localization, refer to the general payroll documentation, which includes the basic information for all localizations, as well as all universal settings and fields.

Aplicaciones y módulos

Install the following modules to get all the features of the Türkiye payroll localization:

Nombre

Nombre técnico

Dependencias

Descripción

Türkiye - Payroll

l10n_tr_hr_payroll

  • hr_payroll

Includes all salary rules, leave logic, and compensation rules compliant with Türkiye labor laws.

Türkiye - Payroll with Accounting

l10n_tr_hr_payroll_account

  • hr_payroll_account

  • l10n_tr_hr_payroll_account

  • l10n_tr_hr_payroll

Vincula la nómina con la contabilidad mediante la creación de asientos contables (por recibo de nómina si es necesario) para registrar la nómina en los libros de la empresa.

Configuraciones generales

Primero debes configurar la empresa. Ve a Ajustes ‣ Usuarios y empresas ‣ Empresas. En la lista, selecciona la empresa que deseas y completa los siguientes campos:

  • Nombre de la empresa: Escribe el nombre comercial en este campo.

  • Address: Complete the full address, including the City, State, ZIP, and Country.

  • Tax ID: Enter the company’s tax ID.

  • Company ID : Enter the business’s ID number.

  • Currency: By default, TRY is selected. If not, select TRY from the drop-down menu.

  • Teléfono: Escribe el número telefónico de la empresa.

  • Correo electrónico: Escribe el correo que se usa para el contacto general.

Empleados

Every employee being paid must have their employee profiles configured for the Türkiye payroll localization. Additional fields are present after configuring the database for Türkiye.

Para actualizar el formulario de un empleado, abre la aplicación Empleados y haz clic en el registro correspondiente. En el formulario del empleado, completa los campos necesarios en las pestañas correspondientes.

Pestaña de trabajo

Escribe la dirección de trabajo del empleado en la sección Ubicación de la pestaña Trabajo.

Pestaña «Personal»

Asegúrate de que el empleado tenga al menos una cuenta bancaria confiable en el campo Cuentas bancarias de la sección Contacto privado.

Estas cuentas se usan para pagar al empleado. No podrás procesar la nómina de los empleados que no tengan una cuenta bancaria confiable. Si no hay una cuenta bancaria confiable configurada, en el tablero de Nómina aparecerá una advertencia y ocurrirá un error al intentar ejecutar el pago de la nómina.

Pestaña de nómina

Sección de resumen del contrato

Esta sección contiene la información que determina los cálculos salariales. Asegúrate de configurar los siguientes campos:

  • Contract: Ensure a contract start date is entered in the first field.

  • Tipo de salario: Indica cómo se paga al empleado.

    • Selecciona Salario fijo si el empleado recibe el mismo monto en cada periodo de pago.

    • Selecciona Salario por hora si el empleado cobra según las horas trabajadas.

    Truco

    Define un tipo de salario predeterminado en el tipo de estructura salarial para configurarlo de forma simultánea en varios empleados. Si es necesario, puedes reemplazar este valor en cada registro por separado.

  • Net to Gross: Leave this box unchecked if the gross salary is based on a fixed gross and a dynamically computed net (Gross to Net). Activate this option if the gross salary is based on a fixed net and a dynamically computed gross (Net to Gross).

  • Wage: If Net to Gross is unchecked, this field displays Wage. If it is checked, this field displays Net Wage. Enter the monthly amount earned by the employee.

  • Employee Type: May affect the working hours for the employee.

  • Contract Type: Determines how the employee is paid and classified, such as Permanent, Temporary, or Student.

  • Pay Category: Select Türkiye: Employee for this field. This defines when the employee is paid, their default working schedule, and the work entry type it applies to.

La sección de resumen del contrato en la pestaña de nómina del formulario del empleado.

Sección de horario

  • Origen de la entrada de trabajo: Define cómo se generan las entradas de trabajo para la nómina durante el periodo de pago especificado. Las opciones son:

  • Horas laborales: Usa el menú desplegable para seleccionar el horario laboral predeterminado. Este campo es muy importante para los empleados que pueden recibir un pago por horas extra (por lo general son empleados por hora y no asalariados).

Configuración de nómina

Several sections within the Payroll app install a Salary Structure, Structure Type, Rules, and Parameters specific to Türkiye.

Estructuras salariales y tipos de estructura

When the l10n_tr_payroll module is installed, a new Salary Structure gets installed, Türkiye: Regular Pay. This structure includes one Structure Type, Türkiye: Employee.

The Salary Structure contains all the individual salary rules that informs the Payroll app how to calculate employee payslips.

The Türkiye salary structure in the salary structures list.

Reglas salariales

To view the salary rules that inform the salary structure what to do, navigate to Payroll app ‣ Configuration ‣ Structures and expand the Türkiye: Employee group to reveal the Türkiye: Monthly Pay structure type. Click Türkiye: Monthly Pay to view the detailed salary rules.

The top portion of the Türkiye salary rules.

Each rule defines how pay is calculated, taking into account factors such as commissions, bonuses, taxes, and insurance.

Parámetros de regla

Algunos cálculos requieren tasas o límites salariales específicos. Los parámetros de reglas pueden definir un valor, ya sea un porcentaje o un monto fijo, que se referencia en las reglas salariales.

Most rules pull information stored in the parameters module to get the rate of the rule (a percentage) and the cap (a monetary amount).

Para ver los parámetros de las reglas, ve a Nómina ‣ Configuración ‣ Parámetros de regla. Ahí aparecerán todos los parámetros con sus reglas salariales vinculadas. Puedes consultarlas o revisar los parámetros asociados a una regla si buscas el nombre de la regla y haces los cambios necesarios.

Ensure the following rules parameters are up to date with current rules and regulations:

  • Türkiye Minimum Wage

  • Türkiye SSI Base Amount Ceiling

  • Türkiye Tax Exemption Amount

  • Türkiye Stamp Tax Percentage

  • Türkiye Tax Bracket Rates

  • Türkiye SSI Company Contribution

Example

The minimum wage is updated, and is different from the one added by default in Odoo. To update this, navigate to Payroll app ‣ Configuration ‣ Rule Parameters, then click the rule parameter Türkiye Minimum Wage. Click Add a line and add the new Parameter Value (minimum wage), and reference the date the change goes into effect.

Importante

Odoo adds updated rule parameters for the current calendar year. It is not recommended to edit rule parameters unless a parameter has changed, and is different from the rule parameters created by Odoo. Check with all local and national regulations before making any changes to rule parameters.

Türkiye taxes

The following sections explain in detail the various employer and employee taxes specific to Türkiye.

Seguro social

Social insurance rules calculate the contribution amounts that are to be paid by the employer and employee to the SSI. This is only available for Türkiye employees.

Social insurance consists of two main categories:

  • Social Insurance: Employers contribute 15% of their employee’s salaries to the SSI, while employees contribute 14% of their salaries, which is deducted from their payslips.

  • Unemployment Insurance: Employers contribute 2% of their employee’s salaries to the SSI, while employees contribute 1% of their salary, which is deducted from their payslips.

Importante

Employer and employee contributions for both categories are calculated according to a salary maximum that is revised each year. Therefore, it is necessary to check the corresponding rule parameters to ensure all taxes are current.

Impuesto sobre la renta

Employees in Türkiye are subject to a progressive income tax system, where tax rates increase with higher annual income levels.

To calculate the deductible tax amount for the current month, the following is done:

  1. Compute year-to-date gross amount: This serves as the base amount for calculating the employee’s taxable salary.

  2. Determine year-to-date taxable amount: The taxable amount is compared to progressive tax brackets to compute the year-to-date tax amount due.

  3. Subtract prior month’s tax: The amount taxed in previous months is subtracted from the year-to-date tax to obtain the pre-exemption tax amount due for the current month.

  4. Deduct exemption amount: The exemption amount is deducted from the pre-exemption tax to determine the final tax due amount post-exemptions.

Tramos impositivos

As of 2025, and depending on the annual income of the employee, the following rates apply:

Taxable Bracket

Rango

15%

0.00 - 158,000.00

20%

158,000.00 - 330,000.00

27%

330,000.00 - 800,000.00

35%

800,000.00 - 4,300,000.00

40%

above 4,300,000.00

Nota

Tax brackets are applied progressively. This means each portion of an employee’s income is taxed at its respective rate within each bracket, rather than their entire income being taxed at the highest rate they fall into.

Importante

Turkish employees benefit from a monthly personal income tax exemption, which is adjusted each year. For 2025, the exemption amount is TRY 3,315.70 per month, from January through July.

Stamp Tax

Stamp tax is applied to gross salary payments in Türkiye. The standard rate is 0.759% (i.e. 7.59 per thousand), which is withheld from the employee’s gross wage and remitted to the tax authority GIB by the employer.

The base amount for the stamp tax is the total gross salary amount (including bonuses or extras).

Importante

Turkish employees receive a personal stamp tax exemption, the value of which is updated annually. As of 2025, the exemption amount is TRY 197.38 per month, from January through July. This applies to gross earnings up to the legal minimum wage level before calculating stamp tax.

Net to gross

On an employee record, if the option Net to Gross is enabled in the contract section of the payroll tab, the net salary is fixed, and specified in the Net Wage field, while the gross wage is recalculated each month, and increases throughout the year.

The gross wage is what tax calculations are based on, so for these employees, the monthly net wage does not change, but the monthly gross amount is recalculated each month, changing the taxes with it.

In this scenario, the least amount of taxes are paid in the beginning of the year, and taxes increase as the year progresses.

Example

On January 31st, an employee’s year-to-date total income is ₺10,000. The income tax is calculated based on the ₺10,000, which in this example is ₺800. In February, the employee’s year-to-date gross is ₺20,000, and the taxes are calculated based on that figure, for a total of ₺2,000.

Since the employee already paid ₺800 in January, the taxes due for February are ₺1,200 because the employee already paid ₺800 toward that total (₺2,000 - ₺800 = ₺1,200).

Gross to net

On an employee record, if the option Net to Gross is not enabled in the contract section of the payroll tab, the gross salary is calculated based on the Wage field.

The gross wage then has all the salary rules computed, to determine the net wage. The taxes are then computed based on the gross wage. In this scenario, unlike with net to gross, taxes are more consistent and do not change that much, from month to month.

Nota

The gross from net calculation depends on the salary rules defined in the Türkiye: Monthly Pay salary structure. Changes made to those rules affect the computed amount.

Run Türkiye payroll

Antes de ejecutar la nómina, el responsable de la misma debe validar las entradas de trabajo de los empleados para confirmar que los pagos son correctos y detectar errores. Esto incluye verificar que todos los permisos estén aprobados y que las horas extra tengan la información correspondiente en caso de existir.

Las entradas de trabajo se sincronizan con base en la configuración del contrato del empleado. Odoo toma la información del horario asignado, los registros de asistencia, la planificación y los permisos aprobados.

Any discrepancies or conflicts must be resolved, then the work entries can be regenerated.

Una vez que toda la información sea correcta podrás crear los recibos de nómina por separado o en lotes. En la aplicación Nómina se llaman periodos de nómina.

Las entradas de trabajo de un periodo de nómina, con algunos permisos en las entradas de trabajo.

Nota

Para agilizar el tiempo que le toma este proceso al responsable de nómina, es común procesar los recibos en lotes, ya sea por tipo de salario (fijo o por horas), calendario de pago (semanal, quincenal, mensual, etc.), departamento (costos directos o administración) o cualquier otro criterio que se adapte mejor a la empresa.

El proceso de ejecutar la nómina incluye distintas acciones a realizar para asegurar que los impuestos retenidos sean los adecuados, que el salario neto que reciba el empleado sea el correcto y que las horas trabajadas reflejen las horas reales del empleado, entre otras cosas.

Al ejecutar un lote de nómina, verifica que el periodo, la empresa y los empleados incluidos sean correctos antes de comenzar a analizar o validar los datos.

Cuando los recibos de nómina estén en borrador, revísalos para confirmar su exactitud. Revisa la pestaña Días trabajados y entradas y confirma que el tiempo trabajado y las demás entradas sean correctas. Agrega cualquier entrada que falte, como comisiones, propinas o reembolsos.

Después revisa los distintos totales (pago bruto, impuestos del empleado, beneficios, impuestos del empleador y salarios netos), luego haz clic en Calcular hoja para actualizar los cálculos salariales si hiciste cambios. Si todos los datos son correctos, haz clic en Validar.

La pestaña de número de días trabajados de un recibo de nómina.

Verificación contable

The accounting process when running payroll has two components: creating journal entries and registering payments.

Creación de asientos contables

Es necesario registrar los asientos contables de forma individual o en lote después de confirmar y validar los recibos de nómina. El asiento se crea primero como borrador.

Importante

Debes decidir si los asientos contables se crearán de forma individual o en lote antes de ejecutar la nómina.

Todos los recibos de nómina en estado de borrador.

Registrar pagos

After the journal entries are validated, Odoo can generate payments.

Importante

To generate payments from payslips, employees must have a trusted bank account. If the employee’s bank account is not marked as trusted, payments cannot be generated through Odoo.

Los pagos pueden estar agrupados por contacto si hay un contacto asociado a una regla salarial.

Recibos de nómina con el estado de pagado.

Cierre de nómina

Si no hay errores, la nómina se considera completada para el periodo de pago.