<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">

  <!-- Pricing — 4 locales. Static HTML served by nginx (#3172). Each
       <url> declares ALL alternates so Google understands the locale graph
       across the pricing cluster, mirroring the landing pattern above. -->

  <url>
    <loc>https://mozaicfinance.com/pricing</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/pricing"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/pricing/"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/pricing/"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/pricing/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/pricing"/>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/pricing/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/pricing"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/pricing/"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/pricing/"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/pricing/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/pricing"/>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/es/pricing/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/pricing"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/pricing/"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/pricing/"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/pricing/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/pricing"/>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/zh/pricing/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/pricing"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/pricing/"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/pricing/"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/pricing/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/pricing"/>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <!-- Static security page — 4 locales (#3173). Same hreflang cluster
       pattern as the landing so Google understands the locale graph.
       Locale variants are slash-less to match StaticLegalRedirect's URL
       generator (see frontend/lib/features/marketing/presentation/pages/
       static_legal_redirect.dart). -->
  <url>
    <loc>https://mozaicfinance.com/security</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/security"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/security"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/security"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/security"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/security"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/security</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/security"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/security"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/security"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/security"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/security"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/es/security</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/security"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/security"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/security"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/security"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/security"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/zh/security</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/security"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/security"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/security"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/security"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/security"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- Static /about page — 4 locales. Same hreflang cluster pattern as
       /security and /terms above. AboutPage JSON-LD lives in each file so
       Google can attribute the company to a specific founder + location. -->
  <url>
    <loc>https://mozaicfinance.com/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/about"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/about"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/about"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/about"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/about"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/about"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/about"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/about"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/about"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/about"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/es/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/about"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/about"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/about"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/about"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/about"/>
    <changefreq>monthly</changefreq>
    <priority>0.4</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/zh/about</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/about"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/about"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/about"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/about"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/about"/>
    <changefreq>monthly</changefreq>
    <priority>0.4</priority>
  </url>

  <!-- Human-readable /sitemap (distinct from this XML feed). EN-only for
       the first ship — declaring fr/es/zh alternates that don't exist yet
       would be a soft SEO penalty in Search Console; add them when the
       localized variants land. -->
  <url>
    <loc>https://mozaicfinance.com/sitemap</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/sitemap"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/sitemap"/>
    <changefreq>monthly</changefreq>
    <priority>0.3</priority>
  </url>

  <!-- Static legal pages — 4 locales each (#3174). Same hreflang cluster
       pattern as the landing so Google understands the locale graph. -->
  <url>
    <loc>https://mozaicfinance.com/terms</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/terms"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/terms"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/terms"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/terms"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/terms"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/terms</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/terms"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/terms"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/terms"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/terms"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/terms"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/es/terms</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/terms"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/terms"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/terms"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/terms"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/terms"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/zh/terms</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/terms"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/terms"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/terms"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/terms"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/terms"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/privacy-policy</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/privacy-policy"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/privacy-policy</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/privacy-policy"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/es/privacy-policy</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/privacy-policy"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/zh/privacy-policy</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="es" href="https://mozaicfinance.com/es/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="zh" href="https://mozaicfinance.com/zh/privacy-policy"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/privacy-policy"/>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>

  <!-- Blog index + articles (#3168, #3436). Both locale indexes (EN + FR)
       and every article are listed below, each article paired EN<->FR via
       its hreflang cluster (x-default points at the EN URL). Keep this in
       sync with scripts/build_blog.py output and the nginx routes — the
       static_routing_parity check enforces a 1:1:1 mapping. -->

  <url>
    <loc>https://mozaicfinance.com/blog/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/"/>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/"/>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/best-mint-alternatives-canada-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/best-mint-alternatives-canada-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/meilleures-alternatives-mint-canada-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/best-mint-alternatives-canada-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/hardbacon-shutdown-what-to-use-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/hardbacon-shutdown-what-to-use-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/alternative-hardbacon-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/hardbacon-shutdown-what-to-use-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/track-multiple-brokerage-accounts-canada-guide/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/track-multiple-brokerage-accounts-canada-guide/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/comment-suivre-placements-wealthsimple-questrade-ibkr/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/track-multiple-brokerage-accounts-canada-guide/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/fhsa-contribution-rules-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/fhsa-contribution-rules-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/regles-cotisation-celiapp-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/fhsa-contribution-rules-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/quebec-law-25-personal-financial-data/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/quebec-law-25-personal-financial-data/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/loi-25-donnees-financieres-personnelles/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/quebec-law-25-personal-financial-data/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/buy-now-pay-later-vet-bill-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/buy-now-pay-later-vet-bill-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/paiement-en-plusieurs-fois-veterinaire-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/buy-now-pay-later-vet-bill-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/blog/best-personal-finance-app-quebec-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/best-personal-finance-app-quebec-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/meilleure-application-finances-personnelles-quebec-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/best-personal-finance-app-quebec-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/meilleures-alternatives-mint-canada-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/best-mint-alternatives-canada-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/meilleures-alternatives-mint-canada-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/best-mint-alternatives-canada-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/alternative-hardbacon-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/hardbacon-shutdown-what-to-use-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/alternative-hardbacon-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/hardbacon-shutdown-what-to-use-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/comment-suivre-placements-wealthsimple-questrade-ibkr/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/track-multiple-brokerage-accounts-canada-guide/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/comment-suivre-placements-wealthsimple-questrade-ibkr/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/track-multiple-brokerage-accounts-canada-guide/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/regles-cotisation-celiapp-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/fhsa-contribution-rules-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/regles-cotisation-celiapp-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/fhsa-contribution-rules-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/loi-25-donnees-financieres-personnelles/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/quebec-law-25-personal-financial-data/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/loi-25-donnees-financieres-personnelles/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/quebec-law-25-personal-financial-data/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/paiement-en-plusieurs-fois-veterinaire-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/buy-now-pay-later-vet-bill-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/paiement-en-plusieurs-fois-veterinaire-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/buy-now-pay-later-vet-bill-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <url>
    <loc>https://mozaicfinance.com/fr/blog/meilleure-application-finances-personnelles-quebec-2026/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/blog/best-personal-finance-app-quebec-2026/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/blog/meilleure-application-finances-personnelles-quebec-2026/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/blog/best-personal-finance-app-quebec-2026/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- /vs/<competitor>/ comparison pages (#3166). EN + FR launch together;
       es/zh alternates land later when the locale variants ship — declaring
       alternates that don't exist yet is a soft SEO penalty (Google reports
       "alternate page not found" in Search Console). Add them alongside the
       corresponding /es/vs/, /zh/vs/ routes when they go live. The /vs/ hub
       (#3270) indexes the list. -->
  <url>
    <loc>https://mozaicfinance.com/vs/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/vs/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/vs/lunch-money/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/lunch-money/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/lunch-money/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/lunch-money/"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/vs/lunch-money/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/lunch-money/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/lunch-money/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/lunch-money/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/vs/wealthica/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/wealthica/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/wealthica/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/wealthica/"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/vs/wealthica/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/wealthica/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/wealthica/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/wealthica/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/vs/monarch/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/monarch/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/monarch/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/monarch/"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/vs/monarch/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/vs/monarch/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/vs/monarch/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/vs/monarch/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- Public 'supported institutions' coverage page. Sources from
       frontend/web/static-landing/coverage.json; the FR URL slug differs
       from a literal translation because Quebec users search
       "institutions prises en charge", not "institutions soutenues". -->
  <url>
    <loc>https://mozaicfinance.com/supported-institutions/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/supported-institutions/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/institutions-prises-en-charge/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/supported-institutions/"/>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/institutions-prises-en-charge/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/supported-institutions/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/institutions-prises-en-charge/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/supported-institutions/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>

  <!-- Per-institution programmatic SEO pages (#3167) — Big Six banks ×
       EN+FR = 12 pages. ES/ZH alternates intentionally omitted (deferred
       per the issue); pointing them at non-existent pages would be a soft
       SEO penalty in Search Console. National Bank's FR slug is
       `banque-nationale` (not `national-bank`) because Quebec users search
       for "Banque Nationale". -->
  <url>
    <loc>https://mozaicfinance.com/banks/rbc/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/rbc/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/rbc/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/rbc/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/banques/rbc/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/rbc/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/rbc/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/rbc/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/banks/td/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/td/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/td/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/td/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/banques/td/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/td/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/td/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/td/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/banks/scotiabank/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/scotiabank/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/scotiabank/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/scotiabank/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/banques/scotiabank/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/scotiabank/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/scotiabank/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/scotiabank/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/banks/bmo/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/bmo/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/bmo/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/bmo/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/banques/bmo/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/bmo/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/bmo/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/bmo/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/banks/cibc/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/cibc/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/cibc/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/cibc/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/banques/cibc/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/cibc/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/cibc/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/cibc/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/banks/national-bank/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/national-bank/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/banque-nationale/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/national-bank/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/banques/banque-nationale/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/banks/national-bank/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/banques/banque-nationale/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/banks/national-bank/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>

  <!-- Per-broker programmatic SEO pages (#3253, broker half of #3167) —
       batch 1: independent brokers × EN+FR = 8 pages. ES/ZH alternates
       intentionally omitted (deferred); pointing them at non-existent pages
       would be a soft SEO penalty in Search Console. FR uses "courtiers"
       rather than "brokers" because Quebec users search the French term. -->
  <url>
    <loc>https://mozaicfinance.com/brokers/wealthsimple-trade/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/wealthsimple-trade/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/wealthsimple-trade/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/wealthsimple-trade/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/courtiers/wealthsimple-trade/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/wealthsimple-trade/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/wealthsimple-trade/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/wealthsimple-trade/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/brokers/questrade/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/questrade/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/questrade/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/questrade/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/courtiers/questrade/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/questrade/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/questrade/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/questrade/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/brokers/ibkr-canada/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/ibkr-canada/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/ibkr-canada/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/ibkr-canada/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/courtiers/ibkr-canada/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/ibkr-canada/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/ibkr-canada/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/ibkr-canada/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>

  <!-- Per-broker programmatic SEO pages — TD Direct Investing only.
       The other bank-owned broker landing pages from batch 2 (RBC Direct
       Investing, BMO InvestorLine, Scotia iTrade, CIBC Investor's Edge,
       National Bank Direct Brokerage) were retracted in #3265 because
       SnapTrade does not actually integrate with them — the entire page
       premise was false. TD-DIRECT-INVESTING is in SnapTrade's beta tier
       as of 2026-05-26 (verified via list_all_brokerages). -->
  <url>
    <loc>https://mozaicfinance.com/brokers/td-direct-investing/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/td-direct-investing/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/td-placements-directs/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/td-direct-investing/"/>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://mozaicfinance.com/fr/courtiers/td-placements-directs/</loc>
    <xhtml:link rel="alternate" hreflang="en" href="https://mozaicfinance.com/brokers/td-direct-investing/"/>
    <xhtml:link rel="alternate" hreflang="fr" href="https://mozaicfinance.com/fr/courtiers/td-placements-directs/"/>
    <xhtml:link rel="alternate" hreflang="x-default" href="https://mozaicfinance.com/brokers/td-direct-investing/"/>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
</urlset>
