T+1 settlement playbook
The US Securities and Exchange Commission adopted Rule 613 amendments shortening the standard trade settlement cycle from T+2 to T+1, effective 28 May 2024. The Canadian Securities Administrators followed with a parallel T+1 regime effective 27 May 2024, and Mexico, Argentina, and other jurisdictions are converging on the same timeline. Falcon Veritas Intelligence (FVI) provides a T+1 reconciliation playbook purpose-built for the compressed cycle.
Why T+1 matters
T+1 compresses the post-trade processing window from 48 hours to roughly 22 hours. The implications cascade through:
- Trade allocation — investment manager allocations must be communicated to the executing broker by 9pm ET on trade date (instead of next-day morning).
- Affirmation — institutional trades must be affirmed by 9pm ET on trade date (instead of next-day noon).
- Reconciliation — cash, position, and counterparty reconciliation must be completed by 8am ET on T+1 (instead of next-day close).
- Exception handling — breaks must be identified and routed to operations teams within 4 hours of trade date close (instead of 24 hours).
FVI's T+1 playbook addresses each of these with pre-built automations, dashboards, and SLA timers.
FVI's T+1 architecture
FVI operates a real-time ingestion and matching pipeline that is purpose-built for T+1:
The pipeline processes transactions at sub-second latency, enabling same-day affirmation and intra-day exception handling.
Step-by-step: enabling T+1 reconciliation
-
Connect trade sources. Wire your OMS, EMS, prime broker, and custodian feeds to FVI's real-time ingestion. FVI's FIX 4.4 and FIXML adapters normalize venue-specific message formats into the canonical trade record.
-
Configure T+1 rules. Use FVI's T+1 rule template to create deterministic match rules for cash, position, and counterparty reconciliation. The template includes pre-built field mappings for major custodians (BNY, State Street, Northern Trust, JPMorgan, Citi).
-
Set T+1 SLA timers. Configure the T+1 SLA for exception resolution (4 hours for high-severity, 8 hours for medium, 24 hours for low). FVI surfaces SLA breaches in real time via the operations dashboard.
-
Enable T+1 dashboards. Activate the T+1 operations dashboard, which shows trade-date progress by hour, exception volume by severity, and SLA compliance by team.
-
Configure client reporting. Enable the T+1 client report, which is generated at 8am ET on T+1 and delivered to clients via email, API, or webhook.
-
Monitor and iterate. FVI's T+1 health score aggregates trade-date metrics into a single number (0-100) that operations teams can use to identify and address bottlenecks.
T+1 client reporting
FVI's T+1 client report is generated automatically at 8am ET on T+1 and includes:
- Trade-by-trade confirmation status (matched, allocated, affirmed, settled)
- Cash balance by currency
- Position reconciliation summary
- Exception summary with severity and resolution status
- SLA compliance metrics
- Counterparty exposure summary
The report is delivered via:
- PDF email to client ops teams
- API endpoint for programmatic access
- Webhook for downstream automation
- SFTP for batch integration with client reporting tools
T+1 metrics
FVI tracks the following T+1 KPIs:
| KPI | Target | Description |
|---|---|---|
| Trade-date affirmation rate | ≥ 95% | Affirmed trades as a percentage of total trades |
| T+1 morning exception rate | < 2% | Exceptions at 8am ET as a percentage of total trades |
| SLA compliance rate | ≥ 98% | Exceptions resolved within SLA |
| Mean time to resolution (MTTR) | < 4 hours | Average time from exception creation to resolution |
| Auto-match rate | ≥ 95% | Auto-matched trades as a percentage of total trades |
Use cases
- US broker-dealers — operate within the SEC's T+1 window.
- Investment managers — meet the affirmed-by-9pm requirement.
- Custodians — produce T+1 cash and position reconciliation for clients.
- Prime brokers — aggregate T+1 reconciliation across multiple executing brokers.
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!,
});
// Get T+1 health score
const health = await fvi.industries.t1.healthScore({
tradeDate: '2026-08-22',
});
console.log(`T+1 health: ${health.score}/100`);
console.log(`Affirmation rate: ${(health.metrics.affirmation_rate * 100).toFixed(1)}%`);
console.log(`Exception rate: ${(health.metrics.exception_rate * 100).toFixed(1)}%`);
Python
from falconveritas import FVI
client = FVI(
bearer=os.environ["FVI_JWT"],
tenant_id=os.environ["FVI_TENANT_ID"],
)
health = client.industries.t1.health_score(trade_date="2026-08-22")
print(f"T+1 health: {health.score}/100")
print(f"Affirmation rate: {health.metrics.affirmation_rate * 100:.1f}%")
print(f"Exception rate: {health.metrics.exception_rate * 100:.1f}%")
Related articles
Last updated: 2026-08-22 · Page owner: Documentation · Source: src/lib/industries/t1/.