← All Playbooks • Finance & Power BI • 5 min read

Real-Time 150+ Currency Exchange Rates in Power Automate & Power BI

Automate multi-currency ERP invoicing, Dataverse FX tables, and Power BI Web.Contents() scheduled refreshes with 150+ ISO 4217 exchange rates from Zetaleap Global Currency Engine.

⚠️ Common Power Automate Bottleneck

Finance teams running Dynamics 365, Dataverse, SAP, or Power BI often rely on fragile HTML scraping or expensive enterprise FX feeds just to sync daily USD, EUR, GBP, TRY, CHF, and JPY rates.

✅ Zetaleap Edge Architecture

Query GET /api/rates?base=USD&targets=EUR,GBP,TRY,CHF,JPY via Bearer token in Power Automate or Power Query (M) to retrieve normalized JSON exchange rates backed by edge D1 caching.

1

Choose Your Base & Target ISO 4217 Currencies

Open /currency and use the interactive API Integration Wizard to pick your base currency (e.g., USD or EUR) and filter only the exact target currencies your ERP requires.

2

Schedule a Daily FX Sync in Power Automate

Create a Scheduled Cloud Flow (e.g., 08:00 UTC daily) calling GET /api/rates and upserting rows into Microsoft Dataverse, SharePoint Lists, or SQL Server.

cURL / Power Automate HTTP GET Request
GET https://zetaleap.com/api/rates?base=USD&targets=EUR,GBP,TRY,CHF,JPY
Authorization: Bearer zl_your_personal_access_token
3

Connect Directly from Power BI Desktop (Power Query M)

In Power BI Desktop -> Blank Query -> Advanced Editor, use Web.Contents with RelativePath so Power BI Service Scheduled Refresh works without gateway credential errors.

Power Query (M) Snippet for Power BI Service Refresh
let
    Source = Json.Document(
        Web.Contents(
            "https://zetaleap.com",
            [
                RelativePath = "api/rates",
                Query = [base = "USD", targets = "EUR,GBP,TRY,CAD,JPY"],
                Headers = [Authorization = "Bearer zl_your_personal_access_token"]
            ]
        )
    ),
    RatesRecord = Source[rates],
    ToTable = Record.ToTable(RatesRecord)
in
    ToTable