R2 Developers
R2 Connect API

Integrar punto de venta

Cómo sincronizar catálogo y consumo entre R2 y un sistema de punto de venta.

Un punto de venta necesita dos cosas de R2: qué se vende y a qué precio de lista, y qué se ha consumido. Los permisos son read:items y read:orders.

El catálogo cambia poco: basta sincronizarlo una vez al día o cuando el negocio te avise. Filtra por product_type para quedarte con lo que tu sistema maneja.

javascript
const catálogo = await leerTodo("items");

// Un punto de venta de restaurante normalmente ignora las habitaciones
const vendibles = catálogo.filter(
  (a) => a.status === "active" && a.product_type !== "room"
);

Leer el consumo#

Las comandas del restaurante llegan como órdenes de tipo command, y el servicio a la habitación como room_service. Cada renglón trae el artículo, la cantidad y el precio realmente cobrado.

bash
curl -H "Authorization: Bearer TU_LLAVE" \
  "https://api.r2-os.com/api/connect/v1/orders?type=command&created_from=2026-07-16&limit=50"

Cargos del huésped a su cuenta

Cuando un huésped consume en el restaurante y lo carga a su habitación, el consumo aparece como un renglón adicional dentro de la reserva de hospedaje, no como una orden aparte. Si tu punto de venta necesita ver esos consumos, pide también read:reservations y recorre el arreglo lines.

Escritura#

La versión 1 de esta API es de solo lectura: tu sistema no puede crear órdenes ni cobros en R2 todavía. La escritura está en el mapa de ruta; escríbenos si tu integración la necesita, para priorizarla con casos reales.