Consumo desde servidor
Obtén JSON estructurado o incorpora directamente el renderer Luxe.
Authorization: Bearer cqp_live_...Conecta la carta y el menú del día de un restaurante mediante una API key de solo lectura. Los complementos oficiales utilizan la misma presentación Luxe de CartaQR Pro.
La demostración utiliza dos páginas reales: la web principal del restaurante y su URL independiente de Carta. Ambas conservan el mismo header y footer del restaurante; la página Carta incorpora en el contenido central el visor Luxe exacto de CartaQR Pro.
API real · vista Luxe · actualización automática
El restaurante genera su clave desde el panel.
La clave se pega en WordPress, Laravel o la web correspondiente.
La carta, fotografías y menú del día permanecen actualizados.
Para obtener la misma vista en cualquier sistema, coloca el contenedor donde deba aparecer la carta y carga el renderer oficial. La API key se genera en Panel → Conectar mi web.
/carta, mantén allí el header y footer del restaurante e inserta el renderer entre ambos. El menú de la web necesita un único enlace llamado «Carta».<div
data-cartaqr-connected="cqp_live_TU_CLAVE"
data-height="900">
</div>
<script async
src="https://cartaqrpro.es/connected/cartaqr-connected.js">
</script>El renderer comprueba la revisión cada 30 segundos y recarga únicamente cuando CartaQR Pro publica un cambio.
No recreamos el diseño en cada sistema. Todos utilizan el renderer oficial para conservar la misma interfaz.
Obtén JSON estructurado o incorpora directamente el renderer Luxe.
Authorization: Bearer cqp_live_...Campo para pegar la clave, página Carta automática y shortcode reutilizable.
[cartaqr_connected]Un contenedor y una etiqueta cargan la vista real sin interferencias del tema existente.
data-cartaqr-connected="TU_API_KEY"<div data-cartaqr-connected="{{ config('services.cartaqr.key') }}"></div>
<script async src="https://cartaqrpro.es/connected/cartaqr-connected.js"></script>$response = Http::withToken(config('services.cartaqr.key'))
->acceptJson()
->get('https://cartaqrpro.es/api/v1/connected/menu')
->throw()
->json();$request = curl_init('https://cartaqrpro.es/api/v1/connected/menu');
curl_setopt_array($request, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Accept: application/json',
'Authorization: Bearer cqp_live_TU_CLAVE'
]
]);
$menu = json_decode(curl_exec($request), true);[cartaqr_connected height="900"]Descargar WordPressLa integración consulta exclusivamente contenido público. La respuesta contiene restaurante, horarios, categorías, platos, imágenes, precios, alérgenos, variantes y menú del día activo.
El modo integrado no duplica el hero ni el footer de CartaQR Pro: muestra directamente las categorías, el menú del día y todas las funciones Luxe dentro del diseño propio del restaurante.
Abrir especificación OpenAPI →GET https://cartaqrpro.es/api/v1/connected/menu
Accept: application/json
Authorization: Bearer cqp_live_TU_CLAVEActualización eficienteUtiliza la cabecera ETag o meta.revision. Si nada ha cambiado, CartaQR Pro responde con 304 Not Modified.
restaurantIdentidad pública, contacto, ubicación, horarios, disponibilidad, imágenes y color.
daily_menuMenú vigente, secciones, platos, precio, texto fijo y hora de finalización. Es null cuando está desactivado o caducado.
categories[].items[]Categorías y platos activos con orden, precios, imágenes, alérgenos, etiquetas, variantes y extras.
metaVersión, revisión estable, fecha de generación y frecuencia recomendada de actualización.
{
"api_version": "1.0",
"restaurant": {
"name": "Restaurante Ejemplo",
"public_url": "https://cartaqrpro.es/restaurante-ejemplo"
},
"daily_menu": null,
"categories": [
{"name": "Entrantes", "items": [...]}
],
"meta": {
"revision": "sha256...",
"refresh_after_seconds": 30
}
}If-None-Match.La API Connected no permite editar, crear ni eliminar información. Las operaciones del panel continúan protegidas y separadas.