Clientes
Parámetros en la cabecera HTTP
- Authorization (caracteres): Autorización de la API. Ejemplo:
Bearer {token}
URL base
https://api.saltra.es/api/v4/customerObtener los clientes
Parámetros
- search opcional (caracteres): Campo de búsqueda, puedes buscar por correo, nombre, cif, etc.
- page opcional (número entero): Página actual.
- perPage opcional (número entero): Cantidad de registros por página (máximo 50; si pides más, se devuelven 50).
GET /
{
"search": "B188888888",
"page": 1,
"perPage": 20
}Respuesta
Respuesta
{
"success": true,
"message": "OK",
"data": {
"data": [
{
"id": 9999,
"name": "USER CUSTOMER",
"active": 1,
"access": {
"email": "test@example.es"
},
"profile": {
"identificacion": 1,
"dni": "B188888888",
"razon_social": "CUSTOMER",
"codigo_postal": "01005",
"direccion": "CALLE",
"country": 724,
"account": [
{
"id": 9999,
"activa": 1,
"alias": "CUSTOMER",
"convenio_colectivo": "60888888888888",
"cuenta": "28199993333",
"regimen": "0111",
}
],
"parameters": {
"representativeData": {
"doc": "77056403D",
"name": "JOSE",
"surname": "APELLIDO",
"job_position": "ADMINISTRADOR"
}
}
}
}
],
"pagination": {
"page": 1,
"lastPage": 1,
"perPage": 50,
"total": 2
}
}
}Guardar un cliente
Parámetros
- name (caracteres) : Nombre del cliente. Obligatorio. Máximo 255 caracteres.
- access (objeto) : Datos de acceso. Obligatorio.
- email (caracteres) : Correo electrónico. Obligatorio. Máximo 50 caracteres; no puede existir ya en Saltra.
- password opcional (caracteres) : Contraseña, mínimo 4 caracteres. Si no la envías, el cliente recibe por correo un enlace para crearla (salvo con
not_notify= 1). - password_confirmation (caracteres) : Confirmación de contraseña. Obligatoria solo si envías
password.
- not_notify opcional (boolean): NO notificar al cliente de la creación del usuario, posibles valores: 1 = NO notificar al cliente, 0 = Notificar al cliente.
- sub_activa opcional (boolean): Acceso del cliente a la plataforma Saltra. Con 0 la empresa se crea sin acceso y no se le envía ningún correo.
- alternativo opcional (caracteres o array): Correos alternativos de notificación, separados por comas o en una lista (entre todos, máximo 100 caracteres).
- profile (objeto) : Datos de perfil del cliente. Obligatorio.
- dni (caracteres) : CIF de la empresa. Obligatorio. Máximo 10 caracteres.
- razon_social (caracteres) : Razón social, nombre de la empresa. Obligatorio. Máximo 80 caracteres.
- codigo_postal opcional (caracteres) : Código postal. Máximo 5 caracteres.
- direccion opcional (caracteres) : Dirección. Máximo 190 caracteres.
- external_id opcional (caracteres) : Identificador de la empresa en tu sistema. Máximo 100 caracteres.
- account (array) : Cuentas de cotización. Obligatorio, al menos una cuenta.
- regimen (caracteres) : Régimen de la cuenta, 4 dígitos (por ejemplo
0111). Obligatorio. - cuenta (caracteres) : Cuenta de cotización, 11 dígitos. Obligatorio.
- alias (caracteres) : Alias de la cuenta. Obligatorio. Máximo 30 caracteres.
- convenio_colectivo opcional (caracteres) : Convenio colectivo. Máximo 15 caracteres.
- regimen (caracteres) : Régimen de la cuenta, 4 dígitos (por ejemplo
- parameters opcional (objeto) : Parámetros del cliente.
- representativeData opcional (objeto) : Datos del representante legal de la empresa. Si lo envías, sus cuatro campos son obligatorios.
- doc (caracteres) : Documento de identidad del representante. Máximo 11 caracteres.
- name (caracteres) : Nombre del representante. Máximo 80 caracteres.
- surname (caracteres) : Apellidos del representante. Máximo 80 caracteres.
- job_position (caracteres) : Cargo del representante. Máximo 50 caracteres.
- representativeData opcional (objeto) : Datos del representante legal de la empresa. Si lo envías, sus cuatro campos son obligatorios.
POST /
{
"name": "NOMBRE DE LA EMPRESA",
"access": {
"email": "test@example.es",
"password": "123456",
"password_confirmation": "123456"
},
"not_notify": 1,
"profile": {
"dni": "B46469763",
"razon_social": "NOMBRE DE LA EMPRESA",
"codigo_postal": "01005",
"direccion": "calle alava...",
"external_id": "ERP-000123",
"account": [
{
"alias": "Regimen de madrid",
"cuenta": "28148369999",
"regimen": "0111"
},
{
"alias": "Regimen de prueba",
"cuenta": "13119940999",
"regimen": "0112"
}
],
"parameters": {
"representativeData": {
"doc": "77056403D",
"name": "JOSE",
"surname": "APELLIDO",
"job_position": "ADMINISTRADOR"
}
}
}
}Petición mínima, solo con los campos obligatorios:
POST / (mínimo)
{
"name": "NOMBRE DE LA EMPRESA",
"access": {
"email": "test@example.es"
},
"profile": {
"dni": "B46469763",
"razon_social": "NOMBRE DE LA EMPRESA",
"account": [
{
"alias": "Regimen de madrid",
"cuenta": "28148369999",
"regimen": "0111"
}
]
}
}Si ya tienes una empresa con ese CIF, no se crea otra: se le añaden las cuentas de cotización que le falten y la respuesta devuelve esa empresa, con un message que lo explica.
Respuesta
Respuesta
{
"success": true,
"message": "OK",
"data": {
"id": 9999,
"name": "NOMBRE DE LA EMPRESA",
"access": {
"email": "test@example.es"
},
"...": "..."
}
}Si falta un campo obligatorio o alguno no es válido, la respuesta es 422 con el detalle por campo en errors:
Respuesta 422
{
"success": false,
"status": 422,
"message": "Error de validación",
"errors": {
"profile.account": ["Debe haber al menos una Cuenta de Cotización asociada al cliente"],
"profile.parameters.representativeData.job_position": ["El campo Cargo del Representante Legal es obligatorio"]
}
}Eliminar un cliente
Parámetros
- id (número entero): ID del cliente.
DELETE /{customerID}
customerIDRespuesta
Respuesta
{
"success": true,
"message": "OK"
}Desactivar un cliente
Parámetros
- id (número entero): ID del cliente.
- active (número entero) : Posibles valores:
- true: Activar
- false: Desactivar
PUT /{customerID}/activate
{
"active": false,
}Respuesta
Respuesta
{
"success": true,
"message": "OK"
}Actualizado el