DesarrolloProtección de pagoDetalles
- Los cambios dentro del paquete son gratuitos.
- Si no responde en los 3 días siguientes a la entrega, el trabajo se acepta automáticamente.
El dinero queda reservado al pagar y solo se libera cuando usted acepta el trabajo.

Ejemplo de resultado
Unir los archivos de ventas mensuales de 9 tiendas en un único informe de Excel
Cómo se ejecuta
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Carpeta: sales/2026-10, 9 archivos encontrados
2026-11-02 09:14:03 INFO shop-01.csv: 1.284 filas
2026-11-02 09:14:04 INFO shop-02.xlsx: 967 filas
2026-11-02 09:14:04 WARN shop-07.csv: 3 filas sin precio omitidas (líneas 88, 412, 913)
2026-11-02 09:14:05 INFO Listo: 10.412 filas -> report-2026-10.xlsx (hojas “Ventas” y “Totales”)
Configuración, no código
Los nombres de columna de cada tienda están en settings.ini, así que una tienda nueva o una columna renombrada es una línea ahí:
[columns]
date = Fecha, Fecha de venta, Día
product = Producto, Artículo, Nombre
quantity = Cant., Cantidad, Uds.
price = Precio, Precio unitario
Una parte del código
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Lee el archivo de una tienda y le da los nombres de columna del informe."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}: no hay columna para '{name}' (se buscó {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
Archivos: un archivo ZIP con merge_sales.py (310 líneas), settings.ini, requirements.txt y un README sobre cómo instalar Python, ejecutar el script y qué significa cada mensaje del registro. El cliente lo ejecuta en su propio ordenador.
Cliente: una pequeña cadena de 9 papelerías; cada tienda envía sus ventas del mes en un archivo CSV o Excel, con nombres de columna ligeramente distintos. Tarea: un único script que lea todos los archivos de una carpeta, dé a las columnas un mismo formato y genere un solo informe de Excel con todas las ventas y una hoja de totales por tienda.
El cliente y todos los datos son ficticios.
Acerca de este servicio
Los filtros de Gmail solo actúan sobre el correo nuevo y solo con condiciones sencillas. Este Google Apps Script ordena también el correo que ya está en su bandeja de entrada, con reglas como: etiquetar todo lo que llega de los dominios de sus proveedores, archivar los boletines de más de 14 días, marcar los recibos como leídos y ponerlos en Cuentas, o destacar tras tres días los mensajes de clientes sin responder. Funciona con la búsqueda de Gmail, las mismas palabras que escribe en el cuadro de búsqueda, así que una regla es fácil de leer y cambiar. Desde Estándar las reglas están en una pestaña de una hoja de cálculo de Google que usted edita, y un registro muestra lo que ha hecho. No borra correo: etiqueta, archiva y marca; mover a la papelera solo se añade si usted da esa regla. Usted lo instala y lo ejecuta en su propia cuenta de Google.
Qué incluye
- Qué recibeUn archivo ZIP con el código de Apps Script y un README que explica cómo añadirlo a su cuenta, dar acceso y ejecutarlo; el código también se muestra en la página del pedido.
- También el correo antiguoActúa sobre lo que ya está en su bandeja de entrada
- Reglas con la búsqueda de Gmailfrom:, subject:, older_than: y demás
- Etiquetar, archivar, leído, destacarLas acciones que elija para cada regla
- Sin borrar por defectoA la papelera solo si da esa regla
- Código legibleCon comentarios, fácil añadir una regla más adelante
Cómo funciona
- 1NormasUsted enumera las reglas con palabras sencillas
- 2CódigoEscribimos el script y la guía para instalarlo
- 3PruébeloLo ejecuta primero con una regla y revisa las etiquetas
- 4CambiosPide cambios dentro de su paquete y nos envía cualquier mensaje de error
Qué necesitamos de usted
Sus reglas con palabras sencillas: qué correo (remitente o dominio, palabras del asunto, antigüedad, si tiene adjunto), qué hacer con él (etiquetar, archivar, marcar como leído, destacar) y los nombres de las etiquetas que usa. Cuánto correo hay aproximadamente en el buzón y con qué frecuencia debe ordenarse el correo nuevo. Si usa un Gmail gratuito o Google Workspace. Sin contraseñas ni capturas de correo privado: bastan remitentes de ejemplo como tienda.example.
Le preguntaremos:
- ¿Qué hay que ordenar?
- ¿Qué debe pasar con cada tipo?
- ¿También el correo antiguo o solo el nuevo?
- Lo que nunca debe hacer
Comparar paquetes
| Paquetes | BásicoUn conjunto de reglas16 US$ | EstándarReglas en una hoja33 US$ | PremiumHerramienta para ordenar el correo67 US$ |
|---|---|---|---|
| Plazo | 1 día | 2 días | 3 días |
| Cambios | 1 | 2 | 3 |
| Código | hasta 150 líneas | hasta 400 líneas | hasta 1.000 líneas |
| Archivos de código | 1 | hasta 3 | hasta 8 |
| Archivo de configuración | No | Sí | Sí |
| Mensajes de error claros y registro | No | Sí | Sí |
| Opciones de ejecución y guía para ejecutarlo de forma programada | No | No | Sí |
| Guía de instalación y uso (README) | Sí | Sí | Sí |
| Lenguaje | Google Apps Script | Google Apps Script | Google Apps Script |
| Hacer pedido Básico | Hacer pedido Estándar | Hacer pedido Premium |
Protección de pago
Usted paga al hacer el pedido, pero el dinero solo se libera por un trabajo aceptado.
- Precio fijoEl precio del paquete no cambia después del pago.
- El dinero queda reservadoAl pagar, el importe solo queda reservado. Pasa a Dleex cuando usted acepta el trabajo.
- Revisado antes de la entregaCada resultado pasa un control de calidad antes de llegar a usted, y lo ve en la página del pedido antes de aceptarlo.
- Cambios gratuitosSolicite cambios dentro de su brief tantas veces como permita el paquete.
- Aceptación a los 3 díasSi en los 3 días siguientes a la entrega no acepta el trabajo ni solicita cambios, se acepta automáticamente. Si escribe en el chat del pedido después de la entrega, el pedido queda en espera; cuando le respondamos, podremos reiniciar el plazo de 3 días y se lo indicaremos en el chat.
- Rehacer el trabajo o reembolso totalSi el resultado no se ajusta a su brief y los cambios no lo resolvieron, o el trabajo tarda más del doble de su plazo, escriba en el chat del pedido: rehacemos el trabajo o le reembolsamos el pago íntegro.
Preguntas y respuestas
¿Por qué no usar simplemente los filtros de Gmail?
Los filtros solo actúan cuando llega el correo y no pueden esperar unos días ni comprobar si usted ha respondido. El script actúa sobre todo el correo que coincide, incluidos los mensajes antiguos, y puede usar condiciones como la antigüedad.
¿Borrará mis correos?
No, salvo que dé una regla que diga mover cierto correo a la papelera, e incluso entonces Gmail lo guarda en la papelera durante 30 días. Por defecto solo etiqueta, archiva y marca.
¿Puede ordenar un buzón con 100.000 correos?
Sí, por partes: una ejecución del script está limitada a unos seis minutos, así que procesa un lote en cada ejecución y continúa en la siguiente. La primera limpieza puede llevar varias ejecuciones.
¿Tendrán acceso a mi correo?
No. Usted añade el script en su propia cuenta y le da acceso usted mismo. Nunca vemos su correo ni iniciamos sesión en él.
¿No encontró su respuesta?


