What is Siltra?
Siltra is the application every company in Spain uses to exchange information with the Social Security (TGSS/INSS). Among the files it receives is the FIE file (Fichero INSS Empresas), which reports the sick-leave activity of the company's workers: initial certificates (partes de baja), confirmation certificates, discharge certificates (partes de alta), relapses, cancellations and INSS resolutions.
The Factorial – Siltra integration reads that file and turns those official communications into Factorial leaves, so HR does not have to re-type medical absences that the Social Security has already communicated. Companies that don't use Siltra can upload the Excel version of the FIE file downloaded from Sistema RED online instead.
Availability: Spain only — the FIE file is a Spanish Social Security format. The integration is available for all Spanish companies: install the SILTRA app from the Marketplace. It is available in Spanish and English.
Key benefits:
- Medical absences are registered in Factorial from the official source, with no manual re-typing and no intermediate payroll system.
- Nothing is written without a person confirming it: every import starts with a preview.
- Nothing is discarded silently: everything the integration cannot import appears on screen with the reason, in plain language.
- Imported absences are marked as coming from the Social Security, so they can be told apart from the ones registered by hand.
- Re-uploading a file the company has already imported does not duplicate anything.
Before you start
| Requirement | Detail |
|---|---|
| Siltra | The company must already receive its FIE files through Siltra or Sistema RED online. The integration does not connect to the Social Security; it reads the file the company downloads. |
| The file | Either the .msj transmission as Siltra writes it in its Msjrec folder, or the Excel file (.xls) downloaded from Sistema RED online in Consulta de Fichero INSS. |
| Leave types | The company must have the leave types it wants to use already created in Factorial. The integration does not create leave types, and the setup form cannot be completed without them. |
| Employees | The employees must exist in Factorial, with their Social Security affiliation number (NAF) filled in, or their identity document. Employees are matched by Social Security number first, then by identity document. The integration never creates employees. |
| Permissions | The integration is installed and configured by an administrator. |
Main features
-
Import of the official FIE file: the
.msjdownloaded from Siltra, or the.xlsdownloaded from Sistema RED online. - Ten leave cases: the five official sick-leave contingencies, plus five benefits the FIE file also carries.
- Preview before writing: the integration shows exactly what it would create, link or close, for whom, and what it would leave out and why.
- Creation of leaves in Factorial as absences of the leave type the company chose for each case.
- Closing of leaves when the discharge certificate (parte de alta) arrives.
- Linking of leaves already registered by hand, instead of creating a duplicate.
- Duplicate control across days: the FIE file repeats ongoing leaves every day, and the integration recognises what it has already imported.
- Summary by email to the addresses the company configures, after every import.
- Available from One: give One the FIE file to preview and confirm the import, or ask which leaves have already been synced from the Social Security.
Setting up the integration
To install the integration, go to Discover Factorial > Integrations, open the Siltra Integration App and click Install for company. Factorial then opens a setup screen. There are only two things to configure, and both can be revisited later from the app's settings.
1. Contingency mapping
The Social Security classifies every temporary-disability process into one of five official contingencies, and the FIE file also carries five other benefits. Each company names its own leave types in Factorial, so the integration needs to know which leave type each of these ten cases corresponds to. For any case you don't want to import, choose Do not import.
| Case | What you choose |
|---|---|
| 1 — Enfermedad común (common illness) | A Factorial leave type |
| 2 — Accidente no laboral (non-work accident) | A Factorial leave type |
| 3 — Accidente de trabajo (work accident) | A Factorial leave type |
| 4 — Enfermedad profesional (occupational disease) | A Factorial leave type |
| 5 — Periodo de observación (observation period) | A Factorial leave type |
| Birth and childcare | A Factorial leave type or Do not import |
| Risk during pregnancy | A Factorial leave type or Do not import |
| Risk during breastfeeding | A Factorial leave type or Do not import |
| Care of a seriously ill child | A Factorial leave type or Do not import |
| Shared breastfeeding care | A Factorial leave type or Do not import |
Rules:
- Choose an option for every case: a leave type, or Do not import if your company doesn't want those leaves in Factorial.
- Two cases may point at the same leave type. Grouping categories is normal.
- If you choose a leave type that requires an end date, the integration warns you when saving: an ongoing sick leave has no end date yet, so those leaves could not be created.
- If you choose a leave type that has been archived in Factorial, the integration warns you as well.
.png)
2. Who receives the import summary
The import runs in the background, so the result is sent by email. On the same screen you list the addresses that should receive it.
Important: the summary is nominal and its leave-type column reflects the contingency. Adding an address here gives that person access to medical-absence information about their colleagues. Add only the people who must have it.
Leaving the list empty is valid: it is how a company turns these emails off.
Importing a file
-
Download the FIE file
Download the.msjtransmission from Siltra as usual, or download the Excel file (.xls) from Sistema RED online in Consulta de Fichero INSS.
-
Step 2 — Upload it to Factorial
In Factorial, go to Calendar and click Import FIE. Drop the.msjor.xlsfile in the upload screen that opens.Two optional settings are available on this screen:The Import FIE button appears only if the Siltra integration is installed and you have the permissions to use it. If you cannot see it, check with your administrator.
- Hide health data — the preview and the summary email show [hidden: health data] instead of the leave type, since the type reveals the contingency.
-
Show other benefits — lists the file's other benefits that are not imported, with their raw detail.
Nothing is written at this point..png)
-
Review the preview
The integration reads the file, compares it against what Factorial already holds, and shows a report:
| Block | What it tells you |
|---|---|
| Context line | Which transmission this is: version, identifier, generation date, number of records and how many sick leaves it talks about. |
| Summary figures | Will be applied · Already imported · Not applicable. They add up to the rows in the tables below. |
| Updates table | One row per thing that will be written: employee, start date, end date, leave type, and what will happen (create the leave, link the leave that already exists, set the end date). |
| No changes | Events the file repeats and that were already imported. Typical when you upload a file whose leaves are still ongoing. |
| Would not be imported | Everything left out, with the reason for each one. |
| Data quality | Warnings about the file itself, when there is something worth acting on. |
The employee name shown is the one in Factorial, not the one in the file: the point of the review is to confirm that the right person was matched.

4. Step 4 — Confirm
If there is something to apply, the button reads Apply the N updates. Confirming launches the import in the background; you can close the screen.
If there is nothing to apply, the only option is Understood, close — no import button is offered that would do nothing.
Step 5 — Receive the summary
When the import finishes, the configured recipients receive an email with the full report: what was created, what was linked, what was closed, what did not change, and what could not be imported and why.
What the integration writes in Factorial
| Situation in the file | What happens in Factorial |
|---|---|
| A new sick-leave certificate (parte de baja) | The absence is created, with the leave type mapped to its contingency and no end date. |
| A discharge certificate (parte de alta) for a leave the integration imported | The absence's end date is set. |
| A sick leave and its discharge in the same transmission | The absence is created already closed. |
| A sick leave that somebody had already registered by hand in Factorial | The existing absence is linked and managed from then on — it is not duplicated. |
| A sick leave the integration already imported in a previous run | Nothing. It appears under No changes. |
Every absence the integration creates carries a note in its description, for example:
Importado automáticamente desde la Seguridad Social (SILTRA) · transmisión A1234 · baja comunicada el 01-06-2026 · importado el 04-08-2026
The integration writes under its own identity: it does not act on behalf of any administrator, and it does not approve the absences it creates.
What is not imported and why
Nothing is discarded silently. Every case below appears on the preview screen and in the summary email, with its reason.
| Situation | What the integration does |
|---|---|
| The person is not in Factorial | Not imported. The integration never creates employees. |
| The person's affiliation number or document matches more than one employee record | Not imported. One is never picked, because a medical absence on the wrong record exposes one person's health data to another. Resolve the duplicate in Factorial and import again. |
| The file's worker line arrives with no affiliation number and no document | Not imported: the file is incomplete at that point and should be claimed upstream. |
| The employee left the company before the leave's start date | Not imported. Both dates are stated. |
| The employee's hiring date is later than the leave's start date | Not imported: it would fall outside the current contract. Register it by hand if there was an earlier contract. |
| The contingency is not mapped to a leave type | Not imported. Complete the mapping in the integration's settings. |
| The mapped leave type requires an end date and the leave is still open | Not imported. Map that contingency to a type that allows open-ended absences. |
| The period is already taken by another absence that is not a sick leave (approved holidays, for instance) | Not imported. The preview shows it as Period taken and names the absence it overlaps. Delete or correct the other absence in Factorial, then upload the same file again. |
| The INSS says the process never existed, or that the leave has no legal effect | Not imported: a person must look at it. |
Not covered yet
These arrive in the file, and the integration reads, shows and counts them — but does not act on them yet:
- Confirmation certificates (partes de confirmación): the absence is not extended.
- Cancellation of a sick leave: the absence created earlier is not voided.
- Cancellation of a discharge: the absence is not reopened.
- Contingency change decided by the INSS: the absence's leave type is not changed.
Files the integration refuses
The whole file is rejected — there is no partial import — when:
- it is not a
.msjfile from Siltra or an.xlsfile from Sistema RED online; - the download is truncated (the file's own control totals do not match what was read);
- the transmission concatenates several messages: download them separately;
- the message version is not FIE V5.0.
Changing the configuration
Open the integration's settings to revisit the contingency mapping or the list of recipients. The new configuration applies to the next import; absences already created are not touched.
Worth re-opening the settings when the company creates or renames its leave types, or when the people who should receive the summary change.
Uninstalling the integration
Uninstalling deletes the integration's own configuration: the contingency mapping, the list of recipients, and the record of which sick leave became which absence.
The absences already created in Factorial are not deleted — they are the company's own data.
If the integration is installed again, the mapping has to be configured from scratch. The absences that already exist are recognised by their dates, so they are linked rather than duplicated.
Frequently Asked Questions
-
Does the integration connect to the Social Security automatically?
No. The company downloads the file from Siltra or Sistema RED online and uploads it to Factorial. The import is manual, and every import is confirmed by a person.
-
How often should I import the file?
The Social Security generates the FIE file daily. Importing it daily keeps Factorial up to date; importing it less often does not lose information, because ongoing leaves are repeated in later files.
-
What happens if I upload the same file twice?
Nothing is duplicated. The second import reports every event as Already imported.
-
Does it create employees who are not in Factorial?
No, never. A sick leave is not sufficient evidence to create an employee record. The case is reported so HR can act on it.
-
Are the absences it creates approved automatically?
No. They are created as absences of the configured leave type; approval follows the company's usual process.
-
Can I tell an imported absence from one registered by hand?
Yes. Every absence the integration creates carries a note in its description saying it came from the Social Security, with the transmission and the import date.
-
What happens to a sick leave that somebody had already registered by hand?
The integration links it instead of creating a second one, and manages it from then on — so the discharge certificate closes the absence that already exists.
-
Who can see the medical information?
The preview is shown to the person doing the import, and the summary email goes only to the addresses configured in the integration's settings.