{
    "title": "Currency Exchange Rate Update and Cache Methodology",
    "updated": "2026-08-07",
    "methodology": "This report describes the implemented ToolnixHub request flow: fixed allow-listed server-side endpoints, validated three-letter currency codes, a short fresh cache, an independent fallback path, and clearly marked stale-cache behavior after live retrieval fails. Operational provider identities are maintained in protected internal deployment documentation.",
    "limitations": "This report does not continuously test every currency pair, certify any rate provider, reproduce proprietary Google/Morningstar price data, or guarantee that a reference rate equals an executable bank, card, cash or trading quote.",
    "columns": [
        "Layer",
        "Published behavior",
        "ToolnixHub role",
        "Important limitation"
    ],
    "rows": [
        [
            "Google Finance comparison",
            "Consumer finance display with its own disclosed data timing",
            "Comparison reference only; not scraped or redistributed",
            "Reference displays are not guaranteed transaction quotes"
        ],
        [
            "Configured primary rate service",
            "Regularly refreshed reference data",
            "Normal server-side rate path",
            "Availability, methodology and timing can change"
        ],
        [
            "Configured fallback rate service",
            "Independent reference-rate path",
            "Used when the normal path is unavailable or lacks a pair",
            "May update on a different cadence"
        ],
        [
            "ToolnixHub fresh cache",
            "Short server-side window",
            "Reduces repeated upstream requests and protects performance",
            "An upstream value may change between cache refreshes"
        ],
        [
            "ToolnixHub last-known cache",
            "Limited outage-only window",
            "Keeps the tool usable during temporary upstream failure",
            "Always marked stale and unsuitable for time-sensitive decisions"
        ],
        [
            "Bank/card/remittance quote",
            "Provider-specific",
            "Final comparison point before payment",
            "May include spreads, fees, markups or cash pricing"
        ]
    ]
}