Saltar al contenido principal

Endpoints para Compañía

La entidad Compañía es un componente esencial en la gestión de nuestra API. Ha sido diseñado para identificar y registrar información clave sobre las empresas. Este registro permite asignar facturas, albaranes, pedidos y clientes de forma eficiente y precisa.

Características Comunes de una Compañía

  1. Identificación única: Cada empresa tiene un identificador único id que la distingue de otras empresas del sistema.

  2. Datos de la compañía: Almacenamos determinados datos de la empresa en nuestra base de datos (nombre, correo electrónico, número de teléfono, sitio web...).

  3. Actividades y Registro: Las actividades realizadas por una compañía dentro del sistema, como la creación, modificación o eliminación de recursos, pueden ser registradas.

Funcionalidades relacionadas con una Compañía

  • Facturación: Las compañías pueden tener facturas relacionadas.

  • Pedidos: Las compañías pueden tener pedidos asociados.

  • Registro de clientes y representantes Puede haber socios comerciales asociados a una compañía existente.

Endpoints

GET/Company/getCompany

Obtener todas las compañías de la base de datos.

Descripción

Este endpoint recupera una lista paginada de la empresa o empresas que están incluidas en la base de datos. La respuesta incluye información sobre la empresa y paginación. Es posible editar las opciones de paginación en los parámetros de solicitud.

Parameters
NombreDescripciónTipoValor por defecto
pageNúmero de páginaInteger1
pageSizeNúmero de elementos por páginaInteger10
Respuestas
JSON
{
"data": [
{
"id": "string",
"idRemote": "string",
"state": {
"id": "string",
"description": "string",
"country": "string"
},
"companyName": "string",
"comercialName": "string",
"tin": "string",
"phone": "string",
"fax": "string",
"email": "string",
"website": "string",
"urlLopd": "string",
"lodpText": "string",
"invoiceFooter": "string",
"default": true
}
],
"pagination": {
"totalItems": 0,
"itemsPerPage": 0,
"currentPage": 0,
"totalPages": 0,
"nextPageUrl": "string"
}
}
XML
<?xml version="1.0" encoding="UTF-8"?>
<export>
<data>
<item id="string">
<idRemote>string</idRemote>
<state>
<id>string</id>
<description>string</description>
<country>string</country>
</state>
<companyName>string</companyName>
<comercialName>string</comercialName>
<tin>string</tin>
<phone>string</phone>
<fax>string</fax>
<email>string</email>
<website>string</website>
<urlLopd>string</urlLopd>
<lodpText>string</lodpText>
<invoiceFooter>string</invoiceFooter>
<default>true</default>
</item>
</data>
<pagination>
<totalItems>0</totalItems>
<itemsPerPage>0</itemsPerPage>
<currentPage>0</currentPage>
<totalPages>0</totalPages>
<nextPageUrl>string</nextPageUrl>
</pagination>
</export>

👉Prueba este endpoint🌱

POST/Company/create

Crear una nueva compañía usando el método POST

Para crear una compañía debe adjuntar el cuerpo de la solicitud en formato JSON. Asegúrese de seguir el esquema proporcionado en esta documentación para poder realizar la operación con éxito. El campo idRemote proporcionado será el almacenado en en el entorno del ERP del usuario. El sistema creará automáticamente un id local.

Parámetros obligatorios
NombreDescripciónTipo
idRemoteIdentificador de la nueva CompañíaString
companyNameNombre de la nueva CompañíaString
commercialNameNombre comercial de la nueva CompañíaString
tinNúmero de identificación de la nueva Compañía (CIF)String
addressDirección de la nueva CompañíaString
cityCiudad de la nueva CompañíaString
defaultDetermina si la nueva Compañía es la Compañía por defectoBoolean

El cuerpo de la solicitud debe seguir el siguiente esquema para que el endpoint realice la operación de creación exitosamente:

[
{
"idRemote": "string",
"stateId": "string",
"companyName": "string",
"comercialName": "string",
"tin": "string",
"phone": "string",
"postalCode": "string",
"address": "string",
"city": "string",
"email": "string",
"website": "string",
"urlLopd": "string",
"lodpText": "string",
"invoiceFooter": "string",
"default": true
}
]

Es posible añadir varias Compañías a través de la misma solicitud separándolos con comas dentro del array en el cuerpo de la solicitud.

👉Prueba este endpoint🌱

PUT/Company/update/{id}

Actualizar una compañía existente usando el método PUT

Para actualizar los atributos de una empresa a través de este endpoint, es necesario adjuntar la identificación de la empresa en los parámetros de la solicitud y seguir el esquema JSON adjunto en esta documentación. El parámetro id puede ser tanto el idRemote como el id local guardado en el contexto del B2B. Si quieres actualizar el atributo stateId asociado a la Compañía, asegúrate de añadir un id registrado en el sistema.

Parámetros
NombreDescripciónTipo
idIdentificador de la compañíaString

No es necesario incluir toda la estructura JSON, solo debes incluir los atributos que quieras modificar.


Cuerpo de la solicitud:

Para actualizar enteramente una Compañía, el cuerpo de la solicitud debe seguir el siguiente esquema:

{
"stateId": "string",
"companyName": "string",
"comercialName": "string",
"tin": "string",
"phone": "string",
"postalCode": "string",
"address": "string",
"city": "string",
"email": "string",
"website": "string",
"urlLopd": "string",
"lodpText": "string",
"invoiceFooter": "string",
}

👉Prueba este endpoint🌱

DELETE/Company/delete/{id}

Eliminar una Compañía.

Descripción

Este endpoint permite la eliminación de compañías utilizando su identificador único, que puede ser tanto el ID propio del sistema B2B como el ID proporcionado por usted al registrar las compañías en nuestra plataforma. Una vez eliminada, la compañía se registra en el Historial de Eliminados.


⚠️No será posible eliminar una compañía mientras ésta tenga socios comerciales, pedidos, facturas, albaranes o productos relacionados.

Parámetros
NombreDescripciónTipo
idIdentificador de CompañíaString

👉Prueba este endpoint🌱

Posibles Errores en la Respuesta

ErrorCódigoRespuesta
Este error ocurre cuando no se puede establecer una conexión con la base de datos. Es un problema interno del servidor.500{"code": 500,"error": "Database connection failed."}
Este error ocurre cuando no puede insertar o actualizar y en la dbs de pruebas.500{"code": 500,"error": "Invalid connection name, you cannot insert in default"}
Este error indica que falta un parametro.400{"code": 400,"error": "Parameter $parameter is required"}
Este error indica que no está autorizado.401{"code": 401,"error": "Unauthorized."}
Este error indica que no ha sido posible encontrar la compañía.404{"code": 404,"error": "No entity found for Company with $id."}
Este error ocurre cuando intenta insertar una compañía que ya existe.409{"code": 409,"error": "Duplicate entry"}
Este error ocurre cuando intenta enviar demasiadas solicitudes en un corto periodo de tiempo.429{"code": 429,"error": "Too Many Requests"}