Fiatside

Producto

Registro de cambios

Cada entrada describe un cambio real, con el módulo o la página que afecta. Puede contrastarse con el sitio: para eso sirve un registro de cambios.

Versión 1 · 29 cambiosPublicado por primera vez el 2 September 2026

5.4.0

Primera versión pública

El sitio público se pone en marcha: un motor de comisiones con desglose completo, un catálogo de vías de pago con límites reales, una arquitectura de URL basada en corredores y las páginas de transparencia que lo hacen todo verificable. Este registro comienza aquí, en la fecha real de publicación.

Añadido(21)

  • src/lib/pricing.ts

    Motor de comisiones con desglose completo. El coste de red se deduce en especie sobre el activo antes de la conversión; luego, nuestro margen y la comisión de la vía tienen cada uno su propia línea. Una invariante contable comprueba en cada cotización que el bruto menos la suma de las líneas es exactamente igual al neto, hasta la unidad menor: si no cuadra, elevamos un error y nos negamos a cotizar en lugar de dejar pasar un margen oculto.

    Ver la página

  • src/lib/pricing.ts

    Política de diferencial publicada y aplicada por el código: 90 puntos básicos base, 35 más sobre un activo volátil, 25 más sobre un corredor beta, menos 15, 30 o 45 puntos básicos en tres niveles de volumen. No existe ningún otro cargo por nuestra parte.

    Ver la página

  • src/lib/pricing.ts

    Entrada inversa: puede escribir lo que desea RECIBIR y el depósito requerido se resuelve mediante búsqueda binaria. Las comisiones fijas hacen que la función no sea lineal: una inversión algebraica se desviaría unos céntimos cada vez.

  • src/lib/money.ts

    Cada cantidad de dinero viaja como un entero de unidades menores (bigint) y cada tipo como un Decimal. Ninguna cantidad pasa por un flotante de JavaScript, donde 0.1 + 0.2 no es 0.3.

  • src/lib/rates.ts

    La frescura del tipo se comprueba antes de cada cotización firme. Si se supera la antigüedad máxima tolerada por la fuente, el motor genera un error de tipo obsoleto y se niega a cotizar. Servir un precio obsoleto desde una caché se trata aquí como un error financiero, no de rendimiento.

  • src/app/api/quote/route.ts

    Endpoint público de cotización. Entrada validada por esquema, respuesta sin almacenamiento en caché, desglose completo línea por línea con el tipo de mercado medio, el tipo efectivo y la brecha total en puntos básicos. Las infracciones de los límites de la vía se devuelven en el cuerpo de la respuesta en lugar de como un error HTTP, con el límite exacto.

    Ver la página

  • src/data/payout-rails.ts

    Catálogo de métodos de pago que incluye, para cada uno, la moneda de liquidación, los países atendidos, los retrasos p50 y p95, las reglas de días hábiles y de corte, los importes mínimo y máximo en unidades menores, las comisiones reales y el esquema de campos del beneficiario.

    Ver la página

  • src/data/corridors.ts

    Arquitectura de URL basada en corredores. Una vía multinacional produce una única página por activo: SEPA es idéntica en Francia y Bélgica; dos páginas dirían lo mismo. Una vía local — PIX, SPEI, M-Pesa, NIP, Interac — produce una página por país, porque el país lleva el formato de identificador, los límites y el tratamiento fiscal. La matriz bruta de ~2.200 combinaciones se reduce en un orden de magnitud, y cada página superviviente contiene hechos que solo ella puede contener.

  • src/data/corridors.ts

    Olas de lanzamiento y una puerta de indexación. Un corredor solo se ofrece para indexación una vez que el contenido de su ola está realmente escrito; los demás permanecen accesibles y funcionales pero fuera del índice. No pedimos a un motor de búsqueda que indexe una página que aún no hemos escrito.

  • src/data/assets.ts

    Catálogo de activos con decimales de unidad base, redes aceptadas, el depósito mínimo por debajo del cual las comisiones de red se comen la operación y la duración del bloqueo del tipo — más larga en una stablecoin que en un activo volátil.

    Ver la página

  • src/data/networks.ts

    Catálogo de redes con el número de confirmaciones requerido, el tiempo medio de bloque, el patrón de validación de direcciones y, para XRP, Stellar y TON, el campo memo cuya omisión pierde los fondos.

  • src/data/geo.ts

    Datos de referencia geográfica: países abiertos, países en preparación y países rechazados con su motivo — sanciones internacionales, medidas restrictivas o un riesgo de blanqueo de capitales inaceptable. El motivo se publica país por país.

    Ver la página

  • src/config/company.ts

    Registro único de afirmaciones fácticas sobre la empresa. Nombre legal, registro, año de constitución, estado regulatorio, volúmenes, reseñas: cada valor está cumplimentado o marcado como pendiente — y un valor pendiente nunca se muestra. El sitio solo puede afirmar lo que se calcula a partir de sus propios datos.

    Ver la página

  • src/components/JsonLd.tsx

    Datos estructurados que omiten todo campo no cumplimentado. No se declaran a los motores de búsqueda fecha de fundación, número de licencia ni calificación agregada hasta que sean reales.

  • src/i18n/routing.ts

    Prefijo de idioma en cada lengua, incluido el francés. Servir la misma página en “/” y “/fr/” siempre termina en duplicados; la simetría elimina todos los casos especiales en las etiquetas hreflang y canonical.

  • src/app/[locale]/statut

    Página de estado del servicio: un componente por vía de pago y por red vigilada, la descripción exacta de lo que comprobará la sonda, la política de gravedad y la plantilla del informe de incidente. No aparece ningún porcentaje de disponibilidad hasta que se mide.

    Ver la página

  • src/app/[locale]/docs

    Documentación pública de la API: autenticación, paginación, idempotencia, catálogo de errores y webhooks firmados. Las respuestas de ejemplo son respuestas reales del endpoint de cotización, no maquetas.

    Ver la página

  • src/app/[locale]/reclamations

    Procedimiento de reclamaciones por escrito: qué distingue una reclamación de una solicitud de soporte, los tres niveles de escalado, los plazos que cumplimos y qué ocurre si la respuesta no le satisface.

    Ver la página

  • src/app/[locale]/presse

    Kit de prensa: logotipos descargables generados a partir de código, paleta con valores exactos, descripciones cortas y largas listas para citar. No se enumera ninguna cobertura de prensa, por falta de cobertura que citar.

    Ver la página

  • src/app/[locale]/affiliation

    Programa de afiliados pagado sobre el margen realmente cobrado, nunca sobre el volumen bruto: un socio no gana nada por impulsar un corredor que cuesta más al cliente.

    Ver la página

  • src/app/[locale]/plan-du-site

    Mapa del sitio generado a partir de los datos, con un filtro de búsqueda instantánea. Cada página publicada aparece allí: si una página existe y falta en este mapa, eso es un defecto.

    Ver la página

Seguridad(3)

  • src/lib/rates.ts

    Protección de producción: la fuente de tipos determinista utilizada en desarrollo no puede arrancar en producción. El proceso se niega a iniciarse en lugar de cotizar precios congelados.

  • src/middleware.ts

    Rechazo geográfico antes de cualquier renderizado, con un HTTP 451 explícito en lugar de un 404: cuando rechazamos, decimos por qué. El rechazo se vuelve a comprobar en el servidor al crear la orden, ya que una dirección IP por sí sola no prueba nada.

  • next.config.ts

    Cabeceras de seguridad en cada respuesta: HSTS con precarga, denegación de framing, bloqueo de MIME sniffing, política de referrer restringida, aislamiento de origen cruzado y permisos de micrófono, geolocalización y pago desactivados.

Política(5)

  • src/data/payout-rails.ts

    Las vías de cobro — iDEAL, Bizum, BLIK, TWINT, Satispay, MB WAY, QRIS — se declaran no disponibles con su motivo en lugar de ocultarse. Permiten pagar a un comerciante, no recibir fondos; cada una apunta a la vía que utilizamos en su lugar.

    Ver la página

  • src/data/payout-rails.ts

    Zelle está marcada como permanentemente no disponible: sus reglas prohíben contractualmente el desembolso comercial de terceros. Ningún proveedor puede enviar fondos a través de ella de forma conforme para nosotros, y decirlo es mejor que dejar que la gente tenga esperanzas.

  • src/data/payout-rails.ts

    Las vías construidas pero cerradas llevan su motivo reglamentario exacto: retención de TDS y registro FIU-IND para UPI, licencia MAS para PayNow, informes SARB para Sudáfrica, registro AUSTRAC para PayID, un socio con licencia para PromptPay. Preferimos nombrar el obstáculo a anunciar una fecha.

  • src/data/assets.ts

    Monero está en el catálogo, marcado como activo de anonimato reforzado y no ofrecido. La normativa europea contra el blanqueo de capitales exige a los proveedores excluirlo a partir del 10 de julio de 2027; lo mostramos y lo explicamos en lugar de hacerlo desaparecer silenciosamente.

  • docs/CONVENTIONS.md

    Regla editorial aplicable: ningún año de fundación, número de licencia, volumen procesado, recuento de clientes, testimonio o logotipo de socio está codificado en una página. La madurez debe provenir de la profundidad de lo escrito, nunca de pruebas fabricadas.

Por qué este registro no se remonta más atrás

El servicio se publicó el 2 September 2026. Por lo tanto, no hay nada que contar antes de esa fecha, y no vamos a inventarlo. Un registro de cambios que muestra tres años de historia en un servicio publicado hace tres meses se delata en un minuto: historial WHOIS del dominio, archivos web, registros públicos de certificados. La ganancia aparente es nula, el riesgo no lo es.

La consecuencia es visible: esta página es corta hoy. Se alargará al ritmo real del producto, y es ese ritmo, una vez observable, lo que vale algo, no una longitud mostrada el primer día.