Widget de tienda online
Referencia de la API
Los endpoints HTTP detrás del widget: presupuesto e intención de carrito, con autenticación y formas de respuesta.
El widget y el SDK cubren el camino habitual, pero todo está también disponible como una API HTTP simple en el host de integración (https://embed.scalarcut.com). Úsala para integraciones headless o del lado del servidor.
Autenticación
Las llamadas a la API se autentican con un token de widget emitido a tu cuenta. Pásalo como token Bearer:
Authorization: Bearer $WIDGET_TOKEN
El token lleva tu id de empresa, el id de la clave de widget y el catálogo al que está limitado. Los tokens se emiten cuando carga el widget, valen siete días y rotan en cada carga; tu servidor obtiene uno nuevo para llamadas del lado del servidor.
Presupuesto
POST /v1/tiling/estimate
Ejecuta el motor de distribución y devuelve la lista de materiales completa para una pared o un suelo. El cuerpo es el mismo documento de distribución que construye el estudio:
curl -X POST "https://embed.scalarcut.com/v1/tiling/estimate" \
-H "Authorization: Bearer $WIDGET_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"catalog": "YOUR_CATALOG_SLUG",
"tile": { "sku": "CER-600-300" },
"surfaces": [ { "width": 2.4, "height": 2.5, "openings": [] } ]
}'
Cuando un catálogo está bloqueado, el endpoint toma las medidas del azulejo del SKU, así que una petición nunca puede desviarse de la geometría real del catálogo.
Intención de carrito
POST /v1/tiling/cart-intent
Resuelve una distribución en líneas de carrito sin navegador:
curl -X POST "https://embed.scalarcut.com/v1/tiling/cart-intent" \
-H "Authorization: Bearer $WIDGET_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"catalog": "YOUR_CATALOG_SLUG",
"sku": "CER-600-300",
"layoutFingerprint": "…",
"quantities": { "boxes": 5 }
}'
Respuesta:
{
"lines": [
{ "sku": "CER-600-300", "qty": 5, "unit": "box" }
],
"layoutFingerprint": "…",
"layoutToken": "…"
}
Con los consumibles activados en la tienda, la petición puede llevar también adhesiveKg, groutKg y primerL, y la respuesta gana las líneas correspondientes de adhesivo, lechada e imprimación.
SDK
GET /v1/sdk.js
Sirve el SDK de integración que cargan tus páginas. Es estable por versión y seguro de cachear:
<script src="https://embed.scalarcut.com/v1/sdk.js"></script>
Errores
La API devuelve códigos de estado HTTP estándar con un message en JSON:
401— token ausente o no válido.403— origen no permitido, o la acción está desactivada para el plan.404— catálogo o SKU desconocido.422— la validación falló; el cuerpo llevaerrorspor campo.