Businesses and individuals often need daily currency monitoring for operational decisions, budgeting, or financial awareness. Manually checking exchange rates each morning creates friction and wastes time.
Manual process: open banking website → check USD/EUR → copy numbers → format message → send email. This causes delays, human errors, and inconsistent reporting.
Goal: Build a fully automated daily financial reporting system that delivers currency updates directly via email at 09:00.
The workflow runs on a schedule (Cron), calls PrivatBank Public API, extracts USD/EUR values, formats a structured HTML report in a Code node, and sends it via Gmail automatically.
GET https://api.privatbank.ua/p24api/pubinfo?json&exchange&coursid=5
// Example: Extract USD/EUR and create HTML email const rates = $json; // HTTP response JSON array const usd = rates.find(x => x.ccy === 'USD'); const eur = rates.find(x => x.ccy === 'EUR'); const today = new Date(); const dateStr = today.toISOString().slice(0,10); const html = ``; return { json: { date: dateStr, usd, eur, html } };Daily Currency Report — ${dateStr}
Currency Buy Sell USD ${usd?.buy} ${usd?.sale} EUR ${eur?.buy} ${eur?.sale}
Download the n8n workflow JSON export and import it directly into your n8n instance.