Muovere il magazzino da fuori
Carichi, scarichi, trasferimenti e allineamento inventariale.
1. Carico, scarico, trasferimento
curl -X POST https://tuaazienda.siriocloud.it/api/v1/movimenti \
-H 'Authorization: Bearer sc_live_LATUACHIAVE' -H 'Content-Type: application/json' \
-H 'Idempotency-Key: rientro-2026-1188' \
-d '{
"natura": "carico",
"magazzino": 1,
"causale": "reso da noleggio",
"righe": [
{ "ean": "8001234567890", "quantita": 2 },
{ "codice": "ART-002", "quantita": 1, "prezzo": "7.50" }
]
}'
Gli esiti sono per riga; le righe scritte tornano con l'id del movimento e il numero dell'operazione che le raggruppa (per accodare altre chiamate alla stessa: "operazione": N). Il prezzo assente è il suggerito della catena d'acquisto; lo scarico per lotti verifica il residuo del lotto; il trasferimento vuole anche magazzino_origine.
2. L'inventario esterno: «porta a X»
Il terminale d'inventario dichiara il valore contato; la differenza la calcola e la registra il gestionale:
curl -X POST https://tuaazienda.siriocloud.it/api/v1/giacenze/allinea \
-H 'Authorization: Bearer sc_live_LATUACHIAVE' -H 'Content-Type: application/json' \
-d '{
"magazzino": 1,
"righe": [
{ "codice": "ART-001", "contato": 48 },
{ "codice": "ART-002", "contato": 12 }
]
}'{
"scritte": 1, "invariate": 1,
"righe": [
{ "articolo": { "id": 17, "codice": "ART-001" }, "attuale": "50", "contato": "48", "delta": "-2" },
{ "articolo": { "id": 18, "codice": "ART-002" }, "attuale": "12", "contato": "12", "delta": "0" }
]
}
L'operazione è ripetibile: la stessa chiamata rilanciata non scrive nulla (tutte le righe risultano «invariate»). Ogni articolo può comparire una volta sola per chiamata; gli articoli con varianti si contano variante per variante.
3. Leggere il magazzino
GET /movimenti espone tutti i movimenti — anche quelli scritti dalle schermate, dalle vendite, dagli arrivi — ognuno con la sua origine dichiarata: la giacenza è la loro somma, e un estratto parziale non tornerebbe mai. I lotti aperti di un articolo: GET /articoli/{id}/lotti?magazzino=1.
