apiVersion: capability.naftiko.dev/v1alpha1 kind: Capability metadata: name: treasury-reporting provider: fixer description: | Generate a treasury-style daily FX exposure report: pull a window of daily rates for the reporting period, summarize per-currency fluctuation, and publish a normalized report ready for downstream accounting systems. spec: uses: - sharedCapability: fixer-shared operations: [getTimeSeries, getFluctuation, getSymbols] preconditions: - description: Caller subscription must include /timeseries (Professional) and /fluctuation (Professional Plus). workflow: - step: discoverSymbols operation: getSymbols purpose: Materialize the supported symbol set used to validate report inputs. - step: pullDailyRates operation: getTimeSeries parameters: start_date: "{{ input.start_date }}" end_date: "{{ input.end_date }}" base: "{{ input.base | default: 'EUR' }}" symbols: "{{ input.symbols }}" - step: summarizeFluctuation operation: getFluctuation parameters: start_date: "{{ input.start_date }}" end_date: "{{ input.end_date }}" base: "{{ input.base | default: 'EUR' }}" symbols: "{{ input.symbols }}" outputs: dailyRates: "{{ pullDailyRates.rates }}" fluctuation: "{{ summarizeFluctuation.rates }}" reportingWindow: start: "{{ input.start_date }}" end: "{{ input.end_date }}" base: "{{ input.base | default: 'EUR' }}" governance: minPlan: "Professional Plus" httpsRequired: true cadence: Daily