Caso de uso real · restaurante · Monterrey

300 facturas al mes en 10 minutos:
facturacion por WhatsApp automatica

Un restaurante con 3 sucursales en Monterrey genera 300+ facturas CFDI 4.0 al mes y las envia automaticamente por WhatsApp al comensal. El cliente pide su factura en la mesa y la recibe en el celular antes de terminar el postre.

300+
facturas/mes
3
sucursales
30s
factura en WhatsApp
97%
menos tiempo

El problema: "me da mi factura, por favor"

En Mexico, los comensales pueden solicitar factura fiscal por su consumo en restaurantes. Para el restaurante La Parrilla del Norte con 3 sucursales y un promedio de 10 facturas diarias por sucursal, el proceso manual era un cuello de botella:

  1. El comensal pide factura al mesero. Da sus datos fiscales (RFC, razon social, uso CFDI).
  2. El mesero anota los datos en un papelito o los dicta al cajero.
  3. El cajero abre el sistema de facturacion, captura los datos del comensal y los conceptos del ticket.
  4. Timbra con el PAC. Espera respuesta.
  5. Abre Word/Excel, copia los datos del CFDI y genera el PDF manualmente.
  6. Pregunta al comensal: "a que correo se la mando?"
  7. Abre el email, adjunta el PDF + XML, envia.

Este proceso tomaba entre 8 y 15 minutos por factura. Con 10 facturas al dia por sucursal (30 total), eran 4-7 horas diarias de trabajo del cajero solo en facturacion. Y el comensal esperaba 15 minutos despues de pagar, una experiencia terrible.

La solucion: factura al celular en 30 segundos

El nuevo flujo con Reportia + WhatsApp Business API:

1

Comensal escanea QR en la mesa

Cada mesa tiene un QR que abre un formulario web simple. El comensal captura su RFC, razon social, uso CFDI y numero de WhatsApp. El formulario valida el RFC contra el catalogo del SAT en tiempo real.

2

POS cierra la cuenta y timbra

Cuando el cajero cierra la cuenta, el POS (SoftRestaurant) envia el CFDI al PAC y recibe el XML timbrado. Los datos del comensal ya estan pre-cargados del formulario QR.

3

Reportia genera el PDF

Un webhook dispara POST a /v1/render con los datos del CFDI y la plantilla del restaurante (logo, colores, desglose de platillos con IVA). Reportia devuelve el PDF en menos de 2 segundos.

4

WhatsApp automatico al comensal

El script envia el PDF + XML por WhatsApp Business API al numero que el comensal dejo en el formulario QR. El mensaje incluye: "Aqui esta tu factura de La Parrilla del Norte. Gracias por visitarnos." El comensal recibe su factura antes de levantarse de la mesa.

Ejemplo de codigo: del POS al WhatsApp

Asi se ve el script que recibe el webhook del POS, genera el PDF con Reportia y envia por WhatsApp:

import requests

def generar_y_enviar_factura(venta: dict, datos_fiscales: dict):
    """Recibe datos del POS + datos fiscales del QR form."""

    # 1. Armar JSON para Reportia
    data = {
        "template": "factura-restaurante",
        "format": "pdf",
        "data": {
            "restaurante": "La Parrilla del Norte",
            "sucursal": venta["sucursal"],
            "emisor": {
                "rfc": "PNO210315AB1",
                "nombre": "PARRILLA DEL NORTE SA DE CV",
                "regimen": "601"
            },
            "receptor": {
                "rfc": datos_fiscales["rfc"],
                "nombre": datos_fiscales["razon_social"],
                "uso_cfdi": datos_fiscales["uso_cfdi"],
                "domicilio_fiscal": datos_fiscales["cp"]
            },
            "conceptos": [
                {
                    "descripcion": item["nombre"],
                    "cantidad": item["cantidad"],
                    "precio_unitario": item["precio"],
                    "importe": item["cantidad"] * item["precio"],
                    "iva": item["cantidad"] * item["precio"] * 0.16,
                    "clave_sat": "90101500"  # Restaurantes
                }
                for item in venta["items"]
            ],
            "propina": venta.get("propina", 0),
            "subtotal": venta["subtotal"],
            "iva": venta["iva"],
            "total": venta["total"],
            "uuid": venta["uuid_timbrado"],
            "mesa": venta["mesa"],
            "mesero": venta["mesero"],
            "fecha": venta["fecha"],
            "metodo_pago": venta["metodo_pago"],
            "forma_pago": venta["forma_pago"]
        }
    }

    # 2. Generar PDF con Reportia
    resp = requests.post(
        "https://reportia.4l3.org/v1/render",
        json=data,
        timeout=10
    )
    pdf_bytes = resp.content

    # 3. Enviar por WhatsApp Business API
    wa_resp = requests.post(
        "https://graph.facebook.com/v19.0/PHONE_ID/messages",
        headers={"Authorization": "Bearer WA_TOKEN"},
        json={
            "messaging_product": "whatsapp",
            "to": datos_fiscales["whatsapp"],
            "type": "document",
            "document": {
                "filename": f"factura_{venta['uuid_timbrado'][:8]}.pdf",
                "caption": "Aqui esta tu factura de La Parrilla "
                           "del Norte. Gracias por visitarnos."
            }
        },
        files={"file": ("factura.pdf", pdf_bytes, "application/pdf")}
    )

    return {"pdf_size": len(pdf_bytes), "wa_status": wa_resp.status_code}

Anatomia de la factura de restaurante

La plantilla esta optimizada para el giro de restaurantes y alimentos:

Encabezado

  • Logo del restaurante
  • Datos del emisor (RFC, razon social)
  • Sucursal y numero de mesa
  • Nombre del mesero (opcional)

Detalle de consumo

  • Tabla: platillo, cantidad, precio unitario, importe
  • Desglose por tipo: alimentos vs bebidas
  • Propina separada (si aplica)
  • Clave SAT 90101500 (servicios de restaurante)

Impuestos

  • IVA 16% desglosado por concepto
  • IEPS si hay bebidas alcoholicas
  • Subtotal, impuestos y total claro
  • Forma y metodo de pago (tarjeta, efectivo)

Timbrado SAT

  • UUID del timbre fiscal digital
  • Sello digital del SAT
  • Cadena original del complemento
  • QR de verificacion SAT (opcional)

Resultados despues de 2 meses

Antes (manual)

  • 8-15 min por factura
  • 4-7 horas diarias de cajero en facturacion
  • Comensal esperaba 15 min despues de pagar
  • Errores en datos fiscales por dictado
  • 20% de comensales no regresaban por su factura

Despues (Reportia + WhatsApp)

  • 30 segundos por factura (end-to-end)
  • 10 minutos/dia (automatico)
  • Comensal recibe factura antes de irse
  • 0 errores (datos del QR validados contra SAT)
  • 98% de solicitudes atendidas al instante

La mejora mas valiosa fue la experiencia del comensal. Ya no tiene que dictar datos fiscales, esperar 15 minutos, ni regresar otro dia por su factura. Escanea el QR, llena sus datos, y cuando paga recibe la factura en WhatsApp.

El costo: $9 USD/mes en el plan Pro de Reportia (300 facturas al mes, dentro del limite de 1,000). El ahorro en tiempo del cajero paga el costo 50 veces al mes.

Flujo completo: de la mesa al WhatsApp

Mesa Comensal escanea QR y llena datos fiscales
POS Cajero cierra cuenta. POS timbra con PAC
Webhook Script recibe datos: venta + CFDI + datos fiscales
Reportia POST /v1/render → PDF profesional en 1.8s
WhatsApp PDF enviado al celular del comensal en 30s total

Compatibilidad con sistemas POS

Si tu POS exporta datos de ventas como JSON, CSV o via API, funciona con Reportia:

SoftRestaurant
El mas usado en MX
Poster POS
Cloud-first
Square
Webhook nativo
Aloha POS
Enterprise

Costos para restaurantes

Plan Precio Facturas/mes Ideal para
Free $0 50 Restaurante pequeno (2 facturas/dia)
Pro $9 USD/mes 1,000 Restaurante mediano (1-3 sucursales)
Scale $29 USD/mes 10,000 Cadena de restaurantes (10+ sucursales)
Lifetime $49 pago unico 1,000/mes para siempre Restaurante que quiere pagar una vez

FAQ

Preguntas frecuentes para restaurantes

Puedo enviar la factura por WhatsApp automaticamente?

Si. Reportia genera el PDF y tu script lo envia via WhatsApp Business API (Twilio, 360dialog o la API oficial de Meta). El comensal recibe la factura en su celular en menos de 30 segundos.

Funciona con mi punto de venta actual?

Si tu POS puede exportar datos de la venta (JSON, CSV o via API/webhook), funciona. Los POS mas comunes en Mexico (SoftRestaurant, Poster, Square) tienen APIs o exportan datos que puedes enviar a Reportia. Solo necesitas un script que conecte los dos sistemas.

Puede incluir propina y desglose de IVA?

Si. La plantilla incluye campos para propina voluntaria, IVA 16% por concepto, IEPS si hay bebidas alcoholicas, descuentos y formas de pago multiples. Todo configurable en el JSON que mandas a la API.

Necesito un QR diferente por mesa?

Recomendado pero no obligatorio. Un QR por mesa permite pre-asociar los datos fiscales con el ticket de esa mesa. Pero tambien puedes usar un QR unico para todo el restaurante donde el comensal ingresa su numero de mesa manualmente.

Factura en WhatsApp en 30 segundos

50 facturas/mes gratis sin tarjeta. Tus comensales reciben su factura antes de levantarse de la mesa.