OpenDQV Cloud starter template (v0.1) — your tenant inherits this baseline. First customer edit creates v1.0 in your audit trail; pin by yaml_hash for replay. Financial trade record validation. Enforces instrument identifier standards (ISIN per ISO 6166 for securities), Legal Entity Identifier format (LEI per ISO 17442) for institutional counterparties, trade side classification, and settlement lifecycle status. Designed for equity, bond, and fund trading desks operating under MiFID II Article 26 transaction reporting obligations and FCA COBS/SYSC data quality requirements. For full ARM-ready MiFID II transaction reports see mifid_transaction_report contract. This contract covers internal order management and execution records prior to ARM submission.
| Rule | Field | Severity | What it enforces (the message your team sees) |
|---|---|---|---|
| trade_id_required | trade_id | error | trade_id is required |
| trade_date_format | trade_date | error | trade_date must be a valid date (YYYY-MM-DD) |
| settlement_date_format | settlement_date | error | settlement_date must be a valid date (YYYY-MM-DD) |
| settlement_date_after_trade | settlement_date | error | settlement_date must be on or after trade_date — settlement cannot precede execution |
| instrument_id_required | instrument_id | error | instrument_id is required |
| instrument_id_isin_format | instrument_id | warning | instrument_id does not match ISIN shape (ISO 6166: 2-letter country code + 9 alphanumeric + 1 check digit, e.g. GB0002162385) — verify if using CUSIP, SEDOL, or internal identifier |
| instrument_id_isin_valid | instrument_id | warning | instrument_id is not a valid ISIN (ISO 6166: 12 characters ending in a correct check digit, e.g. GB0002162385) — full check-digit verification (was: shape-only). Verify if using CUSIP, SEDOL, or internal identifier |
| instrument_type_values | instrument_type | error | instrument_type must be one of: equity, bond, derivative_equity, derivative_rates, derivative_credit, derivative_fx, derivative_commodity, etf, fund, fx_spot, fx_forward, repo, structured_product |
| trade_side_values | trade_side | error | trade_side must be one of: buy, sell, short_sell, cover, subscription, redemption |
| quantity_min | quantity | error | quantity must be >= 0 |
| price_min | price | error | price must be >= 0 |
| trader_id_required | trader_id | error | trader_id is required |
| counterparty_id_required | counterparty_id | error | counterparty_id is required |
| counterparty_lei_format | counterparty_id | warning | counterparty_id does not match LEI format (ISO 17442: 20 chars, e.g. 549300TRUWO2CD2G5692) — verify if counterparty is a natural person or using internal identifier |
| currency_required | currency | error | currency is required |
| currency_format | currency | error | currency must be a 3-letter ISO 4217 code (e.g. GBP, USD, EUR) |
| settlement_status_values | settlement_status | warning | settlement_status must be one of: pending, affirmed, matched, settled, partially_settled, failed, cancelled, on_hold |
Run your own data against this contract in the free trial — drop a CSV in the dashboard, no code, no credit card. Start free trial →