Saltearse al contenido

Editar item de un carrito

Actualiza la información de una mercadería o servicio específico dentro de un carrito existente. Útil para actualizar cantidades, precios o cambiar mercaderías en el carrito de compras.

URL base: https://api.guarani.app

PUT /carritos/items/{id}
Ventana de terminal
# USD
curl -X PUT "https://api.guarani.app/carritos/items/{id}" \
-H "Content-Type: application/json" \
-H "x-api-key: Bearer <access_token>" \
-d '{
"mercaderia_id": "ejemplo-uuid-mercaderia-123",
"precio_unitario": {
"0": 9.59,
"5": 0,
"10": 4.10
},
"precio_unitario_original": 13.69,
"cantidad": 1,
"total": 13.69
}' | jq
# PYG
curl -X PUT "https://api.guarani.app/carritos/items/{id}" \
-H "Content-Type: application/json" \
-H "x-api-key: Bearer <access_token>" \
-d '{
"mercaderia_id": "ejemplo-uuid-mercaderia-123",
"precio_unitario": {
"0": 70000,
"5": 0,
"10": 30000
},
"precio_unitario_original": 100000,
"cantidad": 1,
"total": 100000
}' | jq

Nota: Se envía mercaderia_id o servicio_id, pero no ambos. Nota: Reemplaza {id} por el ID del ítem y <access_token> con un token JWT válido proporcionado por el equipo Guarani.
Importante:
Es imprescindible incluir un token de acceso válido en el encabezado x-api-key para autenticar y autorizar el uso de este endpoint. Sin este token, la solicitud será rechazada.


ParámetroTipoRequeridoDescripción
iduuidID del ítem dentro del carrito que se desea editar. (ver carritos)
EncabezadoValorDescripción
Content-Typeapplication/jsonIndica que los datos se envían en formato JSON.
x-api-keyBearer <access_token>Token de autenticación necesario para acceder al recurso.
CampoTipoRequeridoTamañoDescripción
mercaderia_iduuidNo36ID de la mercadería, si el ítem corresponde a una mercaderia, no envia este campo si es servicio. (ver mercaderias)
servicio_iduuidNo36ID del servicio, si el ítem corresponde a un servicio, no envia este campo si es mercaderia. (ver servicios)
precio_unitarioobjectNo-Objeto con los precios unitarios por tipo de IVA (0, 5, 10). Si se envía una mercadería es opcional cuando ya existe en el carrito; para servicios debe incluir al menos un valor.
precio_unitario_originalnumber-Precio original de la mercaderia o servicio.
cantidadnumber-Cantidad de unidades de la mercaderia o servicio.
totalnumber-Total final del ítem después del descuento.
CampoTipoRequeridoDescripción
0numberNoPrecio con IVA 0%
5numberNoPrecio con IVA 5%
10numberNoPrecio con IVA 10%
{
"success": true,
"codigo": "200",
"message": "Recurso actualizado con éxito.",
"data": {
"id": "90dc3f8e-965e-40d6-8f6e-a7cda122959f",
"mercaderia": {
"id": "ejemplo-uuid-mercaderia-123",
"codigo_original": "PROD002",
"codigo_fabricante": "CODIGO FABRICANTE DE EJEMPLO",
"codigo_interno": "01-1234567",
"codigo_barra": "CODIGO DE BARRAS DE EJEMPLO",
"descripcion": "DESCRIPCION DE EJEMPLO",
"descripcion_larga": "DESCRIPCION LARGA DE EJEMPLO",
"observacion": "OBSERVACION DE EJEMPLO",
"mercaderia_clasificacion_id": "ejemplo-uuid-clasificacion-mercaderia-123",
"mercaderia_marca_id": "ejemplo-uuid-marca-123",
"imagen_url": null,
"unidades": {
"unidad_medida_compra": {
"id": "5f49c6c1-d622-4f5b-9d8b-2d1636b584ab",
"codigo_sifen": "77",
"representacion": "UNI",
"descripcion": "Unidad"
},
"factor_conversion": 1,
"unidad_medida_venta": {
"id": "5f49c6c1-d622-4f5b-9d8b-2d1636b584ab",
"codigo_sifen": "77",
"representacion": "UNI",
"descripcion": "Unidad"
}
},
"precios": [
{
"precio_unitario": {
"0": 0,
"5": 0,
"10": 100000
},
"moneda": "PYG",
"establecimiento_id": "ejemplo-uuid-establecimiento-123"
}
]
},
"servicio": null,
"precio_unitario": 100000,
"precio_unitario_original": 100000,
"total": 100000,
"cantidad": 1,
"iva": {
"iva_tipo": 10,
"monto": 2727.2727275,
"afectacion": 28.03738318
}
}
}
CampoTipoDescripción
iduuidUUID único del item creado en el carrito. (ver carritos)
mercaderiaobjetoInformación completa de la mercadería (null si es servicio).
servicioobjetoInformación completa del servicio (null si es mercadería).
precio_unitarionumberPrecio final por unidad aplicado.
precio_unitario_originalnumberPrecio original por unidad antes de descuentos o ajustes.
totalnumberMonto total del item (precio_unitario × cantidad).
cantidadnumberCantidad de unidades del producto o servicio.
ivaobjetoInformación del cálculo del IVA aplicado.
CampoTipoDescripción
iduuidUUID de la mercadería.
codigo_internostringCódigo interno de la mercadería. Ver tabla de código interno
codigo_originalstringCódigo original del fabricante o proveedor.
codigo_fabricantestringCódigo asignado por el fabricante.
codigo_barrastringCódigo de barras del producto.
descripcionstringNombre o descripción corta de la mercadería.
descripcion_largastringDescripción extendida de la mercadería.
observacionstringObservaciones o notas adicionales.
mercaderia_clasificacion_iduuidUUID de la clasificación o categoría de la mercadería.
mercaderia_marca_iduuidUUID de la marca de la mercadería.
imagen_urlstringURL de la imagen del producto (puede ser null si no dispone).
unidadesobjectObjeto con información de unidades de compra/venta y factor de conversión.
preciosarrayLista de precios por establecimiento, incluye valores por tipo de IVA y moneda correspondiente
CampoTipoDescripción
unidad_medida_compraobjectDatos de la unidad de medida utilizada para comprar la mercadería. (ver unidades-medidas)
factor_conversionnumberFactor de conversión entre la unidad de compra y la de venta (ej.: 1 caja = 12 unidades).
unidad_medida_ventaobjectDatos de la unidad de medida utilizada para vender la mercadería. (ver unidades-medidas)

Cada elemento del arreglo precios posee la siguiente estructura:

CampoTipoDescripción
precio_unitarioobjectObjeto con precios por tipo de IVA. Las claves son "0", "5" y "10" representando el porcentaje.
monedastringCódigo de moneda en formato ISO 4217 (ej.: PYG, USD).
establecimiento_iduuidUUID del establecimiento al que pertenece este precio.
CampoTipoDescripción
iva_tiponumberTipo de IVA aplicado: 0%, 5% o 10%.
montonumberMonto del IVA calculado en la moneda correspondiente.
afectacionnumberPorcentaje de afectación del IVA sobre el precio total.

Para más información sobre posibles errores y cómo manejarlos, consulta errores.