Volume analysis
This recipe shows how to measure reconciliation volume over time with daily, weekly, and monthly aggregations. Volume analysis helps you track business growth, plan capacity, and detect anomalous spikes or drops.
Endpoint
GET /v1/reconciliations/volume
Returns a time-series summary of reconciliation volumes with the chosen granularity.
Prerequisites
- A valid
tenantIdand bearer JWT. - The user must have at least one of:
tenant_admin,tenant_analyst,tenant_lead,tenant_viewer.
Request
curl -X GET "https://api.falconveritas.com/v1/reconciliations/volume?fromDate=2026-08-01&toDate=2026-08-22&granularity=daily" \
-H "Authorization: Bearer $FVI_JWT" \
-H "X-Tenant-Id: $FVI_TENANT_ID" \
-H "Content-Type: application/json"
Response
{
"granularity": "daily",
"from_date": "2026-08-01",
"to_date": "2026-08-22",
"total_count": 12450,
"total_auto_matched": 11456,
"total_analyst_review": 723,
"total_exceptions": 271,
"series": [
{
"date": "2026-08-01",
"total_count": 542,
"auto_matched_count": 510,
"analyst_review_count": 24,
"exception_count": 8,
"auto_match_rate": 0.941
},
{
"date": "2026-08-02",
"total_count": 612,
"auto_matched_count": 581,
"analyst_review_count": 23,
"exception_count": 8,
"auto_match_rate": 0.949
}
]
}
Granularity options
| Granularity | Description |
|---|---|
hourly | Hourly aggregation (recommended for real-time monitoring) |
daily | Daily aggregation (default) |
weekly | Weekly aggregation (ISO 8601 week) |
monthly | Monthly aggregation (calendar month) |
Filter parameters
| Parameter | Type | Description |
|---|---|---|
granularity | string | One of the granularities above |
accountId | string | Filter to a specific account |
sourceId | string | Filter to a specific ingestion source |
runType | string | Filter to live, scheduled, or manual runs |
minAmount | number | Filter to reconciliations above a minimum amount |
Anomaly detection
Volume spikes or drops beyond 3 standard deviations from the rolling 30-day median are flagged in the response:
{
"anomalies": [
{
"date": "2026-08-15",
"expected_count": 580,
"actual_count": 1240,
"deviation_sigma": 4.2,
"anomaly_type": "spike",
"probable_cause": "month-end batch ingestion from SAP"
}
]
}
Use cases
- Capacity planning — forecast infrastructure needs as transaction volume grows.
- Anomaly detection — detect ingestion failures (drops) or batch spikes (spikes).
- Business intelligence — track transaction volume trends for executive reporting.
- SLA tracking — correlate volume spikes with SLA breaches.
Code samples
TypeScript
import { FVI } from '@falconveritas/sdk';
const fvi = new FVI({
baseUrl: 'https://api.falconveritas.com',
bearer: process.env.FVI_JWT!,
tenantId: process.env.FVI_TENANT_ID!,
});
const volume = await fvi.reconciliations.volume({
fromDate: '2026-08-01',
toDate: '2026-08-22',
granularity: 'daily',
});
console.log(`Total: ${volume.total_count}, Auto-match rate: ${(volume.total_auto_matched / volume.total_count * 100).toFixed(1)}%`);
for (const anomaly of volume.anomalies ?? []) {
console.log(`Anomaly: ${anomaly.date} ${anomaly.anomaly_type} (${anomaly.deviation_sigma}σ) — ${anomaly.probable_cause}`);
}
Python
from falconveritas import FVI
client = FVI(
bearer=os.environ["FVI_JWT"],
tenant_id=os.environ["FVI_TENANT_ID"],
)
volume = client.reconciliations.volume(
from_date="2026-08-01",
to_date="2026-08-22",
granularity="daily",
)
print(f"Total: {volume.total_count}, Auto-match rate: {volume.total_auto_matched / volume.total_count * 100:.1f}%")
for anomaly in volume.anomalies or []:
print(f"Anomaly: {anomaly.date} {anomaly.anomaly_type} ({anomaly.deviation_sigma}σ) — {anomaly.probable_cause}")
Related articles
Last updated: 2026-08-22 · Page owner: Documentation · Source: src/lib/api/reconciliations.ts.