Actualizar producto
Reemplaza el producto con los datos enviados (mismo cuerpo que al crear). Envía el `id` de cada variante que conservas: las que no vienen se dan de baja (los comprobantes emitidos no cambian). El stock no se cambia aquí: usa [Inventario](/inventario).
PUThttps://api.facturalo.pe/api/v3/productos/{id}
Parámetros del body
Campo
Descripción
tipostringopcional
producto (default) o servicio. Los servicios no controlan stock.Ej: productonombrestringrequerido
Nombre del producto (máx. 250).Ej:
LAPTOP HP INTEL I20descripcionstring | nullopcional
Texto interno (máx. 2000).
unidadMedidastringopcional
NIU (default en productos), ZZ (servicios), BX, PK, KT o GLI.Ej: NIUtipoIgvstringopcional
Catálogo 07:
10 gravado (default), 20 exonerado, 30 inafecto…Ej: 10codigoSunatstring | nullopcional
Código de producto SUNAT de 8 dígitos (catálogo 25).Ej:
43211503tipoExistenciastring | nullopcional
Tabla 5 SUNAT para el kárdex:
01 mercaderías (default), 02 productos terminados…Ej: 01icbperbooleanopcional
Bolsa plástica: se cobra ICBPER al venderla.
controlaStockbooleanopcional
Las ventas descuentan del inventario. Default
true en productos, false en servicios.controlaSeriesbooleanopcional
Cada unidad lleva número de serie / IMEI: se pide al comprar y al vender. Default
false.garantiaMesesinteger | nullopcional
Garantía en meses (0 a 120). Con series, la consulta de una serie dice si sigue vigente.Ej:
12activobooleanopcional
Inactivo: no se puede vender ni cotizar. Default
true.precionumber | nullopcional
Sin variantes: precio con IGV en soles.Ej:
4500precioUsdnumber | nullopcional
Sin variantes: precio con IGV en dólares (se usa si el comprobante es en
USD).skustring | nullopcional
Sin variantes: SKU / código interno, único por empresa (máx. 60).Ej:
LAPT-HP-INT-I20codigoBarrasstring | nullopcional
Sin variantes: código de barras, único por empresa (máx. 60).Ej:
2048123456785opcionesarray | nullopcional
Con variantes: hasta 3 opciones.
nombrestringopcional
Nombre de la opción.Ej:
Tallavaloresstring[]opcional
Valores (1 a 50).Ej:
["S", "M", "L"]variantesarray | nullopcional
Con variantes: una por combinación que vendes (máx. 300).
idstring | nullopcional
Al actualizar: UUID de la variante existente (conserva su historial y stock).
valoresobjectopcional
Valor de cada opción.Ej:
{"Talla": "S", "Color": "Azul"}skustring | nullopcional
SKU de la variante.
codigoBarrasstring | nullopcional
Código de barras de la variante.
precionumber | nullopcional
Precio con IGV en soles.
precioUsdnumber | nullopcional
Precio con IGV en dólares.
activobooleanopcional
false = la combinación existe pero no se vende.stockInicialnumber | nullopcional
Solo al crear: stock inicial de la variante (requiere
costo).costonumber | nullopcional
Solo al crear: costo unitario sin IGV del stock inicial de esta variante.
Language
Credentials
Header
Authorization
Token de la empresa · HTTP directo
Fetch Request
$ # Node 18+ fetch
const response = await fetch("https://api.facturalo.pe/api/v3/productos/mer_01J8Z3K4M5N6P7Q8R9S0T1U2V3", {
method: "PUT",
headers: {
"Authorization": "sk_test_…",
"Content-Type": "application/json"
},
body: JSON.stringify({
"nombre": "LAPTOP HP INTEL I20",
"precio": 4300,
"sku": "LAPT-HP-INT-I20",
"controlaSeries": true,
"garantiaMeses": 12
})
});
const data = await response.json();
console.log(data);HTTP directo · funciona con cualquier cliente HTTP
Response
Elige un ejemplo de respuesta:
application/json
200OK
{
"success": true,
"message": "Producto actualizado.",
"data": {
"id": "a32f4541-75e1-4f0c-9d0a-6a2b7c1e9f10",
"tipo": "producto",
"nombre": "LAPTOP HP INTEL I20",
"unidadMedida": "NIU",
"tipoIgv": "10",
"codigoSunat": "43211503",
"tipoExistencia": "01",
"icbper": false,
"activo": true,
"conVariantes": false,
"controlaStock": true,
"controlaSeries": true,
"garantiaMeses": 12,
"rangoPrecio": {
"desde": 4500,
"hasta": 4500
},
"variantesCount": 1,
"actualizado": "2026-11-09T10:15:02-05:00",
"varianteId": "a32f4541-75eb-4b59-ad28-3c571652fe39",
"sku": "LAPT-HP-INT-I20",
"codigoBarras": null,
"precio": "4500.00",
"precioUsd": null,
"descripcion": null,
"opciones": [],
"variantes": [
{
"id": "a32f4541-75eb-4b59-ad28-3c571652fe39",
"nombre": null,
"valores": {},
"sku": "LAPT-HP-INT-I20",
"codigoBarras": null,
"precio": "4500.00",
"precioUsd": null,
"activo": true
}
]
}
}