Skip to main content
Los endpoints de movimientos de stock te permiten registrar cualquier variación de inventario —entradas, salidas o transferencias entre almacenes— y consultar el histórico completo de movimientos generados en A3ERP. Con esta API puedes integrar procesos de recepción de mercancía, ajustes de inventario y expediciones directamente desde tus aplicaciones.
Los campos de código como codalm y codart están siempre cuadrados (rellenados con espacios) a una longitud fija: codalm a 8 caracteres y codart a 15 caracteres. Ten esto en cuenta al comparar o mostrar estos valores en tu integración.

GET — Consultar movimientos de stock

Devuelve los datos del movimiento de stock indicado. El parámetro {id} es opcional: si lo omites, obtendrás todos los movimientos registrados (en ese caso puedes aplicar filtrado y ordenación). Ejemplo con identificador:
Cabecera requerida Parámetros de ruta
string
El identificador del movimiento de stock. Opcional: omítelo para obtener todos los movimientos.
Campos de la respuesta
string
Código del artículo cuadrado a 15 caracteres.
string
Descripción del artículo.
string
Código del almacén de destino cuadrado a 8 caracteres.
string
Descripción del almacén de destino.
number
Unidades de stock en la unidad de cálculo alternativa.
integer
Unidades de stock que entran en el almacén (positivo indica entrada).
integer
Unidades comerciales que entran en el almacén.
integer
Unidades de stock que salen del almacén.
integer
Unidades comerciales que salen del almacén.
number
Precio en la moneda del documento.
number
Precio en la moneda base de la empresa.
number
Primer descuento aplicado (porcentaje).
number
Segundo descuento aplicado (porcentaje).
number
Tercer descuento aplicado (porcentaje).
number
Cuarto descuento aplicado (porcentaje).
number
Precio medio del artículo en el momento del movimiento.
string
Número de serie asociado al movimiento. Cadena vacía si no aplica.
string
Número de lote asociado al movimiento. Cadena vacía si no aplica.
string
Fecha de caducidad del lote en formato ISO 8601.
string
Ubicación física del artículo en el almacén de destino. Puede ser null.
string
Fecha del documento que originó el movimiento, en formato ISO 8601.
string
Número de documento asociado al movimiento.
string
Referencia externa del movimiento.
string
Código de la moneda del documento (p. ej. EURO).
number
Tipo de cambio aplicado respecto a la moneda base.
string
Código del tercero (cliente o proveedor) cuadrado a 8 caracteres.
string
Nombre o razón social del tercero asociado al movimiento.
string
Tipo de documento que originó el movimiento (p. ej. FC para factura de compra).
integer
Identificador único del movimiento de stock en la base de datos.
integer
Identificador único de la línea del movimiento.
integer
Identificador del totalizador del documento.
Ejemplo de respuesta

POST — Crear un movimiento de stock

Crea un nuevo movimiento de stock. El cuerpo de la petición debe incluir un objeto json con el almacén, la fecha y un array de líneas con los artículos afectados. Cabecera requerida Cuerpo de la petición
Descripción de los campos del cuerpo
string
required
Código del almacén en el que se registra el movimiento.
string
required
Fecha del movimiento en formato DD/MM/YYYY.
array
required
Array de líneas del movimiento. Cada línea representa un artículo afectado.
string
required
Código del artículo que entra o sale.
string
required
Descripción o motivo del movimiento (aparece en el histórico).
string
required
Unidades de stock a mover. Usa un valor positivo para entradas y negativo para salidas.
string
required
Unidades comerciales a mover. Usa el mismo signo que unidadesstock.
Respuesta
integer
Identificador del movimiento de stock recién creado. Guárdalo si necesitas modificar o eliminar el movimiento posteriormente.

DELETE — Eliminar un movimiento de stock

Eliminar todos los registros de un movimiento

Elimina por completo el movimiento de stock indicado, incluyendo todas sus líneas. Ejemplo:
Parámetros de ruta
string
required
El identificador del movimiento de stock que quieres eliminar por completo.

Eliminar una línea concreta de un movimiento

Elimina únicamente la línea indicada dentro del movimiento, manteniendo el resto de líneas intactas. Ejemplo:
Parámetros de ruta
string
required
El identificador del movimiento de stock que contiene la línea a eliminar.
string
required
El identificador de la línea concreta dentro del movimiento que quieres eliminar.