

Automatiza presentaciones de incorporación de clientes desde acuerdos cerrados-ganados (2026)
Para automatizar presentaciones de incorporación de clientes, dispara un webhook cuando un acuerdo alcance el estado Cerrado Ganado en HubSpot, Salesforce o Pipedrive, mapea los campos del acuerdo en un prompt con un nodo Set de n8n, y llama al endpoint POST /api/v1/slides/generate de 2Slides para obtener un PPTX editable de un tema fijo. Un segundo flujo programado construye la presentación de revisión a 90 días a partir de métricas de uso. Cada presentación inicial de 8 páginas cuesta 80 créditos, aproximadamente $0.20, y llega al Slack del CSM unos 30 segundos después de cerrar el acuerdo. Diseñado para operaciones de Customer Success y ingenieros de RevOps.
Puntos clave
- Un webhook de Cerrado-Ganado más dos nodos HTTP Request en n8n convierten campos del CRM en una presentación editable de incorporación de 8 páginas por 80 créditos (unos $0.20).
- El endpoint
generatede Fast PPT devuelve un PPTX nativo, para que el CSM edite el plan a 30/60/90 días antes de la llamada de inicio en lugar de reconstruirlo. - Un flujo programado corre 85 días después del inicio, extrae métricas de adopción de tu almacén de datos y genera una presentación de revisión a 90 días de 10 páginas por 100 créditos.
- Un solo
themeIdpara cada cliente mantiene las presentaciones con la imagen de marca;create-like-thiscon tu diapositiva de marca comoreferenceImageUrlofrece una versión diseñada con imágenes a 1,010 créditos por 10 páginas. - La API permite 6 solicitudes por minuto por clave, así que un cierre masivo de fin de trimestre necesita una cola con un intervalo de 10 segundos.
Para quién es esto
Diriges operaciones de Customer Success o RevOps y cada nuevo cliente genera las mismas 45 minutos de trabajo: copiar las notas del acuerdo en una plantilla de inicio, reescribir los objetivos, redactar un plan a 90 días, y luego repetirlo con números de uso antes de la primera revisión comercial. Esta receta elimina la capa de copiar y pegar mientras deja al CSM el control del PPTX final.
No uses esta receta si tu presentación de incorporación es un PDF estático que nunca cambia por cliente; un enlace compartido es más barato que cualquier generador de presentaciones para customer success.
El flujo de trabajo en resumen
| Paso | Herramienta | Qué sucede | Endpoint 2Slides / créditos |
|---|---|---|---|
| 1 | CRM (HubSpot, Salesforce, Pipedrive) | El estado del acuerdo cambia a Cerrado Ganado; se dispara un webhook con el ID del acuerdo | ninguno |
| 2 | n8n Webhook + HTTP Request + Set | Obtiene el acuerdo, contactos y notas; los mapea en un prompt | ninguno |
| 3 | n8n HTTP Request | Envía el prompt con un themeId fijo y mode: "async" | POST /api/v1/slides/generate, 10 créditos/página |
| 4 | n8n Wait + HTTP Request | Consulta cada 10 s hasta que status sea success o failed | GET /api/v1/jobs/{jobId}, gratis |
| 5 | n8n Slack o nodo Email | Publica el downloadUrl al CSM; lo escribe de vuelta al CRM | ninguno |
| 6 | n8n Schedule Trigger + consulta al almacén (día 85) | Extrae métricas de adopción, construye el prompt para la revisión a 90 días | POST /api/v1/slides/generate, 10 créditos/página |
| 7 | Ruta premium opcional | Diapositiva de marca como referenceImageUrl para una presentación de revisión diseñada con imágenes | POST /api/v1/slides/create-like-this, 10 + 100 créditos/página |
Paso 1: Obtén una clave API y confirma la autenticación
Crea una clave en la pestaña API Keys en 2slides.com/api. Cada cuenta recibe 500 créditos gratis al registrarse, suficientes para 6 presentaciones iniciales, y la clave funciona sin suscripción. Guárdala en n8n como credencial Header Auth y en tu programador como SLIDES_API_KEY; nunca la pegues en el cuerpo de un nodo ni en scripts del lado del navegador.

Verifica la clave antes de conectar cualquier otra cosa:
curl https://2slides.com/api/v1/echo \
-H "Authorization: Bearer $SLIDES_API_KEY"Una respuesta 200 significa que la autenticación funciona. Un 401 suele indicar un espacio al final en la clave pegada.
Paso 2: Elige un tema de incorporación y fíjalo
Busca en la biblioteca de plantillas una vez, elige un tema con portada limpia, diseño de línea de tiempo y diseño de contactos, y fija su themeId. La búsqueda es gratis y devuelve el themeId más metadatos de más de 1,500 plantillas.
curl "https://2slides.com/api/v1/themes/search?query=customer%20onboarding%20timeline&limit=5" \
-H "Authorization: Bearer $SLIDES_API_KEY"
Mantén la automatización de presentaciones de incorporación con la imagen de marca usando un solo themeId
La consistencia de marca viene de una sola decisión: cada presentación inicial y cada revisión a 90 días usan el mismo themeId. El cliente ve los mismos colores y diseños en el día 1 y en el día 90, y el CSM nunca tiene que restilar nada. Si tu equipo de diseño tiene una plantilla aprobada, la guía para rellenar plantillas con imagen de marca muestra cómo subirla a la biblioteca para que tu themeId apunte a tu propio diseño.
Opción premium: create-like-this con tu diapositiva de marca
Para cuentas estratégicas, cambia la llamada Fast PPT por POST /api/v1/slides/create-like-this y pasa una URL pública de una diapositiva de marca aprobada como referenceImageUrl. El pipeline deriva todo el sistema de diseño de esa imagen y devuelve diapositivas diseñadas con imágenes en PDF más imágenes por página. La salida no es un PPTX editable, úsalo para presentaciones que el CSM presenta pero no edita; presupuestar 10 créditos de planificación más 100 créditos por página a 2K.
Paso 3: Convierte campos del CRM en una plantilla de prompt
El camino Fast PPT es el que un CSM usaría manualmente en Fast PPT: pegar contenido, elegir un tema, recibir un PPTX. La API automatiza el pegado. Tu trabajo es escribir bien el pegado, una vez, como plantilla.

En el nodo Set de n8n, mapea las propiedades del CRM a nombres genéricos para que la plantilla funcione con cualquier CRM: company, csmName, plan, seats, startDate, dealNotes (las notas de descubrimiento o campo "objetivos del cliente"), y contacts (títulos, patrocinador y admin marcados). Luego construye userInput con una plantilla como esta (sintaxis de expresión n8n):
Create a customer onboarding kickoff deck for {{ $json.company }}, a new customer of Northstar Analytics.
CSM: {{ $json.csmName }}. Plan: {{ $json.plan }}, {{ $json.seats }} seats, contract start {{ $json.startDate }}.
Goals from the sales notes: {{ $json.dealNotes }}
Key contacts: {{ $json.contacts }}
Build exactly 8 slides:
1. Welcome cover with the customer name, kickoff date and CSM name
2. What you purchased: plan, seats, modules, contract dates
3. Your three goals, rewritten as measurable outcomes
4. Days 1-30: SSO, data import, admin training
5. Days 31-60: team rollout, first dashboards, adoption target
6. Days 61-90: review prep, success criteria check
7. Your team: CSM, solutions engineer, support channel, executive sponsors on both sides
8. Next steps with owners and dates before the kickoff call
Use only facts from the notes above. Where a detail is missing, insert a bracketed
placeholder such as [CSM to confirm] so it is easy to find in PowerPoint.La instrucción del marcador entre corchetes es importante: porque la salida es un PPTX editable, el CSM puede buscar [ y completar cada hueco en dos minutos en lugar de revisar ocho diapositivas buscando detalles inventados.
Aquí está la llamada con valores realistas, en modo síncrono por defecto, que devuelve la presentación terminada en una respuesta:
curl -X POST https://2slides.com/api/v1/slides/generate \
-H "Authorization: Bearer $SLIDES_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"themeId": "YOUR_ONBOARDING_THEME_ID",
"responseLanguage": "English",
"mode": "sync",
"userInput": "Create a customer onboarding kickoff deck for Acme Logistics, a new customer of Northstar Analytics. CSM: Priya Shah. Plan: Business, 120 seats, contract start 2026-10-01. Goals from the sales notes: replace weekly Excel fleet reports with live dashboards; cut month-end reporting from 5 days to 1; give 40 regional managers self-serve access. Key contacts: Dana Ortiz (VP Operations, executive sponsor), Luis Ferreira (BI lead, admin). Build exactly 8 slides: 1 welcome cover with customer name, kickoff date and CSM; 2 what you purchased; 3 the three goals as measurable outcomes; 4 days 1-30 (SSO, data import, admin training); 5 days 31-60 (regional manager rollout, first 5 dashboards); 6 days 61-90 (review prep, success criteria check); 7 your team and support channels; 8 next steps with owners and dates. Where a detail is missing, insert a bracketed placeholder for the CSM to fill in."
}'La respuesta es algo como { "success": true, "data": { "jobId": "...", "status": "success", "downloadUrl": "https://..." } }. Ocho páginas cuestan 80 créditos. Copia el archivo a tu propio almacenamiento en lugar de depender del enlace de descarga a largo plazo.
Paso 4: Automatiza presentaciones de incorporación desde el webhook Cerrado-Ganado en n8n
Este es el camino del webhook cerrado-ganado a las diapositivas. Cada CRM lo dispara un poco diferente:
- HubSpot: suscríbete a
deal.propertyChangeendealstageen una app privada y filtra en n8n porclosedwon. Los payloads llevan IDs, no el acuerdo completo, así que obtén el registro después (documentación webhooks HubSpot). - Pipedrive: suscríbete al evento "deal actualizado" y filtra
status = won. - Salesforce: un Flow disparado por registro en Opportunity donde
StageName = Closed Won, con una llamada HTTP a tu URL webhook de n8n.
El flujo n8n, nodo por nodo:
- Disparador webhook (POST): recibe el payload del CRM.
- IF: continúa solo cuando el estado es Cerrado Ganado y
onboarding_deck_urlestá vacío, para que reintentos del webhook no generen una segunda presentación. - HTTP Request (GET, API CRM): obtiene el acuerdo, contactos y notas.
- Nodo Set: mapea los campos del Paso 3 y arma
userInput. - HTTP Request (POST generate):
https://2slides.com/api/v1/slides/generatecon la credencial Header Auth y cuerpo JSON{ themeId, userInput, responseLanguage: "English", mode: "async" }. Async devuelvedata.jobIden menos de un segundo, así que ninguna ejecución n8n mantiene una conexión larga abierta. - Nodo Wait: 10 segundos.
- HTTP Request (GET jobs):
https://2slides.com/api/v1/jobs/{{ $json.data.jobId }}. - IF:
successcontinúa;pendingoprocessingvuelve a Wait;failedenvía alerta a Slack al canal de operaciones. - Nodo Slack (o Gmail/Outlook): envía mensaje al CSM con nombre del cliente,
downloadUrl, fecha de inicio y enlace al acuerdo. - HTTP Request (PATCH, API CRM): escribe
downloadUrlde vuelta aonboarding_deck_urlpara que el nodo IF lo detecte la próxima vez.
Si tu equipo cierra 20 acuerdos en la última hora de un trimestre, añade un bucle batch con un Wait de 10 segundos antes de cada envío; generate permite 6 solicitudes por minuto por clave y el endpoint jobs 10 por minuto. El tutorial n8n y 2Slides cubre configuración de credenciales y polling con más detalle, y el post de automatización de presentaciones de ventas HubSpot muestra el mismo patrón para presentaciones pre-venta.
Para ser justos: la API de Gamma (developers.gamma.app) documenta una receta similar con n8n más HubSpot para presentaciones de incorporación. Las claves API de Gamma requieren plan Pro, mientras que las claves 2Slides funcionan en cualquier cuenta; 2Slides es nuestro producto, tenlo en cuenta al comparar. La documentación del nodo HTTP Request de n8n aplica a cualquiera de las dos recetas.
Paso 5: Programa la automatización del deck QBR para el día 85
Las presentaciones iniciales se construyen con palabras; las de revisión con números, así que el disparador cambia de webhook a programación. Un disparador Schedule diario en n8n (o un cron job) selecciona cada cliente cuyo kickoff_date fue hace 85 días, extrae métricas de uso de tu almacén o API de analítica, y genera una presentación de revisión de 10 páginas. Cinco días de anticipación permiten al CSM verificar números y corregir marcadores antes de la llamada a 90 días.
Limítate a 8 a 12 números; más que eso y la presentación parece una exportación de dashboard. La guía para presentaciones QBR tiene un esquema diapositiva por diapositiva para revisiones trimestrales después del día 90.
La versión Node.js abajo muestra el ciclo completo de envío, polling y descarga y es el mismo código que reutilizarías para un trabajo API de automatización QBR trimestral:
// review-deck.mjs (Node 20+, sin dependencias)
// Ejecutar diariamente desde un programador: SLIDES_API_KEY=... ONBOARDING_THEME_ID=... node review-deck.mjs
const BASE = "https://2slides.com";
const HEADERS = {
Authorization: `Bearer ${process.env.SLIDES_API_KEY}`,
"Content-Type": "application/json",
};
const THEME_ID = process.env.ONBOARDING_THEME_ID; // mismo tema que la presentación inicial
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
function buildPrompt(c) {
return `Create a 90-day customer review deck for ${c.company}, a customer of Northstar Analytics.
Audience: ${c.sponsor} (executive sponsor) and ${c.admin} (admin). Presenter: ${c.csmName}.
Kickoff goals: ${c.goals.join("; ")}.
Usage for days 1-85: ${c.weeklyActiveUsers} weekly active users of ${c.seats} seats (${c.adoptionPct}% adoption),
${c.dashboards} dashboards published, ${c.reportsAutomated} recurring reports automated,
${c.ticketsOpened} support tickets opened (${c.ticketsOpen} still open), active in ${c.weeksActive} of 12 weeks.
Build exactly 10 slides: 1 cover; 2 executive summary in three sentences; 3 goals vs outcomes table;
4 adoption trend; 5 feature adoption; 6 business impact using the numbers above; 7 open issues and owners;
8 roadmap items that match their goals; 9 plan for days 91-180; 10 next steps with owners and dates.
Use only the numbers given. Where a number is missing, write [CSM to confirm].`;
}
async function generateDeck(customer) {
const submit = await fetch(`${BASE}/api/v1/slides/generate`, {
method: "POST",
headers: HEADERS,
body: JSON.stringify({
themeId: THEME_ID,
userInput: buildPrompt(customer),
responseLanguage: customer.language ?? "English", // un nombre de idioma como "Spanish", no un código
mode: "async",
}),
});
const submitted = await submit.json();
if (!submitted.success) throw new Error(submitted.error);
const jobId = submitted.data.jobId;
// Consulta cada 10 s. El endpoint jobs es gratis y permite 10 solicitudes por minuto.
for (;;) {
await sleep(10_000);
const res = await fetch(`${BASE}/api/v1/jobs/${jobId}`, { headers: HEADERS });
const { data } = await res.json();
if (data.status === "success") return data.downloadUrl;
if (data.status === "failed") throw new Error(`Job ${jobId} failed`);
}
}
async function main() {
// Tu consulta al almacén: clientes cuyo kickoff_date = hoy menos 85 días
const customers = await loadCustomersDueForReview();
for (const c of customers) {
const url = await generateDeck(c);
const file = await fetch(url);
await saveToStorage(`${c.company}-90-day-review.pptx`, Buffer.from(await file.arrayBuffer()));
await notifyCsm(c.csmName, c.company, url); // Slack o email, tu implementación
await sleep(10_000); // mantiene llamadas generate bajo 6 por minuto
}
}
main().catch((err) => { console.error(err); process.exit(1); });Cada presentación de revisión de 10 páginas cuesta 100 créditos, unos $0.25. El bucle maneja un cliente a la vez a propósito; con un intervalo de 10 segundos te mantienes bajo el límite incluso cuando 30 clientes cumplen 85 días el mismo día.
Cómo es una buena presentación de revisión a 90 días
Antes de finalizar el prompt de revisión, mira cómo las presentaciones métricas fuertes manejan el trabajo. Las dos diapositivas abajo vienen de una actualización para inversores de Grab alojada en la Galería 2Slides; son presentaciones de referencia para inspiración de diseño, no salida API de este flujo.


Tres lecciones se trasladan. Lidera con un número por diapositiva, no una tabla de doce. Empareja cada métrica con el objetivo de inicio del cliente para que la revisión cierre un ciclo que recuerdan haber abierto. Da a los temas abiertos su propia diapositiva con responsables. Para reutilizar este lenguaje visual en lugar de un tema plantilla, pasa una de estas URLs de diapositiva como referenceImageUrl a create-like-this.
Cuánto cuesta
Fast PPT cuesta 10 créditos por página. Los créditos cuestan $0.0025 cada uno en el paquete de $5 (2,000 créditos) y $0.002 en el paquete de $80 (40,000). Asume una presentación inicial de 8 páginas y una de revisión de 10 páginas por cliente.
| Volumen | Presentaciones por mes | Créditos por mes | Costo aproximado |
|---|---|---|---|
| 20 nuevos clientes | 20 inicio + 20 revisión = 40 | 20 x 80 + 20 x 100 = 3,600 | $9 (dos paquetes de $5 cubren 4,000 créditos) |
| 500 nuevos clientes | 500 inicio + 500 revisión = 1,000 | 500 x 80 + 500 x 100 = 90,000 | unos $180 en el nivel $80 = 40,000 |
| Premium: 20 presentaciones de revisión diseñadas con imágenes (2K, 10 páginas) | 20 | 20 x (10 + 1,000) = 20,200 | unos $43 (el paquete de $42.50 tiene 20,000 créditos) |
En el nivel de 20 clientes el costo API es $0.45 por cliente para ambas presentaciones, frente a unas 30 horas de tiempo CSM al mes para la versión manual.
¿Fast PPT o diapositivas diseñadas con imágenes para este caso?
| Pregunta | Fast PPT generate (PPTX editable) | create-pdf-slides / create-like-this (diseño con imágenes) |
|---|---|---|
| ¿El CSM lo editará antes de la llamada? | Sí, es el predeterminado para presentaciones iniciales | No, la salida es PDF más imágenes por página |
| Costo para 10 páginas | 100 créditos, unos $0.25 | 1,010 créditos a 2K, unos $2.53 |
| Control de marca | Un themeId, o tu propia plantilla subida | Sistema de diseño derivado de un referenceImageUrl |
| ¿Narración o MP4 para video de revisión? | No soportado | generate-narration (210 créditos/página) + download-slides-pages-voices |
Regla general: las presentaciones iniciales siempre son Fast PPT porque se editan. Para revisiones a 90 días, usa Fast PPT por defecto y reserva create-like-this para cuentas top o un video narrado que el patrocinador pueda ver sin reunión.
Errores comunes
- Picos de fin de trimestre alcanzan el límite de tasa.
generatepermite 6 solicitudes por minuto por clave. Serializa envíos con un Wait de 10 segundos en lugar de lanzar una ejecución por webhook. - Clave API en lugar incorrecto. Guarda la clave en una credencial n8n o variable de entorno del servidor. Nunca llames a la API desde un widget en navegador o tarjeta CRM del lado cliente.
- Intentar narrar una presentación Fast PPT.
generate-narrationacepta trabajos solo decreate-pdf-slidesycreate-like-this. Para video narrado, genera la revisión concreate-like-thisdesde el inicio. - Códigos de idioma en lugar de nombres.
responseLanguageacepta"Spanish"o"Japanese", noesoja. Mapea el campo de localización del CRM a un nombre de idioma en el nodo Set. - Volcar toda la línea de tiempo del acuerdo en el prompt. Veinte páginas de notas producen una presentación confusa. Resume a 3 objetivos y 5 hechos en un nodo Code primero, o usa una propiedad CRM dedicada "objetivos del cliente".
- Presentaciones duplicadas por reintentos de webhook. Los CRM reenvían en timeouts. Escribe
downloadUrlde vuelta al acuerdo y verifica antes de generar.
Preguntas Frecuentes
¿Puedo automatizar presentaciones de incorporación sin n8n?
Sí. El flujo son dos llamadas HTTP y un polling, así que Zapier, Make, un Flow de Salesforce con llamada HTTP, o el script Node.js de 60 líneas del Paso 5 funcionan. n8n es conveniente porque los nodos Wait e IF hacen visible el ciclo de polling, pero los endpoints y el costo de 10 créditos por página son idénticos con cualquier orquestador.
¿Cuánto tarda en generarse una presentación inicial después de cerrar el acuerdo?
Las presentaciones Fast PPT suelen terminar en unos 30 segundos. En el flujo async la llamada de envío devuelve un jobId en menos de un segundo, la primera consulta tras 10 segundos suele mostrar processing, y la segunda o tercera devuelve success con un downloadUrl. El CSM suele ver el mensaje en Slack en menos de un minuto tras el cambio de estado.
¿Puede el CSM editar la presentación de incorporación generada?
Sí. El endpoint generate devuelve un PPTX nativo construido desde una plantilla diseñada, así que texto, orden y diseños son editables en PowerPoint, Keynote o Google Slides. El prompt del Paso 3 pide marcadores [CSM to confirm] donde falta un detalle en el CRM, lo que convierte la edición en un rápido buscar y rellenar en lugar de reescribir.
¿Qué datos debe incluir la presentación de revisión a 90 días?
Pasa de 8 a 12 números: usuarios activos semanales contra asientos, funciones adoptadas, flujos o reportes automatizados, tickets de soporte abiertos y aún abiertos, semanas activas de 12, y progreso en cada objetivo inicial. Extrae los datos en el día 85 para que el CSM tenga cinco días para verificar antes de la llamada, e incluye los objetivos originales para cerrar el ciclo.
¿Este generador de presentaciones para customer success soporta clientes no angloparlantes?
Sí. Configura responseLanguage con un nombre de idioma como "Spanish", "Portuguese" o "Japanese", y el contenido de la presentación se escribe en ese idioma mientras el tema permanece igual. 2Slides soporta más de 20 idiomas de salida. Mapea el campo de localización del CRM a un nombre de idioma en el nodo Set para que cada cliente reciba una presentación en su idioma de trabajo automáticamente.
Próximos pasos
- Obtén una clave API en 2slides.com/api. Los 500 créditos gratis cubren 6 presentaciones iniciales, suficientes para automatizar incorporaciones de tus próximos acuerdos cerrados-ganados antes de comprar algo.
- Ve cómo otros equipos usan los mismos endpoints en el hub Casos de uso API de presentaciones AI por equipo.
- Extiende el pipeline con la guía para presentaciones QBR para el segundo trimestre en adelante, y la guía para rellenar plantillas con imagen de marca para apuntar
themeIda tu propio diseño aprobado.
About 2Slides
Create stunning AI-powered presentations in seconds. Transform your ideas into professional slides with 2slides AI Agent.
Try For Free