PowerBI Reporting with OData
OrderEazi Central provides a built-in OData endpoint that lets you connect business intelligence tools like Microsoft PowerBI directly to your data. This gives you the flexibility to build custom repo
🧾 What is OData?
OData (Open Data Protocol) is an industry-standard way for applications to share data over the web. It works like a structured, queryable data feed that tools like PowerBI can consume natively.
OrderEazi Central exposes a read-only OData v4 endpoint at /odata/ on your instance. This endpoint provides access to 32 core data sets covering projects, products, clients, suppliers, documents, stock levels, and more.
The OData endpoint is read-only. It cannot be used to create, update, or delete data in Central.
🔒 Permissions and Access
Access to the OData endpoint requires an API key with the Read OData (PowerBI) permission enabled.
Key points:
The OData permission is not enabled by default on existing API keys
An administrator must explicitly grant this permission per API key via the API Keys management screen
New API keys created for installed apps automatically receive this permission
All OData requests are rate-limited to 500 requests per minute per API key
If you don't yet have an API key, ask your OrderEazi administrator to create one and enable the Read OData (PowerBI) permission.
⚙️ Connecting PowerBI Desktop
To connect PowerBI Desktop to your OrderEazi data:
Open PowerBI Desktop
Select Get Data, then choose Blank Query
Click Advanced Editor in the ribbon
Enter the following Power Query M code:
Replace
your-instance.ordereazi.comwith your actual OrderEazi hostnameReplace
your-api-key-herewith your API keyClick Done
PowerBI will connect and display all available data sets as a navigation table. Select the tables you need for your report.
Setting
Implementation = "2.0"tells PowerBI to use the OData v4 client. This enables server-side query folding, meaning PowerBI pushes filters and column selections to OrderEazi rather than downloading all data first.
📋 Available Data Sets
The OData endpoint exposes the following data sets. Names shown here are the OData names you'll see in PowerBI.
Core Business Data
Clients
Customer records with contact details, credit limits, and balances
Suppliers
Supplier records with contact details and payment terms
Products
Product catalogue with codes, descriptions, pricing, and status
Projects
Orders and quotes with status, deadlines, and sales channel
Documents
Financial documents such as invoices, purchase orders, and credit notes
ProjectLines
Individual line items on projects with quantities, costs, and selling prices
DocumentProducts
Line items on financial documents with quantities and pricing
ProjectValues
Aggregated totals per project including cost, sales, GP, and VAT
Reference Data
Currencies
Currency definitions with codes and symbols
Organizations
Your company details including addresses and settings
TaxTypes
Tax/VAT type definitions with percentages
Brands
Product brand names
Industries
Client industry classifications
Categories
Product category hierarchy
Detail and Relationship Data
DocumentProductSerials
Serial numbers tracked against document line items
ProductCategories
Product-to-category assignments
ProductDimensions
Physical dimensions and weight per product
ProductKeyValues
Custom extended attributes on products
ProductMarkupMargins
Minimum, maximum, and suggested markup/margin per product
ProductSuppliers
Product-to-supplier relationships with cost prices and stock levels
SupplierCategories
Supplier category groupings
ParcelDefinitions
Shipping parcel/box size templates
ProjectHistories
Audit trail of events on projects
ProjectLineKeyValues
Custom extended attributes on project lines
ProjectKeyValues
Custom extended attributes on projects
ProjectTags
Project-to-tag assignments
Tags
Tag definitions with names and colours
UserDetails
Sales rep and user profiles with commission settings
SimpleStockLevels
Stock quantities by product, location, and warehouse
ProductMOQs
Minimum, maximum, and default order quantities per product
DocumentVoids
Records of voided documents with action type and reason
ProjectRequests
Approval requests with status, assignee, and response
🔍 Querying Specific Data
To connect to a single data set rather than the full navigation table, specify the data set name in the URL:
Replace Products with any data set name from the table above.
🔗 Navigation Properties
The OData endpoint supports navigation properties, which let you traverse relationships between data sets. For example, you can retrieve all project lines for a specific project by navigating from the project to its related data:
The following navigation paths are available:
From Core Business Data
Projects
/ProjectValues
Aggregated totals for the project
Projects
/ProjectLines
Line items on the project
Projects
/ProjectHistories
Audit trail of events on the project
Projects
/ProjectTags
Tags assigned to the project
Projects
/Documents
Financial documents linked to the project
Projects
/DocumentProductSerials
Serial numbers tracked against the project
Documents
/DocumentProducts
Line items on the document
Documents
/DocumentVoids
Void records for the document
Documents
/DocumentProductSerials
Serial numbers tracked against the document
Documents
/ChildDocuments
Documents created from this document
Products
/DocumentProducts
Document line items for the product
Products
/ProductCategories
Category assignments for the product
Products
/ProductSuppliers
Supplier relationships for the product
Products
/ProductKeyValues
Custom extended attributes on the product
Products
/ProductDimensions
Physical dimensions and weight for the product
Products
/ProductMarkupMargins
Markup/margin settings for the product
Products
/ProductMOQ
Minimum order quantities for the product
Products
/ProjectLines
Project line items for the product
Products
/SimpleStocklevels
Stock levels for the product
Suppliers
/DocumentProducts
Document line items from the supplier
Suppliers
/ProductSuppliers
Product relationships for the supplier
Suppliers
/ProjectLines
Project line items from the supplier
ProjectLines
/DocumentProducts
Document line items linked to the project line
ProjectLines
/DocumentProductSerials
Serial numbers tracked against the project line
DocumentProducts
/DocumentProductSerials
Serial numbers tracked against the document line item
From Reference Data
Currencies
/CurrencyDocuments
Documents using this currency
Currencies
/CurrencyProjects
Projects using this currency
Currencies
/Clients
Clients using this currency
Currencies
/Suppliers
Suppliers using this currency
TaxTypes
/Clients
Clients assigned this tax type
TaxTypes
/Suppliers
Suppliers assigned this tax type
TaxTypes
/Projects
Projects assigned this tax type
Brands
/Products
Products under this brand
Industries
/Clients
Clients in this industry
Tags
/ProjectTags
Project-tag assignments for this tag
UserDetails
/Clients
Clients managed by this sales rep
UserDetails
/Documents
Documents created by this user
UserDetails
/DocumentVoids
Document voids performed by this user
UserDetails
/ProjectHistories
Project history entries by this user
UserDetails
/Projects
Projects managed by this sales rep
You can also use
$expandas an alternative to navigation paths. For example,/odata/Projects({id})?$expand=ProjectValuesreturns the project with its values inline in a single request.
📐 Query Options
The OData endpoint supports standard query options that PowerBI uses automatically when you apply filters and transformations:
$select - Choose specific columns to reduce data transfer
$filter - Apply conditions to retrieve only matching records
$orderby - Sort results by one or more columns
$top - Limit the number of records returned (maximum 1,000 per request)
$skip - Skip a number of records for pagination
$count - Include a total record count in the response
$expand - Include related data in a single request (one level deep)
PowerBI applies these automatically through query folding. When you add filters or remove columns in PowerBI, those operations are pushed to the server for efficiency.
The default page size is 100 records, and the maximum you can request via $top is 1,000. PowerBI handles pagination automatically, so you don't need to manage this yourself.
💡 Why Use OData with PowerBI?
Connecting PowerBI to OrderEazi via OData is particularly useful for:
Building custom dashboards tailored to your business KPIs
Combining OrderEazi data with data from other sources in a single report
Creating scheduled reports that refresh automatically
Performing ad-hoc analysis that goes beyond Central's built-in reports
Sharing interactive reports with stakeholders who don't need Central access
Tracking trends over time with historical snapshots in PowerBI datasets
✅ Summary
The OData endpoint provides a powerful, read-only connection between OrderEazi Central and PowerBI:
Access 32 data sets covering projects, products, clients, suppliers, documents, and stock
Navigate relationships between data sets using navigation properties (e.g. Projects/ProjectLines)
Authenticate using your existing API key with the Read OData (PowerBI) permission
Connect via PowerBI's Advanced Editor using the OData.Feed function
Server-side query folding ensures efficient data transfer
Standard OData query options give you full control over filtering, sorting, and pagination
This feature lets you build the exact reports your business needs, using the full power of PowerBI's visualisation and analysis tools.
Last updated