Nómina
Crear y validar
Crear y validar una nómina electrónica con periodo, trabajador, devengados y deducciones.
Firma del método
create(
input: CreatePayrollInput,
options?: RequestOptions,
): Promise<CreatePayrollResponse>Endpoint Factus
POST /v2/payrolls
Fuente oficial: Crear y validar
La descripción completa de cada campo de devengados y deducciones está en la documentación oficial de campos. Los códigos tipados del SDK están en Tablas de referencia nómina.
Campos principales
Prop
Type
Ejemplo
import {
ContractTypeCode,
PaymentMethodCode,
PayrollAccountTypeCode,
PayrollIdentityDocumentCode,
PayrollPeriodCode,
WorkerSubtypeCode,
WorkerTypeCode,
} from "factus-js";
const response = await factus.payrolls.create({
reference_code: "990000070",
observation: "Nómina ordinaria mensual",
numbering_range_id: "01kpdv25zepw0vzn39th90h1a7",
settlement_period: {
month: "5",
year: "2026",
payroll_period_code: PayrollPeriodCode.Monthly,
},
payment: {
payment_method_code: PaymentMethodCode.BankDeposit,
bank_name: "Bancolombia",
account_type: PayrollAccountTypeCode.Payroll,
account_number: "123456789",
payment_date: "2026-06-05",
},
worker: {
identification_document_code: PayrollIdentityDocumentCode.CitizenshipCard,
identification_number: "1234567890",
first_name: "Mateo",
first_surname: "Gonzales",
second_surname: "Forero",
address: "Cra100 39-100",
country_code: "CO",
municipality_code: "68679",
has_integral_salary: false,
has_high_risk: false,
worker_subtype: WorkerSubtypeCode.NotApplicable,
contract_type: ContractTypeCode.FixedTerm,
employee_code: "001",
worker_type_code: WorkerTypeCode.Dependent,
salary: "2800000.00",
entry_date: "2023-03-15",
days_worked: "30.00",
},
accruals: {
suel: { amount: "2800000.00" },
tra: [{ amount: "249095.00", accrual_type_code: "1" }],
comi: [{ amount: "300000.00" }],
hora: [
{
quantity: "5",
percentage: "25.00",
amount: "79545.45",
start_date: "2026-05-06 18:00:00",
end_date: "2026-05-06 23:00:00",
accrual_type_code: "1",
},
],
},
deductions: {
salu: { amount: "131025.45", percentage: "4" },
pens: { amount: "131025.45", percentage: "4" },
},
});
console.log(response.data.number, response.data.reference_code);