Ayman, inicio

Casos / Facturas correctas en nueve idiomas

Facturas correctas en nueve idiomas.

En un SaaS multi-tenant de gestión de recarga de vehículo eléctrico, internacionalicé la facturación y la llevé a un flujo de plantillas probado en CI.

rol
Desarrollador full-stack
año
2025 → hoy
stack
Ruby on RailsRSpecMySQL AuroraMongoDBGitLab CISentry
enlaces
—
Datos de la facturacliente · líneas · impuestosPlantilla HTML/CSSmarca por dominioCI: genera y pruebaen cada cambio// PDF por idiomaESCAENFRPTITDENL9 idiomas · ejemplo ilustrativo
// contexto

Contexto.

Es mi trabajo actual en Etecnic, donde entré en prácticas y me quedé con contrato indefinido. El producto es un SaaS multi-tenant con el que operadores energéticos y aeropuertos gestionan la recarga de vehículos eléctricos.

Llevo funcionalidades completas: endpoints REST con permisos por rol y tests en RSpec, branding por dominio y, sobre todo, la facturación. No publico código ni material de la empresa: aquí solo cuento mi parte.

// problema

El problema.

Operadores energéticos y aeropuertos de varios países necesitan facturas legales en su idioma y con el aspecto de su marca.

// decisiones

Lo que decidí, y por qué.

01

Facturación en nueve idiomas

qué
Todos los textos de la factura salen de traducciones, no de cadenas fijas, para que cada cliente la reciba en su idioma.
02

PDF a partir de plantillas HTML y CSS

qué
Migré la generación de los PDF de factura a plantillas HTML y CSS, con su paso en el pipeline de CI.
03

Marca por dominio

qué
Cada cliente ve la aplicación y sus documentos con su propia marca según el dominio desde el que entra.
// resultado

Resultado.

  • Facturas en el idioma y con la marca de cada cliente, en producción.
  • Endpoints con permisos por rol cubiertos por tests en RSpec.
// qué aprendí

Qué aprendí.

  • Cómo funciona un entorno real de desarrollo y producción: Git flow, ramas, sprints y merge requests revisadas.
  • A leer un problema en producción, encontrar la causa y resolverlo.
  • A aprender por mi cuenta dentro de un equipo: a veces cada uno tiene que encontrar su forma exacta de hacer las cosas.