Data and Analytics

Data model schema reference

The source groups, tables, and columns available to query and reconcile in Sovos Intelligence (Enterprise).

About the data model

When you write a query, a SQL rule, or a reconciliation match condition, you select from the tables below. In the query builder they appear in the Database panel, grouped by source group. In Data > All Data the same groups appear, without the report-derived group.

Column names are case-insensitive in Snowflake. Quote mixed-case output aliases with double quotes. See the Query and reconciliation reference for SQL conventions and the #[MATCH] syntax.

Data types
Columns use these types: TEXT, NUMBER, DATE, BOOLEAN, and TIMESTAMP.
Common columns
Most source tables carry these operational columns in addition to the business columns listed: COUNTRY, SOURCECOMPANYID, COMPANYID, and DATASOURCE. Data you can see is always limited to the companies your account is scoped to.
Source groups
The source groups are VAT Filing, SAF-T, Compliance Network, and Intelligence. A Report Semantic Models group also appears in the query builder. It holds models generated from your saved reports, for reuse in new queries, not raw source tables. When your organization uses external data upload, an additional Data Upload group appears.
Note:

The exact set of tables and columns can differ by organization and by the connectors you have enabled. Use the query builder's Database search to confirm what is available to you.

Example: a cross-source join (reconciliation)

SAF-T and VAT Filing both carry an INVOICENUMBER. A cross-check reconciliation compares the two sources on that key (and, typically, on an amount within a tolerance):

CODE
SELECT 'SAFT' AS "Source", "INVOICENUMBER" AS "InvoiceNumber", ROUND(GROSSTOTAL,2) AS "GrossAmount"
FROM SAFT_INVOICES WHERE INVOICEDATE BETWEEN :StartDate AND :EndDate;
SELECT 'VAT Filing' AS "Source", "INVOICENUMBER" AS "InvoiceNumber", ROUND(GROSSTOTAL,2) AS "GrossAmount"
FROM VAT_INVOICES WHERE INVOICEDATE BETWEEN :StartDate AND :EndDate;
#[MATCH]
"InvoiceNumber" = "InvoiceNumber",
"GrossAmount" = "GrossAmount";