Llamamientos
Comunicar llamamientos

Comunicar llamamientos

Parámetros

  • cif (caracteres) : CIF de la empresa.
  • regimen (número entero) : Régimen, 4 dígitos. Posibles valores:
  • ccc (caracteres) : Cuenta de cotización, 11 dígitos.
  • duplicate (número entero) : Opcional. Obtener el PDF en base64 y en formato JSON en la respuesta, posibles valores 1 o null.
  • employees (arreglo) : Datos de los trabajadores. Entre 1 y 10 por petición; cada uno se confirma por separado ante el SEPE.
    • doc (caracteres) : Identificador de persona física.
    • docType (caracteres) : Tipo de documento. Posibles valores:
      • D: NIF/DNI,
      • E: NIE,
      • U: Ciudadano UE,
      • W: Pasaporte.
    • name (caracteres) : Nombre del empleado.
    • surname (caracteres) : Primer apellido del empleado.
    • lastSurname (caracteres) : Segundo apellido del empleado, obligatorio si es NIF/DNI.
    • nss (número entero) : Número de Seguridad Social, 12 dígitos.
    • sex (número entero) : posibles valores:
      • 1 = Hombre
      • 2 = Mujer
    • dateOfBirth (date) : Fecha de nacimiento, formato YYYY-MM-DD.
    • nationality (número entero) : Nacionalidad del empleado. Posibles valores:
    • municipality (número entero) : Municipio del empleado. Posibles valores:
    • country (número entero) : Pais de domicilio del empleado. Posibles valores:
    • nss (número entero) : Número de Seguridad Social, 12 dígitos.
    • startDate (date) : Fecha inicio, formato YYYY-MM-DD.
    • endDate (date) : Opcional. Fecha fin, formato YYYY-MM-DD.
    • occupation (número entero) : Clasificación Nacional de Ocupacion (CNO), 4 dígitos. Posibles valores:
    • nivelFormativo (número entero) : Nivel formativo, 2 dígitos.
    • question (caracteres) : Opcional. Se incorpora a la actividad. Posibles valores:
      • S = Si.
      • N = No.
    • sepeId (caracteres) : Opcional. Identificador contrato en el SEPE, formato E-99-9999-9999999.
POST /llamamientos
{
  "cif": "9999999B",
  "regimen": "0112",
  "ccc": "27770999999",
  "employees": [
    {
      "doc": "9999999B",
      "startDate": "2023-11-05",
      "endDate": "2023-11-05",
      "nivelFormativo": 12,
      "question": "S"
    }
  ]
}

Respuesta

Respuesta
{
  "success": true,
  "message": "OK",
  "data": {
    "send": 1,
    "not_send": 0,
    "data": [
      {
        "success": true,
        "doc": "9999999B",
        "id": " E-28-2024-9906993",
        "file": {
          "contentType": "application/pdf",
          "name": "document.pdf",
          "content": "base64"
        }
      }
    ]
  }
}

Errores

Un llamamiento puede fallar de dos maneras, y se distinguen por dónde viene el detalle: en errors o dentro de data.data.

Errores de validación

Los datos no pasan la validación de Saltra y no se llega a contactar con el SEPE: no se comunica ningún trabajador de la petición. Responde 422.

  • message (caracteres) : Todos los errores en una línea, separados por |.
  • errors (objeto) : El detalle campo a campo. La clave lleva la posición del trabajador dentro de employees empezando en 0, así que employees.1.nss es el nss del segundo trabajador que enviaste. El texto numera al trabajador empezando en 1 ("empleado n# 2").
422 — Error de validación
{
  "success": false,
  "message": "Hubo un error al enviar la comunicación. El campo NSS del empleado n# 1 debe ser de 12 dígitos. | El campo Nivel formativo n# 2 es obligatorio.",
  "status": 422,
  "errors": {
    "employees.0.nss": [
      "El campo NSS del empleado n# 1 debe ser de 12 dígitos."
    ],
    "employees.1.nivelFormativo": [
      "El campo Nivel formativo n# 2 es obligatorio."
    ]
  }
}

Rechazos del SEPE

La petición llega al SEPE y es él quien rechaza al trabajador: llamamiento duplicado, nivel formativo incompatible con el CNO, contrato que no es fijo discontinuo, datos que no cuadran con los suyos… Aquí el detalle no viene en errors, sino en cada elemento de data.data, porque cada trabajador se confirma por separado:

  • data.send / data.not_send (número entero) : Cuántos se comunicaron y cuántos no.
  • data.data[].success (booleano) : Resultado de ese trabajador.
  • data.data[].doc (caracteres) : Su identificador, para casarlo con el que enviaste.
  • data.data[].message (caracteres) : Por qué no se comunicó. Casi siempre el texto con el que el SEPE lo rechaza; también puede ser un error de validación de ese trabajador, cuando el SEPE no lo tiene en su base de datos y faltan datos para darlo de alta (name, surname, sex, dateOfBirth, nationality, municipality, country).
⚠️

Una petición admite hasta 10 trabajadores, así que el éxito puede ser parcial: success es true en cuanto se comunica al menos uno. Revisa siempre data.not_send y el success de cada trabajador, no solo el success de primer nivel.

Rechazo del SEPE por trabajador
{
  "success": true,
  "message": "1 Comunicacion/es enviadas con éxito. Y 1 fallidas.",
  "status": 200,
  "data": {
    "send": 1,
    "not_send": 1,
    "data": [
      {
        "success": true,
        "doc": "9999999B",
        "id": "E-28-2024-9906993"
      },
      {
        "success": false,
        "doc": "8888888A",
        "message": "SEPE: 1. Existe un llamamiento con los mismos datos que el que intenta mecanizar. No se acepta la comunicación."
      }
    ]
  }
}

Si el rechazo afecta a toda la petición y no a un trabajador concreto (el SEPE fuera de su horario, la gestoría no autorizada para ese CIF, mantenimiento) el mensaje llega en message y en errors.sepe, con estado 502.