Skip to Content
Social SecurityReportsContribution Settlement Receipt (RLC)

Contribution Settlement Receipt (RLC)

Returns the Contribution Settlement Receipt of a contribution account code for a settlement type and the period of that settlement, as a PDF (default) or as structured data (format=json). It is the document the RED System issues after each month’s settlement. With format=siltra it instead requests the duplicate of the Workers’ Nominal List, which arrives via SILTRA.

Parameters

  • regimen (integer) : Scheme, 4 digits. Possible values:
  • ccc (integer) : Contribution account code, 11 digits.
  • liquidType (string) : Settlement type. Possible values:
    • L00: Normal
    • L02: Supplementary for interim salaries (normal)
    • L03: Supplementary for retroactive salary payments
    • L13: Paid holidays not taken
    • L90: Supplementary for increase in bases
    • L91: Supplementary for new workers and/or brackets
    • L92: Supplementary for interim salaries, ex officio
    • L93: Supplementary for paid holidays not taken, ex officio
    • C00: Ordinary for non-agreed salaries
    • C02: Supplementary for non-agreed interim salaries
    • C03: Supplementary for non-agreed retroactive salaries
    • C13: Supplementary for non-agreed paid holidays
    • C90: Supplementary for non-agreed increase in bases
    • C91: Supplementary for non-agreed new workers and/or brackets
    • V03: Supplementary for retroactive salary payments of L13
    • V90: Supplementary for increase in bases of L13
  • startDate (date) : First settlement period, format YYYY-MM-DD. Only the month and year are used.
  • endDate (date) : Last settlement period, format YYYY-MM-DD. Only the month and year are used.
  • controlDate optional (date) : Control date, format YYYY-MM-DD. Only applies to L03 settlements, which require a control month and year. Defaults to endDate when omitted. Only the month and year are used.
  • numAutorizado optional (string) : RED authorised user number to query with. Only needed when the certificate has several authorised users. When omitted, each one is tried until the one the contribution account code is assigned to is found. If the certificate has several authorised users and the one given does not have the contribution account code assigned, the TGSS CM05 error is returned.
  • format optional (string) : Response format. Possible values:
    • pdf (default): the RLC PDF in data.file (base64).
    • json: the data of each receipt of the settlement, read from the RED System, without the PDF. Useful when only the bases and contributions are needed, and while the TGSS does not deliver the PDF for some periods.
    • siltra: not a query: requests from the TGSS the duplicate of the Workers’ Nominal List (RNT) of all the workers of the settlement. The TGSS delivers it deferred to the RED authorised user’s SILTRA mailbox; the response carries no file. See RNT duplicate via SILTRA.
GET /report-rlc
{ "regimen": "0111", "ccc": "12345678901", "liquidType": "L00", "startDate": "2023-01-01", "endDate": "2023-03-01", "format": "pdf" }

For an L03 settlement, adding the control date:

GET /report-rlc (L03)
{ "regimen": "0111", "ccc": "12345678901", "liquidType": "L03", "startDate": "2023-01-01", "endDate": "2023-03-01", "controlDate": "2023-04-01" }

Response

With format=pdf (default):

Respuesta (format=pdf)
{ "success": true, "message": "OK", "data": { "file": { "contentType": "application/pdf", "name": "document.pdf", "content": "base64" } } }

Request with format=json:

GET /report-rlc (format=json)
{ "regimen": "0111", "ccc": "12345678901", "liquidType": "L00", "startDate": "2026-08-01", "endDate": "2026-08-01", "format": "json" }

Response with format=json: one item per receipt of the settlement in data.list, without the PDF:

Respuesta (format=json)
{ "success": true, "message": "OK", "data": { "list": [ { "liquidation_number": "28202600601234567", "regimen": "0111", "ccc": "12345678901", "company_name": "EMPRESA EJEMPLO SL", "period_from": "08/2026", "period_to": "08/2026", "liquid_type": "L00", "liquid_type_description": "L00 - NORMAL", "payment_type": "Total", "payment_mode": "Cargo en Cuenta", "issued_at": "2026-09-19 11:11", "workers": 12, "at_ep_entity": "61", "total": 6250.40, "concepts": [ { "code": "500", "description": "CONTINGENCIAS COMUNES", "base": 15200.00, "amount": 4301.60 }, { "code": "998", "description": "LIQUIDO DE TOTALES", "base": 0, "amount": 6250.40 } ] } ] } }

Fields of each item (amounts in euros, with decimals; an unavailable field is returned as null):

  • liquidation_number (string) : Settlement number of the receipt.
  • regimen (string) : Scheme, 4 digits.
  • ccc (string) : Contribution account code, 11 digits.
  • company_name (string) : Registered company name.
  • period_from, period_to (string) : First and last settlement period, format MM/YYYY.
  • liquid_type (string) : Settlement type (L00, L03…).
  • liquid_type_description (string) : Code and description of the settlement type.
  • payment_type (string) : Type of payment or contribution settled, as returned by the TGSS (for example Total).
  • payment_mode (string) : Payment mode (for example Cargo en Cuenta).
  • issued_at (string) : Date and time the receipt was issued, format YYYY-MM-DD HH:mm.
  • workers (integer) : Number of workers in the settlement.
  • at_ep_entity (string) : Code of the entity covering occupational accidents and diseases (AT/EP) for the contribution account.
  • total (decimal) : Total amount of the receipt, in euros.
  • concepts (array) : Receipt concepts, each with code, description, base and amount (euros).

The request will take longer to respond. startDate and endDate must match the exact period of one settlement (usually one month, e.g. 2026-08-01 and 2026-08-01): a range spanning several months returns C910(9400) La liquidación no existe. If there is no receipt for that period and settlement type, the request returns success: false with the RED System’s message.

RNT duplicate via SILTRA

With format=siltra the request files with the TGSS the request for the duplicate of the Workers’ Nominal List (RNT) of all the workers of the settlement (there is no confirmation step). The TGSS does not return it in the response: it sends it deferred to the RED authorised user’s SILTRA mailbox. From there it can be imported into Saltra with the local connector (SILTRA).

GET /report-rlc (format=siltra)
{ "regimen": "0111", "ccc": "12345678901", "liquidType": "L00", "startDate": "2026-08-01", "endDate": "2026-08-01", "format": "siltra" }

Response when the request has been filed:

Respuesta (format=siltra)
{ "success": true, "message": "Petición del duplicado de la RNT tramitada: la TGSS la enviará en diferido al buzón SILTRA del autorizado.", "data": { "status": "requested", "delivery": "siltra", "liquidation_number": "28202600601234567", "regimen": "0111", "ccc": "12345678901", "company_name": "EMPRESA EJEMPLO SL", "liquid_type": "L00", "period_from": "08/2026", "period_to": "08/2026", "messages": [ "Su petición de duplicado de la Relación Nominal de Trabajadores se ha tramitado correctamente.", "El resultado de la solicitud será remitido en diferido, para su recepción mediante la aplicación SILTRA." ] } }

If there was already a pending request for that settlement, the TGSS does not create another one and the response is still success: true:

Respuesta (format=siltra, ya pedida)
{ "success": true, "message": "Ya hay una petición del duplicado de la RNT en curso para esta liquidación: la TGSS la enviará en diferido al buzón SILTRA del autorizado.", "data": { "status": "already_in_progress", "delivery": "siltra", "liquidation_number": "28202600601234567", "regimen": "0111", "ccc": "12345678901", "company_name": "EMPRESA EJEMPLO SL", "liquid_type": "L00", "period_from": "08/2026", "period_to": "08/2026", "messages": ["CUPL(7131) Envío mensaje en tramite. 1"] } }

Fields of data:

  • status (string) : requested (request filed now) or already_in_progress (one was already pending delivery; the TGSS returns CUPL(7131) Envío mensaje en tramite.).
  • delivery (string) : Delivery channel; always siltra.
  • liquidation_number, regimen, ccc, company_name, liquid_type, period_from, period_to (string) : Settlement data, with the same meaning as in format=json.
  • messages (array) : TGSS text (non-empty lines of the final screen, or the CUPL message).

This is a write to the TGSS: every call with format=siltra files a request (or returns already_in_progress if one is pending). In environments that do not communicate with the TGSS it returns 409 without sending anything.

Common TGSS errors

  • CM20 (9439): “The TGSS does not have the RLC PDF of this settlement available (it does not return its identification). This is a RED System failure; try again later or download it from SILTRA.” With format=json the data can still be obtained.
  • CESO (9473): “The settlement is locked by another query in progress in the RED System; the TGSS releases it by itself after a while (up to an hour); try again later.”
  • CM05: the certificate has several authorised users and numAutorizado does not have the contribution account code assigned.
Last updated on