An entity is a collection of data specific to that topic, for example transactions, transaction lines, customers etc. Subentities join to create entities, thus entities contain data spanning across multiple data sources. For example, an orders entity will contain order information from multiple sources and data endpoints, which may involve the order endpoints across Netsuite, Shopify, Recharge etc.

The granularity of data still remain from the subentity level, for instance order line item level data will not suddenly change into order level data (unless the data requires the order line item level to be aggregated due to there being no order level).

The GIF below shows an example of an orders entity containing data from Shopify, Klaviyo and Netsuite.


What an orders entity may look like in a SQL-based transform. Data source subentities used here are from Shopify, Klaviyo and Netsuite.

At the entity stage, columns are to be renamed to meet the requirements of the business. For example, tax_including_vat becomes tax, for businesses that read tax as always being inclusive of VAT.

All entities reside in the entity schema, where any tables are suffixed with _entity, for example entity.orders_entity.

Therefore, there are no longer any naming conventions pertaining to a data source in the schema nor table name.

What’s Next