Upnify API Docs
ERP · /suite/erp/almacenes/movimientos

Almacenes

Movimientos de almacén - Registro

POST/suite/erp/almacenes/movimientos

Registra una entrada, salida, ajuste o traspaso de inventario. Envía exactamente uno de entrada, salida, ajuste o traspaso con valor 1; si no se envía ninguno, se procesa una entrada. La solicitud valida que los productos, almacenes, operaciones, existencias y datos de trazabilidad correspondan a la empresa autenticada.

Parámetros

NombreTipoValidaciónDescripción
entradaIntegerEnvía 1 para registrar una entrada. No lo combines con los demás selectores de movimiento.
salidaIntegerEnvía 1 para registrar una salida. No lo combines con los demás selectores de movimiento.
ajusteIntegerEnvía 1 para registrar un ajuste de existencia. No lo combines con los demás selectores de movimiento.
traspasoIntegerEnvía 1 para transferir inventario entre almacenes. No lo combines con los demás selectores de movimiento.
tkAlmacenUUIDIdentificador del almacén de una entrada, salida o ajuste. Es obligatorio para esos tres tipos de movimiento.
tkOperacionStringIdentificador de la operación de inventario para una entrada, salida o ajuste. Es obligatorio para esos tres tipos de movimiento.
productosArrayProductos de una entrada, salida o traspaso. Cada elemento incluye tkProducto, cantidad, unidadVenta para entradas o unidad para salidas y traspasos, y opcionalmente comentario y datosAdicionales. Es obligatorio para esos tres tipos de movimiento.
tkProductoUUIDIdentificador del producto que se ajusta. Es obligatorio cuando ajuste es 1.
cantidadDecimalCantidad final de existencia para el ajuste. Se usa cuando ajuste es 1.
reservadoDecimalCantidad reservada después del ajuste. No puede ser mayor que cantidad.
comentariosStringComentario del ajuste de inventario.
tkAlmacenOrigenUUIDIdentificador del almacén de origen. Es obligatorio cuando traspaso es 1 y debe ser distinto a tkAlmacenDestino.
tkAlmacenDestinoUUIDIdentificador del almacén de destino. Es obligatorio cuando traspaso es 1 y debe ser distinto a tkAlmacenOrigen.
tkOperacionSalidaStringIdentificador de la operación que se registra en el almacén de origen. Es obligatorio cuando traspaso es 1.
tkOperacionEntradaStringIdentificador de la operación que se registra en el almacén de destino. Es obligatorio cuando traspaso es 1.

Respuesta

NombreTipoDescripción
codeIntegerCódigo del resultado. Es 0 cuando el movimiento se registra correctamente.
msgStringMensaje que describe el resultado de la operación.
detailsArray<Object>Información adicional en forma de arreglo cuando la operación no puede completarse.

Solicitud

Registrar una entrada

curl --request POST \
  --url 'https://api.upnify.com/suite/erp/almacenes/movimientos' \
  --header 'Content-Type: application/json' \
  --header 'token: 00000000-0000-4000-8000-000000000001' \
  --data '{"entrada":1,"tkAlmacen":"00000000-0000-4000-8000-000000000010","tkOperacion":"00000000-0000-4000-8000-000000000070","productos":[{"tkProducto":"00000000-0000-4000-8000-000000000040","cantidad":5,"unidadVenta":"Pieza","comentario":"Entrada de inventario"}]}'

Registrar una salida

curl --request POST \
  --url 'https://api.upnify.com/suite/erp/almacenes/movimientos' \
  --header 'Content-Type: application/json' \
  --header 'token: 00000000-0000-4000-8000-000000000001' \
  --data '{"salida":1,"tkAlmacen":"00000000-0000-4000-8000-000000000010","tkOperacion":"00000000-0000-4000-8000-000000000071","productos":[{"tkProducto":"00000000-0000-4000-8000-000000000040","cantidad":2,"unidad":"Pieza","comentario":"Salida de inventario"}]}'

Registrar un ajuste

curl --request POST \
  --url 'https://api.upnify.com/suite/erp/almacenes/movimientos' \
  --header 'Content-Type: application/json' \
  --header 'token: 00000000-0000-4000-8000-000000000001' \
  --data '{"ajuste":1,"tkAlmacen":"00000000-0000-4000-8000-000000000010","tkProducto":"00000000-0000-4000-8000-000000000040","tkOperacion":"00000000-0000-4000-8000-000000000072","cantidad":20,"reservado":0,"comentarios":"Ajuste de inventario"}'

Registrar un traspaso

curl --request POST \
  --url 'https://api.upnify.com/suite/erp/almacenes/movimientos' \
  --header 'Content-Type: application/json' \
  --header 'token: 00000000-0000-4000-8000-000000000001' \
  --data '{"traspaso":1,"tkAlmacenOrigen":"00000000-0000-4000-8000-000000000010","tkAlmacenDestino":"00000000-0000-4000-8000-000000000011","tkOperacionSalida":"00000000-0000-4000-8000-000000000071","tkOperacionEntrada":"00000000-0000-4000-8000-000000000070","productos":[{"tkProducto":"00000000-0000-4000-8000-000000000040","cantidad":2,"unidad":"Pieza","comentario":"Traspaso interno"}]}'

Respuesta

Movimiento registrado

JSON
[
  {
    "code": 0,
    "msg": "Ok"
  }
]