Liasse
Components

payslip

A presentational French payslip — employer/employee header, contributions table and computed net to pay.

Pro component. Install it with a license key — see Pro components.

A presentational French payslip (bulletin de paie): an employer/employee header, a contributions table with employee and employer rates and amounts, and the computed net to pay. Data-driven — not a legal substitute for a compliant payroll engine.

import { payslip } from "@/liasse/components/payslip";
import { render } from "@liasse/core";
import "@liasse/xlsx";

const doc = payslip({
  employer: { name: "ACME SARL", details: ["SIRET 812 345 678 00021"] },
  employee: { name: "Camille Martin", details: ["Développeuse"] },
  period: "Juin 2026",
  payDate: "30/06/2026",
  grossSalary: 3500,
  lines: [
    { label: "Sécurité sociale plafonnée", base: 3500, salarialRate: 0.069, salarial: 241.5, patronalRate: 0.0855, patronal: 299.25 },
    { label: "CSG/CRDS", base: 3441.5, salarialRate: 0.029, salarial: 99.8 },
  ],
  netImposable: 2950,
});

const bytes = await render(doc, { format: "xlsx" });

Input

FieldTypeDescription
employerPayslipParty{ name, details?: string[] }.
employeePayslipParty{ name, details?: string[] }.
periodstringPay period, e.g. "Juin 2026".
payDate?stringPayment date.
grossSalarynumberGross salary (salaire brut).
linesPayslipLine[]{ label, base?, salarialRate?, salarial?, patronalRate?, patronal? }.
netImposable?numberTaxable net, shown when provided (never guessed).

The contributions table totals the employee and employer columns with =SUM, and the component computes net à payer = grossSalary − Σ salarial.

On this page