Valida y canjea cupones, aplica ofertas y suma puntos y sellos directamente desde tu sistema de caja, con una sencilla API REST. Sigue estos pasos.
En tu panel, entra en Ajustes → Conectar tu caja / TPV y pulsa «Generar clave de API». La clave (empieza por pm_live_) se muestra una sola vez — cópiala y guárdala.
Tu sistema de caja debe enviar la clave en la cabecera Authorization de cada petición. La clave identifica a tu comercio: no hace falta nada más.
Authorization: Bearer pm_live_xxxxxxxxxxxxxxxxxxxxxxxx
Comprueba que funciona con una llamada de prueba:
curl https://pillamas.com/api/tpv/ping \ -H "Authorization: Bearer pm_live_..."
Al leer el QR o código del cliente, primero consulta qué es y luego aplica la acción según el tipo (cupón, cliente o promoción).
curl -X POST https://pillamas.com/api/tpv/consultar \
-H "Authorization: Bearer pm_live_..." \
-H "Content-Type: application/json" \
-d '{ "codigo": "ABC123" }'
Base: https://pillamas.com/api/tpv
/consultar/cupon/canjearvalido o el motivo (ya_canjeado, caducado, anulado…)./ventaclienteRef (su token/QR o teléfono/email) e importe./promoclienteRef e importe opcionales según lo que exija la promo./cliente?ref=…/pingRegistrar una venta de 18,50 € (suma puntos y sellos):
curl -X POST https://pillamas.com/api/tpv/venta \
-H "Authorization: Bearer pm_live_..." \
-H "Content-Type: application/json" \
-d '{ "clienteRef": "+34600111222", "importe": 18.50 }'
→ { "resultado": "valido", "mensaje": "+18 puntos", "puntosSumados": 18, ... }
Aplicar una promoción a un cliente:
curl -X POST https://pillamas.com/api/tpv/promo \
-H "Authorization: Bearer pm_live_..." \
-H "Content-Type: application/json" \
-d '{ "codigo": "VERANO", "clienteRef": "+34600111222", "importe": 25 }'
| Paso | Qué hace la caja |
|---|---|
| 1 | Lee el QR/código del cliente → POST /consultar |
| 2 · cupón | POST /cupon/canjear y aplica el descuento en el ticket |
| 2 · cliente | Al cobrar, POST /venta con el importe (puntos + sellos) |
| 2 · promo | POST /promo |
| 3 | Muestra en pantalla el mensaje que devuelve la API |
resultado:
valido, ya_canjeado, caducado, anulado, no_valido,
desconocido, no_aplicable o falta_cliente. Los errores llegan con código HTTP
400/401/404/409/429 y { "error": "mensaje" }.
/venta y /promo, envía una
cabecera Idempotency-Key única por operación (un UUID). Si la caja reintenta la misma petición
tras un fallo de red, la operación se procesa una sola vez: no se vuelven a sumar puntos ni sellos.
Usa una clave nueva para cada venta real.