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
Exportaciones mensuales, informes de sucursales, archivos de varios proveedores: cuando los mismos datos llegan en decenas de archivos CSV y Excel, copiarlos a mano en una tabla es lento y fácil de hacer mal. Este script de Python lee todos los archivos de la carpeta que indique, incluidas varias hojas de un mismo libro, alinea las columnas por nombre, añade una columna con el archivo de origen y guarda un solo archivo CSV o Excel. Desde Estándar admite columnas con nombres distintos en distintos archivos y lleva un registro de las filas que no pudo leer. Envíenos dos o tres archivos de ejemplo con unas pocas filas cada uno. Lo ejecuta usted en su ordenador. Excel admite hasta 1.048.576 filas por hoja, así que un resultado mayor se guarda como CSV.
Qué incluye
- Qué recibeUn archivo ZIP con el script de Python, un README con instrucciones paso a paso y, desde Estándar, un archivo de configuración con su carpeta y los nombres de columnas; el código también se muestra en la página del pedido.
- CSV y Excel juntosArchivos de ambos tipos en una carpeta, varias hojas por libro
- Columnas alineadasPor nombre, aunque el orden cambie entre archivos
- Columna de origenCada fila indica de qué archivo procede
- Codificaciones y separadoresComas o puntos y coma, UTF-8 o codificaciones antiguas de Windows
- Código legibleCon comentarios, fácil añadir una columna más adelante
Cómo funciona
- 1EjemplosUsted envía dos o tres archivos de ejemplo y dice cómo debe ser el resultado
- 2CódigoEscribimos el script y la guía para ejecutarlo
- 3PruébeloLo ejecuta con una copia de su carpeta y comprueba los totales
- 4CambiosPide cambios dentro de su paquete y nos envía cualquier mensaje de error
Qué necesitamos de usted
Dos o tres de los archivos que combina, reducidos a unas pocas filas (cambie nombres o importes reales si quiere), cuántos archivos hay aproximadamente y de qué tamaño, y cómo debe ser el resultado: CSV o Excel, qué columnas y en qué orden, y si deben quedarse las filas repetidas. Si los archivos difieren (otros nombres de columna, filas de encabezado extra), un ejemplo de cada tipo. Su sistema: Windows, macOS o Linux.
Le preguntaremos:
- ¿Qué archivos combina?
- ¿Cómo debe ser el resultado?
- ¿Difieren los archivos?
- ¿Dónde se ejecutará?
Comparar paquetes
| Paquetes | BásicoCombinar un tipo de archivo16 US$ | EstándarCombinación con configuración33 US$ | PremiumHerramienta de combinación67 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 | Python | Python | Python |
| 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
¿Y si los archivos tienen columnas distintas?
Desde Estándar usted indica en el archivo de configuración qué nombres corresponden a la misma columna, por ejemplo Precio, Coste e Importe. Las columnas que solo existen en algunos archivos se mantienen, con celdas vacías en las demás filas.
¿Conserva las fórmulas y el formato?
No. Combina los valores: lo que se ve en las celdas. Los colores, las celdas combinadas y las fórmulas no se trasladan.
¿Cuántos archivos puede procesar?
Cientos de archivos no son problema en un ordenador normal. El límite es el resultado: más de 1.048.576 filas no caben en una hoja de Excel, así que se guarda como CSV.
¿Tengo que enviarles mis archivos reales?
No. Bastan unas filas de cada tipo de archivo, y puede sustituir nombres e importes por otros inventados. Después, el script se ejecuta con sus archivos reales en su ordenador.
¿No encontró su respuesta?


