Rodrigo Oyarzún
May 5, 2022
En este blog les cuento cómo, sin programar, empecé un startup y conseguí clientes.
En este post les contaré la historia sobre cómo, sin programar, empecé un startup y conseguí que clientes como Fintual, Examedi y Lomi le pagaran a sus proveedores usando Bemmbo.
Hacer un startup sin programar? Sí, aunque algunos como el tipo de este comentario no lo crean, se puede empezar una startup, crear un producto y tener ventas sin programar.
En marzo del 2021 llevaba más de un año trabajando en Cornershop y renuncié para emprender.
Empezamos un startup con dos compañeros de colegio pero luego de un par de meses y cambios en las industrias que queríamos trabajar decidí salirme. Si renunciar a Cornershop era tirarme a la piscina, salirme de la startup era un salto al vacío.
Lo más difícil para partir es encontrar un problema, un dolor, algo que sea tan latero que tus primeros clientes estén dispuestos a usar tu producto por muy malo que sea, y no porque sean buena onda, si no por que realmente les estas agregando valor.
Me metí al listado de startups de Y Combinator, googlie las startups mas valoradas de US, Europa, etc. De que hay problemas los hay, pero había uno que no podía sacarme de la cabeza: el proceso de pago a proveedores de las empresas.
Una empresa conocida tenía el problema y lo encontraba un proceso tan latero que agarré mi botella de agua y salí a caminar para aprender más. Hablé con una ferretería, un servicio técnico de autos y un hotel. Llamé a otros que tenían casinos de comida y una imprenta entre varios más. Hablé con más de 30 empresas y más de 20 tenían un proceso de pagos similar.
Ok, primer check listo. Parecía cómo un problema que valía la pena resolver.
Era mediados de Junio y quedaba 1 mes para postular a la aceleradora Platanus Ventures (PV), el Y Combinator (YC) de LatAm. El único requisito de PV es que uno de los socios sea lo suficientemente computín. Así que si quería quedar necesitaba un problema ✅ y un CTO ❌👨🏽💻
CTO es la abreviación para Chief Technology Officer, o sea, el socio computín. Es el que tiene que ser capaz de construir un producto tecnológico que resuelva el problema de los clientes.
El panorama no estaba fácil, los programadores están muy escasos y además ¿Quién iba a creerme que las facturas eran un problema y que tenían que renunciar a sus pegas para emprender conmigo?
Me puse una meta: un MVP, clientes y ojalá ventas. Con eso creía que podía convencer a alguien de unirse a trabajar conmigo antes de que cerraran las postulaciones a PV 2021–2.
🚀MVP significa mínimo producto viable, una producto tan tan simple, construido en días ojalá horas y que te sirva para explorar si es que les agregas valor a tus clientes o no.
Agarré un avión a Antofagasta y me instale al lado de la persona encargada de pagos. Durante dos semanas no hice más que construir producto y hablar con mis usuarios.
Como construí producto? Bueno, en la universidad algo programé, principalmente en PHP y SQL, pero de ahí a hacer una aplicación productiva con servidores, bases de datos, infraestructura, hosting, bla bla bla, imposible.
Empecé Bemmbo usando bubble.io, una plataforma no-code hecha específicamente para que co-fundadores no técnicos, que no saben programar, puedan empezar su startup. Maravilloso no?
El Front End (la parte que el usuario ve, con la que interactua) es “drag and drop”, es decir: moviendo cajitas. Las cajitas pueden ser una imagen, un botón, íconos, una parte de un formulario, etc.
Mientras que el Back End es creado por secuencias lógicas. Si el usuario hace click en el botón Aprobar Pago → Entonces cámbiale el estado al pago de “Pendiente” a “Aprobado” → y luego envíale un email de notificación al proveedor para que sepa cuándo recibirá su pago.
Para no inventar la rueda lo que hice fue buscar referentes en USA y Europa y me inspire en sus UI’s (User Interface). Todos tenían algo en común que era mostrar una tabla con todos los documentos que tenían que ser pagados así que partí por ahí.
Ok pero cómo lleno esa tabla? de donde obtengo esos datos? En USA los cobros se envían via correo, para cobrarte te mandan un mail con la factura. Entonces lo que hicieron los startups de allá fue hacer un robot que obtenía los documentos de los correos, extraía información del PDF y lo creaba en la aplicación. Para mí, imposible.
Tuve la suerte de que justo cuando decidí partir Bemmbo había otro startup probando una integración con el Servicio de Impuestos Internos (SII), Fintoc.
En Fintoc scrapean bancos y entidades fiscales. En palabras simples tienen un robot que se conecta al banco o SII como si fuera una persona que navega por las aplicaciones y guarda información en su base de datos que luego uno como cliente de Fintoc puede consumir a través de su API.
🤖API significa Application Programming Interface, la forma en que dos aplicaciones se logran comunicar usando una lenguaje en común.
Ya, tengo una API que tiene la información que necesito, pero y como la obtengo? cómo me conecto a esta API? la información la tengo que guardar para poder mostrársela a un cliente? donde la guardo?
Las API’s son la forma de comunicarse pero a cada API le puedes preguntar por diferentes tipos de información. Por ejemplo en el banco puedes preguntar por las cuentas bancarias que tiene una persona, el saldo que tienen estas cuentas o los movimientos bancarios asociados a cada cuenta. Para organizar esta información las API’s tienen algo que se llaman endpoints.
Lo primero que hice entonces fue probar el endpoint que devolvía los documentos tributarios recibidos por una empresa en particular, pero para hacer una “llamada” a la API hay algunas cosas que configurar como por ejemplo la autenticación.
🔑La autenticación es la forma de decirle a la API oye yo tengo permisos para preguntarte por esta información.
Obvio no cachaba nada de esto, pero san Google me enseño mucho y Fintoc también me la hizo fácil.
Con la autenticación lista entonces viene la pregunta a la API, y al igual que entre humanos uno puede hacer preguntas abiertas o específicas. Y para preguntar cosas mas específicas la API te permite enviarle parámetros como por ejemplo de que empresa quieres los documentos, la fecha de los documentos, el tipo, etc.
Boom! 💥 tenía los documentos de una empresa. Pero yo que soy ingeniero y he trabajado la mitad de mi vida con excel me imaginaba que la API me respondería un CSV, excel, no sé, algo normal. JSON. Que cresta es un JSON? un objeto me dijo Google, una forma de estructurar la información en java script 🤷🏽♂️.
La verdad no me importaba tanto la estructura, si no que Bubble fuera capaz de entenderla. Como bubble esta hecho para gente que no sabe programar entonces configurar una API y leer la información es extremadamente fácil.
Tenía una conexión a la API y Bubble sabía como leer la información pero ahora tenía que guardarla en algún lado para poder mostrársela a mis clientes.
Yo sabía (de Cornershop y otras experiencias) que armar un buen modelo de datos es clave para que todo funcione bien así que a este paso le dediqué harto tiempo.
Usuarios, empresas, documentos por pagar, pagos, aprobaciones, etc, etc. Arme un diagrama de base de datos, lo pinponié con algunas personas computinas y como les hizo sentido me lanzé.
Una empresa tenia RUT y nombre. Un usuario tenía nombre, email y una empresa asociada. Un documento tenía muchos datos del SII pero además una empresa asociada, estado de pago (pendiente, aprobada, pagada), etc.
Para poder mostrar estos datos Bubble tiene algo que se llaman “Repeating groups”, donde tú le pasas una lista de datos y te los muestra hacia abajo, es decir una preciosa tabla. Con eso arme en el front una vista super simple que según yo mostraría los documentos a pagar.
Con el modelo de datos armado, la API configurada y un front super simple entonces le “pegué” a la API. La API le pegó de vuelta a bubble, bubble escribió esta información en la base de datos y automágicamente apareció esto.
Era realmente increíble, ahora sentía que podía hacer cualquier cosa, hacker máximo.
De ahí en más “programé” como loco, tenía una lista con todos los documentos a pagar y una vista del detalle de cada documento donde podían adjuntar archivos (parte clave de la aprobación), un chat para comunicarse y etiquetar a otros miembros de la organización, etc.
Salí a vender y contactar más clientes con el producto que ya estaba creado y obvio, vendiendo cosas que aún no estaban desarrolladas. Un poco de humo, fake it till you make it dicen por ahí.
Un día mientras trabajábamos con Cristobal, mi actual socio y con quién nos estábamos recién conociendo en ese entonces, recibimos el siguiente correo:
¡SALTAMOS EN 3 PATAS! Fintual, la niña más bonita, quería bailar con nosotros. Golazo ⚽
Octubre fue casi todo Fintual y también intentamos incorporar otros clientes más grandes pero al realizar las pruebas Bubble arrugó, se puso lento y se nos duplicaron pagos, oficialmente lo peor que nos podría pasar.
Teníamos que armar Bemmbo de nuevo, siempre lo supimos pero ahora lo necesitábamos.
A mediados de Noviembre nos dimos cuenta que no avanzábamos y que necesitábamos más manos. El runway se nos acortaba 4 meses al contratar a alguien más, pero hice algunos cálculos y llegábamos a abril. Platanus ventures partía en marzo. Apostamos a que quedaríamos, fuimos All-in. ♠️♥️♦️♣️
Runway es el tiempo de vida que le queda a tu startup según la plata que tienes en el banco y lo que gastas mensualmente (burn rate).
En Diciembre entro Darío, el primer dev de Bemmbo y terminamos lanzando a fines de Febrero la nueva app con el primer cliente.
Marzo fue tapar bugs y en Abril onboardeamos mas clientes que todos los que teníamos hasta ese entonces, procesando miles de pagos semanales y ahorrando cientos de horas de tareas manuales, repetitivas y con gran probabilidad de error.
Hoy Fintual, Examedi, Lomi y hasta clientes en MX siguen funcionando en la aplicación no-code.
Si has escuchado a alguien con buenas ideas y ganas de hacer cosas pero que nunca empieza entonces hazle un favor y compártele este blog, no es necesario ser Einstein para empezar una startup sin programar, tampoco para pagar facturas y reembolsos en fácil.