Saltar al contenido
Agents Finance
Caso de usoEvidencia: Experiencia propia

Accounting Prose, despacho que solo usa Xero: ChatGPT, Claude y Gemini leen los estados del cliente en Make y un controller firma

Resumen: Accounting Prose, un despacho estadounidense en remoto que solo usa Xero, montó en Make un flujo en el que ChatGPT, Claude y Gemini analizan por separado los estados del mes de cada cliente, un cuarto paso de IA concilia sus lecturas y un controller corrige el resultado antes de que llegue al cliente. Lo cuenta el propio despacho, que vende proyectos de automatización; no hay resultados medidos.

Publicada el 15 min de lectura3096 palabras

Diagrama: los estados revisados de Xero y el contexto de HubSpot van en paralelo a ChatGPT, Claude y Gemini, un cuarto paso los une y un controller aprueba antes de Fathom o Xero.
Diagrama propio del flujo que describe Accounting Prose.Imagen: Agents Finance · Obra propia

Qué hacen y cómo

Cuando un controller de Accounting Prose termina los estados financieros mensuales de un cliente, rellena un formulario corto (quién lo envía, qué cliente, qué periodo y los estados en PDF). Un flujo de Make recoge entonces la ficha del cliente en HubSpot (actividad concreta, tamaño, plantilla, forma jurídica, propiedad, ubicación y etapa) y los seis últimos consejos que se le dieron, y manda el mismo paquete a ChatGPT, Claude y Gemini, que lo analizan por separado. Un cuarto paso de IA compara las tres respuestas y redacta un único conjunto de conclusiones, acciones y próximos pasos. El controller lo corrige o lo reescribe, y el texto final aparece al principio del informe de Fathom del cliente o en un informe de gestión de Xero, con una nota en HubSpot. Alrededor de ese flujo, el despacho usa Make para llevar los datos de Stripe a Xero, ordenar contactos y convertir nóminas en PDF en facturas de proveedor en borrador en Xero con un GPT personalizado, y el fundador ha creado una skill de Claude sobre el servidor MCP de Xero para revisar los expedientes de los clientes.

Resultado declarado

No hay cifras del flujo de análisis: el despacho dice que su objetivo es que todos los clientes, no solo los más grandes, reciban un análisis legible, y que una persona aprueba todo antes de que llegue al cliente. Del flujo de nóminas en PDF, Acuity dice que «procesa cientos de líneas en segundos». La página de automatización del despacho habla de unas 10 horas al mes ahorradas al facturar por lotes en Xero, unas 5 horas por cliente en la incorporación y la creación de proyectos en Xero «de un día entero a unos minutos», pero son sobre todo flujos de Make sin IA. Nada de esto está auditado.

Ojo con la evidencia. Alguien cuenta cómo lo hace o lo ha hecho, sin cifras contrastables. Es práctica documentada, no una prueba de que funcione en tu caso.

Qué se ha probado de verdad

El 22 de octubre de 2026 leímos la entrada del despacho sobre el flujo de análisis, la entrevista de Acuity (CA ANZ), la entrada del blog de Xero sobre los «builders», la entrada del premio y la página de servicios de automatización del despacho, y comprobamos el título y el canal del vídeo insertado. YouTube bloqueó el vídeo y su transcripción desde nuestro servidor, así que no hemos visto la demostración. El despacho no publica prompts, escenario de Make ni archivo de la skill, ni da cifras de precisión o de tiempo del flujo con IA. Todos los archivos de «Cópialo y adáptalo» son plantillas de Agents Finance basadas en lo que describe el despacho; ninguno se ha probado con un Xero real.

Cómo replicarlo

Empieza después del cierre, no durante: manda solo estados que una persona ya ha revisado. Recoge una vez el contexto del cliente (actividad, tamaño, estructura, objetivos) y guarda un registro de lo que le has dicho en meses anteriores. Envía los mismos estados, contexto e historial a más de un modelo por separado, añade un paso que compare sus respuestas y marque los desacuerdos, y trata cada cifra que citen los modelos como no comprobada hasta cotejarla con los estados. Un controller corrige y aprueba antes de que nada llegue al cliente, y su texto final vuelve al historial para que el mes siguiente no se repita. Desactiva el entrenamiento con datos de clientes en todas las cuentas de IA que uses.

En dos frases

Accounting Prose, un pequeño despacho estadounidense en remoto que lleva a todos sus clientes en Xero, montó en Make un flujo mensual en el que tres modelos de IA distintos leen los mismos estados financieros ya revisados, un cuarto paso concilia lo que dicen y un controller corrige el resultado antes de que lo vea el cliente. Lo que merece la pena copiar no es «usar tres modelos», sino el orden: primero se cierran y se revisan los estados, después la IA redacta una explicación con el contexto y el historial del cliente, y al final una persona la firma.

Quién lo hace y por qué importa

Accounting Prose se presenta como un despacho de «FinOps as a Service» que trabaja totalmente en remoto desde Denver (Colorado). Su fundador y consejero delegado, Enzo O’Hara Garza, lleva más de diez años activo en la comunidad de socios de Xero. En agosto de 2026 el despacho ganó el premio Mid-Size Firm of the Year de los Xero Partner Awards 2026, una categoría que Xero reserva a socios de EE. UU. con entre 5 y 15 empleados a jornada completa equivalente, y fue finalista en Advisory Innovator of the Year.

El despacho dice que trabaja solo con Xero, con el mismo plan de cuentas, la misma lista de cierre y el mismo circuito de revisión para todos los clientes, y que cierra la contabilidad de cada cliente como muy tarde el día 10 del mes siguiente. Esa homogeneidad es lo que hace viable la capa de IA: los estados de todos los clientes se parecen, así que un mismo flujo sirve para todos.

Conviene no perder de vista el contexto comercial. El despacho vende proyectos de automatización en Make y Claude (su página de servicios habla de 2.500 $ por proyecto, con alcance cerrado), y el fundador aparece en el propio marketing de Xero sobre los «builders». El relato es de primera mano y concreto, pero también es la forma en que el despacho vende sus servicios, y no publica mediciones del flujo con IA.

El flujo de análisis, paso a paso

Diagrama: el formulario del controller y los estados revisados entran en Make, que añade la ficha de HubSpot y los seis últimos consejos, manda el paquete por separado a ChatGPT, Claude y Gemini, une sus respuestas en un cuarto paso y pasa el borrador al controller antes de Fathom, Xero y HubSpot.
Los siete pasos del flujo de análisis de Accounting Prose · Agents Finance, obra propia

La entrada del despacho (junio de 2025), escrita a partir de una demostración en vídeo en su canal de YouTube, describe siete pasos:

  1. Un formulario corto al terminar el cierre. Cuando un controller acaba los estados de un cliente, rellena un formulario con quién lo envía, qué cliente (un desplegable conectado con el resto de sistemas del despacho), el periodo y los estados financieros en PDF. El fundador pensó al principio en pedir también los del periodo anterior y lo descartó: el flujo funciona solo con los actuales, y cada campo de más es trabajo extra en pleno cierre.
  2. La historia detrás de las cifras. Make trae de HubSpot lo que el despacho sabe del cliente: no solo «agencia de marketing», sino de qué tipo, cuántas personas, qué tamaño de facturación, forma jurídica, socios, ubicación y etapa. Los ejemplos de la entrada lo dejan claro: lo que se aconseja a un negocio de 500.000 $ no es lo que se aconseja a uno de 5 millones.
  3. No repetirse. Antes de escribir nada, el sistema lee los seis últimos consejos dados al cliente, agrupados en tres bloques: conclusiones generales, acciones y próximos pasos. Si el mes pasado sugirió mejorar la tesorería, debe partir de ahí, no volver a decirlo.
  4. Tres analistas, por separado. El mismo paquete (estados, ficha e historial) va a ChatGPT, Claude y Gemini. No ven las respuestas de los demás, para que la lectura de un modelo no arrastre a los otros.
  5. Un paso de consenso. Un cuarto paso de IA lee las tres respuestas y redacta una sola recomendación. Si dos modelos coinciden y uno discrepa, el discrepante se toma como el error probable; si discrepan mucho, las sopesa con la actividad, la etapa y el historial del cliente. La entrada no dice qué modelo hace este paso.
  6. Decide el controller. El resultado llega como resumen, acciones y próximos pasos. El controller puede corregir, añadir contexto que solo él conoce o reescribir apartados, y actualizar el historial para que las siguientes ejecuciones sean coherentes. Si siempre corrige lo mismo, hay que cambiar los prompts.
  7. Entrega donde el cliente ya mira. Quien usa Fathom ve el análisis al principio de su informe mensual; quien usa Xero lo recibe dentro de un informe de gestión, junto a los estados. En el ticket de HubSpot del cliente queda una nota para que el equipo sepa qué se dijo y cuándo.

Sobre privacidad, la entrada cuenta que, cuando el equipo planteó dudas, el fundador configuró todos los servicios de IA para que no entrenen con datos de clientes, mantuvo todo dentro de las cuentas del despacho y revisó la configuración más de una vez.

Las tuberías de Xero alrededor

El flujo de análisis se apoya en otras automatizaciones que el fundador explicó en septiembre de 2025 a Acuity, la revista de Chartered Accountants Australia and New Zealand. Solo algunas usan IA, y el artículo deja claro cuáles:

  • De Stripe a Xero. Para un cliente SaaS con mucho volumen, un flujo de Make con varias rutas separa cobros, devoluciones y facturas de Stripe y manda cada uno a su sitio en Xero, usando los metadatos de Stripe para el reconocimiento de ingresos y los ingresos diferidos.
  • Limpieza de contactos. Stripe identifica a los clientes por un ID y Xero por el nombre del contacto, lo que generaba duplicados («un John Smith con 100 facturas en Xero y luego tres John Smith en Stripe»). Un flujo de Make cruza los contactos por email y añade el ID de Stripe al contacto de Xero.
  • Una extensión de Chrome que pulsa «OK». Como no hay API para aprobar las coincidencias bancarias, el fundador hizo una extensión que pulsa «OK» en la pantalla de conciliación de Xero solo cuando Xero muestra una coincidencia en verde y al menos tres datos cuadran (proveedor, fecha e importe), con botones para arrancar, parar y pausar porque el equipo era prudente. Es automatización por reglas, no un modelo de IA que elige movimientos.
  • De nóminas en PDF a facturas en borrador. El proveedor de nóminas de un cliente solo enviaba PDF con cabeceras rotas y columnas combinadas. El fundador usó primero un GPT personalizado para convertirlos en filas que pegaba en una hoja de cálculo y después lo automatizó en Make: copia una plantilla de Google Sheets, ChatGPT lee el PDF y se crea en Xero una factura de proveedor en borrador con las categorías de seguimiento y el PDF de origen adjunto.

En agosto de 2026, el blog de Xero añadió otra pieza: para revisar expedientes de clientes a escala, el fundador creó una skill de Claude sobre el servidor MCP de Xero. Xero recoge esta frase suya: «Cuando creé esta skill dentro de Claude, lo hice por necesidad». Ni Xero ni el despacho explican qué revisa la skill.

Resultados, y cuánto fiarse

No hay cifras del flujo de análisis: ni tiempo ahorrado por cliente, ni tasa de errores, ni datos de la reacción de los clientes. El beneficio que declara el despacho es de alcance: el análisis que antes se reservaba a los clientes que más pagan ahora llega a todos, con una persona en el circuito. La única cifra de un flujo con IA es la descripción de Acuity del lector de nóminas, que «procesa cientos de líneas en segundos».

Los ahorros de tiempo de la página de servicios (unas 10 horas al mes al facturar por lotes en Xero, unas 5 horas por cliente en la incorporación, la creación de proyectos en Xero de un día entero a unos minutos) son afirmaciones del despacho sobre flujos que en su mayoría no usan IA. Los recogemos porque muestran a qué escala automatiza el despacho, no como prueba de la capa de IA.

Qué copiar y qué cambiar

Tres decisiones de diseño se sostienen bien:

  • IA después del cierre, no en su lugar. Los modelos explican estados que un controller ya ha revisado. No contabilizan nada, y la única escritura en Xero de los flujos con IA descritos es una factura en borrador.
  • El contexto y la memoria son explícitos. La ficha del cliente y las seis últimas recomendaciones se pasan en cada ejecución. Eso evita que el comentario mensual suene genérico y repetido, y cualquier despacho puede montarlo con una hoja de cálculo.
  • Una persona con nombre firma. El controller corrige y aprueba, y sus correcciones alimentan el historial.

Una decisión pide cuidado. La votación por mayoría entre modelos detecta algunas cifras inventadas y lecturas raras, pero los modelos pueden compartir el mismo punto ciego, y que dos coincidan en una cifra equivocada no la vuelve correcta. Si copias el patrón, añade una comprobación determinista de que cada importe y porcentaje del borrador aparece en los estados o se puede calcular a partir de ellos, y manda al controller como aviso todo lo que no la pase. La plantilla de abajo incluye un pequeño script para eso.

Y sobre la extensión de Chrome: la pantalla de coincidencias bancarias de Xero es un punto de control. Pulsar «OK» automáticamente cuando cuadran tres campos es una decisión del despacho para sus clientes, con botón de pausa; si haces algo parecido, limítalo a coincidencias exactas, registra cada clic y revisa una muestra. Para agentes de IA que manejan las pantallas de Xero, la regla más segura es la contraria: el agente rellena los campos y una persona pulsa «OK».

Paso a paso para replicar el patrón

  1. Homogeneiza primero. Una sola plantilla de plan de cuentas y un mismo formato de estados para todos los clientes permiten un único flujo.
  2. Crea la ficha del cliente con campos estructurados (actividad concreta, tramo de facturación, plantilla, forma jurídica, socios, ubicación, etapa, objetivos) en tu CRM o en una hoja.
  3. Crea el registro de consejos: una fila por cliente y mes, con conclusiones, acciones y próximos pasos tal como se enviaron.
  4. Lánzalo desde un formulario al terminar el cierre, con los estados revisados adjuntos.
  5. Llama a dos o tres modelos con el mismo prompt, por separado, y pide una salida estructurada que cite las cifras en las que se apoya.
  6. Une y marca en un paso más, y pasa la comprobación de cifras.
  7. Manda el borrador al controller para que lo corrija y apruebe; solo entonces publícalo en Fathom, Xero o por email, y guarda el texto final en el registro.
  8. Revisa la privacidad en cada cuenta de IA y en Make, y di a los clientes qué proveedores tratan sus datos.

Cópialo y adáptalo

Accounting Prose no publica prompts, escenario de Make ni archivo de la skill, y no hemos podido ver su vídeo. Todo lo que sigue es una plantilla de Agents Finance basada en lo que describe el despacho. No se ha probado con un Xero ni con un escenario de Make reales. Úsala con estados que una persona ya haya revisado, y no pegues nombres de clientes ni identificadores fiscales en herramientas cuya configuración de datos no hayas comprobado. El código es el mismo que en la versión inglesa, por eso los prompts y los comentarios están en inglés; tradúcelos si tus clientes reciben el informe en español.

Requisitos

  • Xero con los estados mensuales revisados, exportables en PDF (o mejor en CSV/JSON con la API o el servidor MCP de Xero, que facilita la comprobación de cifras).
  • Make (o n8n, o un script) con conexión a los proveedores de IA que elijas; los módulos de IA de Make o tus propias claves de API.
  • Un sitio para la ficha del cliente y el registro de consejos: HubSpot, Airtable, una base de datos o una hoja de Google.
  • Python 3.10 o superior si usas el script de comprobación (solo biblioteca estándar).

1. Campos del formulario y de la ficha del cliente (plantilla de Agents Finance)

# Filled in by the controller at the end of close
intake:
  submitted_by: "{{CONTROLLER_NAME}}"
  client_id: "{{CLIENT_ID}}"          # from your CRM, not typed by hand
  period: "{{YYYY-MM}}"
  statements_file: "{{PATH_OR_URL}}"  # reviewed P&L, balance sheet, cash flow
  reviewed: true                      # the workflow stops if false

# Kept in the CRM and updated when something changes
client_profile:
  industry_detail: "SEO-focused digital agency"   # specific, not just "marketing"
  revenue_band: "1M-5M"
  headcount: 12
  legal_structure: "S corp"
  owners: 2
  location: "{{CITY_REGION}}"
  growth_stage: "scaling"            # startup | scaling | mature | declining
  goals: ["hire a second account manager in Q3", "keep 6 months of runway"]

2. Prompt de analista, igual para cada modelo (plantilla de Agents Finance)

You are a senior accountant writing the monthly note for a small-business client.
The financial statements below have already been reviewed by a controller. Do not
correct them and do not invent figures.

Client profile:
{{CLIENT_PROFILE_YAML}}

What we told this client in the last six months (most recent first):
{{ADVICE_LOG_LAST_6}}

Statements for {{PERIOD}}:
{{STATEMENTS_TEXT_OR_TABLES}}

Write, in plain English for a business owner:
1. overview: 3 to 5 bullet points on what changed and why it matters for a business
   of this size, structure and stage.
2. action_items: up to 3 concrete actions, each tied to a figure in the statements.
3. next_steps: what to watch next month.

Rules:
- Every number you mention must appear in the statements or be a simple calculation
  from them; show the calculation in "evidence".
- Do not repeat a recommendation from the log unless you add something new
  (progress, a new figure, a next stage); say so if you do.
- If the statements do not support a conclusion, say what is missing instead.
- No tax, legal or investment advice.

Return JSON only:
{"overview": [{"text": "", "evidence": ""}],
 "action_items": [{"text": "", "evidence": ""}],
 "next_steps": [{"text": "", "evidence": ""}],
 "missing_information": [""]}

3. Prompt de consenso (plantilla de Agents Finance)

You receive three independent analyses (A, B, C) of the same client's reviewed
statements for {{PERIOD}}, plus the client profile and advice log.

1. List the points where at least two analyses agree, with their evidence.
2. List the points where they disagree. Do not resolve a disagreement about a
   figure: mark it "CHECK FIGURE". Resolve a disagreement about priority only by
   reference to the client profile, and explain why in one sentence.
3. Draft the client note: overview (3-5 points), action items (max 3), next steps.
   Use only points from step 1, or from step 2 with your stated reason.
4. Add "for_controller": every CHECK FIGURE item and anything that repeats the log.

Return JSON with keys: agreed, disagreed, draft_note, for_controller.
Analyses:
A: {{ANALYSIS_A}}
B: {{ANALYSIS_B}}
C: {{ANALYSIS_C}}

4. Registro de un consejo enviado (plantilla de Agents Finance)

{
  "client_id": "{{CLIENT_ID}}",
  "period": "2026-09",
  "sent_at": "2026-10-08",
  "approved_by": "{{CONTROLLER_NAME}}",
  "overview": ["Gross margin fell from 61% to 55% as contractor costs rose"],
  "action_items": ["Review contractor rates on the two largest projects"],
  "next_steps": ["Watch October gross margin and contractor spend"],
  "controller_edits": "Removed a hiring suggestion: client already paused hiring",
  "models_used": ["model-a", "model-b", "model-c"]
}

5. Comprobación de cifras antes de que el controller vea el borrador (plantilla de Agents Finance, Python)

"""Flag numbers in an AI draft that do not appear in the reviewed statements.

Usage: python check_figures.py statements.txt draft.json [allowed,numbers]
statements.txt: the statements as text (export from Xero or your reporting tool).
draft.json: the consensus output with a "draft_note" key.
It only flags; a person decides. Percentages and simple ratios computed by the
model will be flagged too unless you pass them as the third argument after checking.
"""
import json
import re
import sys

NUM = re.compile(r"-?\$?\(?\d[\d,]*(?:\.\d+)?\)?%?")

def numbers(text):
    out = set()
    for raw in NUM.findall(text):
        clean = raw.replace("$", "").replace(",", "").replace("(", "-").replace(")", "").rstrip("%")
        try:
            out.add(round(float(clean), 2))
        except ValueError:
            pass
    return out

def main(statements_path, draft_path, allow=()):
    statements = open(statements_path, encoding="utf-8").read()
    draft = json.load(open(draft_path, encoding="utf-8"))
    known = numbers(statements) | {round(float(a), 2) for a in allow}
    flagged = []
    for section, items in draft.get("draft_note", {}).items():
        for item in items:
            text = item if isinstance(item, str) else item.get("text", "")
            for n in numbers(text):
                if abs(n) >= 10 and n not in known and -n not in known:
                    flagged.append({"section": section, "number": n, "text": text})
    print(json.dumps({"flagged": flagged, "count": len(flagged)}, indent=2))
    return 1 if flagged else 0

if __name__ == "__main__":
    allowed = sys.argv[3].split(",") if len(sys.argv) > 3 else ()
    sys.exit(main(sys.argv[1], sys.argv[2], allowed))

Se ignoran los números menores que 10 para no marcar recuentos como «3 acciones»; ajusta el umbral a tus clientes. El script trabaja con números en formato inglés (coma de miles, punto decimal), que es como los exporta un Xero en inglés; si tus estados usan el formato español, cambia la limpieza de separadores. Que una cifra salga marcada no significa que esté mal (puede ser un ratio correcto), pero el controller debe verla antes que el cliente. Solo hemos probado el script con un ejemplo inventado.

Límites y preguntas abiertas

  • Un solo narrador. Todas las fuentes salen del despacho o de su fundador; la entrada de Xero y la entrevista de Acuity repiten lo que el fundador les contó. Ningún cliente habla de los análisis.
  • Sin mediciones de precisión, tiempo ahorrado o reacción de los clientes en el flujo con IA, ni datos de cuántas veces discrepan los tres modelos.
  • No se nombran las versiones de los modelos ni el cuarto paso, y la entrada es de junio de 2025: el flujo puede haber cambiado desde entonces.
  • Qué hace la skill de Claude sobre el servidor MCP de Xero no se explica más allá de «revisar expedientes de clientes».

Errores comunes

  • Enviar cifras sin revisar. Si los estados aún tienen conciliaciones abiertas o devengos pendientes, tres modelos explicarán con mucha soltura unas cifras erróneas. Lanza el flujo solo cuando la lista de cierre esté firmada.
  • Tomar el acuerdo por prueba. Que dos o tres modelos coincidan no comprueba una cifra. Mantén la comprobación determinista de cifras y deja que el controller vea cada aviso.
  • Prescindir del historial. Sin el registro de consejos anteriores, las notas mensuales se repiten y los clientes dejan de leerlas. Guarda en el registro el texto final del controller, no el borrador de la IA.
  • Demasiado contexto del cliente en el prompt. Pasa los campos que necesita el análisis (sector, tamaño, fase, objetivos), no NIF, datos bancarios ni datos personales, y revisa la configuración de datos de cada proveedor y de Make.
  • Dejar que el borrador salga solo. El valor del patrón está en la persona con nombre que aprueba. No añadas un paso automático de «enviar si no hay cambios».

Conclusiones

Accounting Prose muestra un patrón que un despacho pequeño puede montar sin software a medida: estados de Xero ya cerrados y revisados, un perfil estructurado del cliente, un registro de los consejos anteriores, varios modelos que trabajan por separado y un controller que firma. La evidencia es el relato del propio despacho, sin resultados medidos y con un interés comercial detrás, así que copia el orden de trabajo y no un ahorro prometido, y añade la comprobación de cifras que el despacho no describe.

Fuentes

Hemos redactado esta ficha con nuestras palabras a partir de las fuentes anteriores y comprobamos que los enlaces funcionaban el 24 de octubre de 2026. ¿Algún dato es incorrecto? Avísanos.

Newsletter

El boletín semanal de Agents Finance

Una vez por semana, los casos de uso, prompts y tutoriales nuevos de IA en finanzas y ERPs. Sin spam; te das de baja con un clic.

Responsable: Agents Finance. Finalidad: enviarte el boletín semanal. Base: tu consentimiento, que puedes retirar en cualquier momento con el enlace de baja de cada email. Encargado: Mailrelay (WEBLEGAL SL). Derechos: acceso, rectificación, supresión y demás, escribiendo a info@agentsfinance.io.

Entradas relacionadas

Seguir explorando